{"id":37788963,"url":"https://github.com/codemowers/oidc-key-manager","last_synced_at":"2026-01-20T16:43:36.150Z","repository":{"id":160616066,"uuid":"635473442","full_name":"codemowers/oidc-key-manager","owner":"codemowers","description":null,"archived":false,"fork":false,"pushed_at":"2025-08-04T11:50:39.000Z","size":395,"stargazers_count":0,"open_issues_count":5,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-11T20:28:30.973Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/codemowers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-02T19:15:19.000Z","updated_at":"2025-08-04T11:50:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"aaee4dbc-b664-4e31-aa77-c6ef4e0c5813","html_url":"https://github.com/codemowers/oidc-key-manager","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/codemowers/oidc-key-manager","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codemowers%2Foidc-key-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codemowers%2Foidc-key-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codemowers%2Foidc-key-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codemowers%2Foidc-key-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codemowers","download_url":"https://codeload.github.com/codemowers/oidc-key-manager/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codemowers%2Foidc-key-manager/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28479406,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-16T15:15:06.544Z","updated_at":"2026-01-16T15:15:07.342Z","avatar_url":"https://github.com/codemowers.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"oidc-key-manager\n=================\n\nCLI to manage secret keys required by oidc-gateway\n\n\u003c!-- toc --\u003e\n* [Usage](#usage)\n* [Commands](#commands)\n\u003c!-- tocstop --\u003e\n# Usage\n\u003c!-- usage --\u003e\n```sh-session\n$ npm install -g @codemowers/oidc-key-manager\n$ key-manager COMMAND\nrunning command...\n$ key-manager (--version)\n@codemowers/oidc-key-manager/1.1.2 linux-x64 node-v22.20.0\n$ key-manager --help [COMMAND]\nUSAGE\n  $ key-manager COMMAND\n...\n```\n\u003c!-- usagestop --\u003e\n# Commands\n\u003c!-- commands --\u003e\n* [`key-manager initialize`](#key-manager-initialize)\n* [`key-manager rotate`](#key-manager-rotate)\n\n## `key-manager initialize`\n\nInitialize the secret with initial keys\n\n```\nUSAGE\n  $ key-manager initialize -c local|cluster [--json] [-n \u003cvalue\u003e] [-s \u003cvalue\u003e] [-l \u003cvalue\u003e] [--recreate]\n\nFLAGS\n  -c, --config=\u003coption\u003e             (required) use local or in-cluster Kubernetes config\n                                    \u003coptions: local|cluster\u003e\n  -l, --additionalLabel=\u003cvalue\u003e...  Add custom Kubernetes label (may be repeated)\n  -n, --namespace=\u003cvalue\u003e           namespace, defaults to current namespace if service account is used\n  -s, --secret=\u003cvalue\u003e              [default: oidc-keys] secret name\n      --recreate                    recreate the secret if it exists\n\nGLOBAL FLAGS\n  --json  Format output as json.\n\nDESCRIPTION\n  Initialize the secret with initial keys\n\nEXAMPLES\n  $ key-manager initialize\n\n  $ key-manager initialize\n\n  $ key-manager initialize -n \u003ckube namespace\u003e -s \u003csecret name\u003e\n\n  $ key-manager initialize --namespace \u003ckube namespace\u003e --secret \u003csecret name\u003e --recreate\n\n  $ key-manager initialize --additional-label \"app.kubernetes.io/instance: passmower\"\n```\n\n_See code: [src/commands/initialize.ts](https://github.com/codemowers/oidc-key-manager/blob/v1.1.2/src/commands/initialize.ts)_\n\n## `key-manager rotate`\n\nAppend new JWK|cookie key|both and rotate the array, optionally restarting the deployment\n\n```\nUSAGE\n  $ key-manager rotate -c local|cluster [-n \u003cvalue\u003e] [-s \u003cvalue\u003e] [-l \u003cvalue\u003e] [--both] [--jwks]\n    [--cookie-keys] [--max-number-of-jwks \u003cvalue\u003e] [--max-number-of-cookie-keys \u003cvalue\u003e] [--restart-deployment-backoff\n    \u003cvalue\u003e --restart-deployment \u003cvalue\u003e]\n\nFLAGS\n  -c, --config=\u003coption\u003e                     (required) use local or in-cluster Kubernetes config\n                                            \u003coptions: local|cluster\u003e\n  -l, --additionalLabel=\u003cvalue\u003e...          Add custom Kubernetes label (may be repeated)\n  -n, --namespace=\u003cvalue\u003e                   namespace, defaults to current namespace if service account is used\n  -s, --secret=\u003cvalue\u003e                      [default: oidc-keys] secret name\n      --both                                rotate both JWKs and cookie keys\n      --cookie-keys                         rotate cookie keys\n      --jwks                                rotate JWKs\n      --max-number-of-cookie-keys=\u003cvalue\u003e   [default: 3]\n      --max-number-of-jwks=\u003cvalue\u003e          [default: 3]\n      --restart-deployment=\u003cvalue\u003e          Kubernetes deployment name to restart while rotating\n      --restart-deployment-backoff=\u003cvalue\u003e  [default: 60] Seconds to wait for deployment to restart\n\nDESCRIPTION\n  Append new JWK|cookie key|both and rotate the array, optionally restarting the deployment\n\nEXAMPLES\n  $ key-manager rotate\n```\n\n_See code: [src/commands/rotate.ts](https://github.com/codemowers/oidc-key-manager/blob/v1.1.2/src/commands/rotate.ts)_\n\u003c!-- commandsstop --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodemowers%2Foidc-key-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodemowers%2Foidc-key-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodemowers%2Foidc-key-manager/lists"}