| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix(jobs): decouple the consumer and server shutdowns (NAN-6896) (#7404) - On SIGTERM the consumer stops (`processor`, `invocationsProcessor`, `webhookDispatchConsumer`) ran inside the `srv.close` callback, so they only began once every HTTP connection had ended. They now start immediately and run alongside the server close, with teardown and `process.exit()` waiting on both. The two shutdowns are no longer chained, so the total time is the longer of the two rather than their sum, reducing the chance of exceeding the pod's grace period and being SIGKILLed. ## Test plan - [x] No new `tsc`, oxlint or prettier findings on the changed file - [ ] After deploy: confirm a jobs pod completes shutdown within its `terminationGracePeriodSeconds` <!-- This is an auto-generated description by cubic. --> <a href="https://cubic.dev/pr/NangoHQ/nango/pull/7404?utm_source=github" target="_blank" rel="noopener noreferrer" data-no-image-dialog="true"><picture><source media="(prefers-color-scheme: dark)" srcset="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://www.cubic.dev/buttons/review-in-cubic-light.svg"><img alt="Review in cubic" src="https://www.cubic.dev/buttons/review-in-cubic-dark.svg"></picture></a> <!-- End of auto-generated description by cubic. --> --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 13 小时前 | |
fix(runner): serialize error correctly (#2567) ## Describe your changes Fixes https://linear.app/nango/issue/NAN-1529/error-serialization-is-broken-in-runnerjobs - Correctly serialize error from runner to jobs I already had fixed this a few weeks ago but the recent migration broke it again. Hopefully, at some point, we'll have some e2e tests. The main idea is to keep looking for known patterns and fallback to std error. I also ejected from `formatScriptError` since dryrun is already too different vs regular exec. At some point we'll need to find a way to use the same code. ### Test ```ts import type { NangoSync } from '../../models'; export default async function runAction(nango: NangoSync): Promise<void> { throw new Error('foobar'); throw new nango.ActionError('foobar'); } ``` | 2 年前 | |
feat(auth): internal service auth (#7167) Optional Bearer auth between internal services (orchestrator and jobs). Off by default; existing deploys are unchanged until operators set secrets and flip `NANGO_INTERNAL_AUTH_REQUIRED`. ## Summary - Orchestrator and jobs HTTP APIs accept `Authorization: Bearer`, except `GET /health`. - Control plane (server, jobs, orchestrator) uses a shared static token (`NANGO_INTERNAL_AUTH_TOKEN`). - Jobs mints HMAC JWTs for runners: task-bound for `putTask`/`heartbeat`, node-bound for register/idle. The signing key stays on jobs; runners never receive `NANGO_INTERNAL_AUTH_TOKEN` or `NANGO_INTERNAL_AUTH_SIGNING_KEY`. Rollout plan [here](https://linear.app/nango/issue/NAN-6634/add-internal-auth-middleware-to-orchestrator-and-jobs#zero-downtime-rollout-2e12b4cc) --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> | 12 天前 | |
feat(auth): internal service auth (#7167) Optional Bearer auth between internal services (orchestrator and jobs). Off by default; existing deploys are unchanged until operators set secrets and flip `NANGO_INTERNAL_AUTH_REQUIRED`. ## Summary - Orchestrator and jobs HTTP APIs accept `Authorization: Bearer`, except `GET /health`. - Control plane (server, jobs, orchestrator) uses a shared static token (`NANGO_INTERNAL_AUTH_TOKEN`). - Jobs mints HMAC JWTs for runners: task-bound for `putTask`/`heartbeat`, node-bound for register/idle. The signing key stays on jobs; runners never receive `NANGO_INTERNAL_AUTH_TOKEN` or `NANGO_INTERNAL_AUTH_SIGNING_KEY`. Rollout plan [here](https://linear.app/nango/issue/NAN-6634/add-internal-auth-middleware-to-orchestrator-and-jobs#zero-downtime-rollout-2e12b4cc) --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> | 12 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 13 小时前 | ||
| 2 年前 | ||
| 12 天前 | ||
| 12 天前 |