{"id":20937155,"url":"https://github.com/danibram/k8s-configuration-manager","last_synced_at":"2025-05-13T22:31:03.891Z","repository":{"id":48003633,"uuid":"106507470","full_name":"danibram/k8s-configuration-manager","owner":"danibram","description":"Manage multiple Kubernetes configuration easy","archived":false,"fork":false,"pushed_at":"2022-01-15T04:36:37.000Z","size":114,"stargazers_count":12,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2023-03-15T06:25:23.666Z","etag":null,"topics":["k8s","kubernetes","manager","multiple-configurations"],"latest_commit_sha":null,"homepage":"https://github.com/danibram/k8s-configuration-manager","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/danibram.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-10-11T04:55:38.000Z","updated_at":"2022-06-29T15:33:40.000Z","dependencies_parsed_at":"2022-08-12T16:20:51.164Z","dependency_job_id":null,"html_url":"https://github.com/danibram/k8s-configuration-manager","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danibram%2Fk8s-configuration-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danibram%2Fk8s-configuration-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danibram%2Fk8s-configuration-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/danibram%2Fk8s-configuration-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/danibram","download_url":"https://codeload.github.com/danibram/k8s-configuration-manager/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225260833,"owners_count":17446115,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["k8s","kubernetes","manager","multiple-configurations"],"created_at":"2024-11-18T22:33:24.399Z","updated_at":"2024-11-18T22:33:25.224Z","avatar_url":"https://github.com/danibram.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# k8s-configuration-manager\n\nManage in a better way multiple kubernetes config.\n\nThis tiny cli creates in your home directory the folder `.kcm`, to store multiples `.kube`\nconfigs. So you can switch configurations of kubernetes as easiest ever. Also it stores\nthe last config used in the file `.kcm/kcm_config.json`, and makes a backup in case\n`.kube` are not empty.\n\n## Install\n\n```\nnpm i -g k8s-config-management\n```\n\n## Commands\n\n```\n$ ./bin/kcm -h\n\n  Usage: kcm [options] [command]\n\n  Multiple k8s configuration manager\n\n  Options:\n\n    -V, --version                    output the version number\n    -h, --help                       output usage information\n\n  Commands:\n\n    add|a \u003cfileOrFolderPath\u003e [name]  Copy contained config or file config with the specified with the folder name under 'kcm' folder\n    use [name]                       Put the config you want in `.kube` to use it with `kubectl`\n    now                              Shows actual config\n    ls                               Show stored config in `.kcm`\n```\n\n-   **add** `file_or_folder_path` `name`: Add `file_or_folder_path` to the `.kcm` directory with folder `name` specified. If you dont put name it uses `default`\n\n-   **use** `name`: Copy the `name` config to the `.kube` directory. If you dont use a name\n    it uses `default`.\n\n-   **now**: Show configuration that you are using, it is stored in `.kcm/kcm_config.json`\n    file\n\n-   **ls**: Show a list of the predefined configurations, basically a ls -l of the `.kcm`\n    excluding files.\n\n## Example\n\nAs an example imagine you have 2 kubernetes configurations: `client-1` and `personal`.\n\n```\n\u003e tree -L 1 ~/.kcm\n\n/Users/USER/.kcm\n├── ...\n└── kcm_config.json\n```\n\nThen you add both files with kcm\n\n```\n\u003e kcm add ./kube-folder-of-client-1 client-1\n\u003e tree -L 1 ~/.kcm\n/Users/USER/.kcm\n├── client-1\n└── kcm_config.json\n\n\u003e kcm add ./kube-folder-of-personal personal\n/Users/USER/.kcm\n├── personal\n├── client-1\n└── kcm_config.json\n```\n\nNow you already have both configuration to be managed by `kcm`. Now type `kcm use personal` or `kcm use client-1` to copy the content to your `.kube` and here we go, your\nkubectl now use the config you want.\n\nThen you can use `kcm use client-1` or `kcm use personal` to make your `.kube` change.\nEasy!\n\n## License\n\nLicensed under the MIT license. 2017\n\n## Contibute\n\nPR are welcome, thanks!\n\n## Notes\n\nWhen you use `kcm use ...` it always make a backup of your actual config (but only stores\n1 backup, so be care about it)\n\nIts a simple tool, if you copy manually to your `.kube` there is no way that `kcm` will\nknow about it.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanibram%2Fk8s-configuration-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdanibram%2Fk8s-configuration-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdanibram%2Fk8s-configuration-manager/lists"}