{"id":13646099,"url":"https://github.com/night-gold/armada","last_synced_at":"2025-04-21T17:32:01.664Z","repository":{"id":56262808,"uuid":"197065849","full_name":"night-gold/armada","owner":"night-gold","description":"Command line tools to manage kustomize packaged apps deployment","archived":false,"fork":false,"pushed_at":"2021-06-03T21:10:18.000Z","size":96,"stargazers_count":15,"open_issues_count":2,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-09T19:41:22.643Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/night-gold.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-07-15T20:14:30.000Z","updated_at":"2021-10-19T04:37:30.000Z","dependencies_parsed_at":"2022-08-15T15:40:25.539Z","dependency_job_id":null,"html_url":"https://github.com/night-gold/armada","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/night-gold%2Farmada","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/night-gold%2Farmada/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/night-gold%2Farmada/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/night-gold%2Farmada/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/night-gold","download_url":"https://codeload.github.com/night-gold/armada/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250100598,"owners_count":21374972,"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":[],"created_at":"2024-08-02T01:02:48.444Z","updated_at":"2025-04-21T17:32:00.699Z","avatar_url":"https://github.com/night-gold.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# Armada\n\nAdds templating capacity and manage deployment to [Kustomize](https://github.com/kubernetes-sigs/kustomize) apps.\n\nTemplating uses go template to allow you to generate kustomize apps with templates inside.\n\nArmada allows you to git clone a packaged kustomize base and call it with the help of a config file.\n\n## Pre-requisite\n\nFor armada to works, you need to have a recent version of kubectl (\u003e= 1.14) with kustomize integration as armada will make calls to the kubectl command line to build the yaml file using `kubectl -k` option.\n\n## Usage\n\n![Alt Text](https://i.imgur.com/JNoI2MY.gif)\n\n### 1) Create a kustomize package file struct\n\nCreate an armada.yaml file in each one of your kustomize infra folder where you have your overlays.\n\n\u003e ```\n\u003e /app\n\u003e ├── redis\n\u003e │   ├── armada.yaml\n\u003e │   └── overlays\n\u003e │       └── apply\n\u003e │           └── kustomization.yaml\n\u003e └── Microservice\n\u003e     ├── armada.yaml\n\u003e     └── overlays\n\u003e         └── apply\n\u003e             └── kustomization.yaml\n\u003e ```\n\n### 2) Configuration of the armada file\n\nThe armada file configuration should look like this.\n\n```\n--- \npackage:\n  - deployment:\n      folder: \".\"\n      overlays: apply\n```\n\nUse armada to generate the app.yaml file.\n```bash\narmada -f armada.yaml\n```\n\nThe generated file can be used directly to deploy to a kubernetes cluster using `kubectl -f app.yaml` or stored on a git repo or any other storage like (S3,GCS...) to be stored and versionned.\n\n## Community\n\nBefore filling a bug please take a look here: [bugs](docs/bugs.md).\n\nBefore making a merge request please take a look here: [merge request](docs/mr.md) \n\n### Code of conduct \n\nPlease be polite and respectful when communicating, filling a bug, commenting or when updating the repo. In case of non respect of this simple rule the comment will be deleted.\n\n### Create a package\n\nSee specific documentation for [packages](docs/packages.md)\n\n### Templates\n\nSee specific documentation for [templates](docs/templating.md)\n\n### ToDo\n\n - [ ] Write some test\n - [x] ~~Add overlays options (-o, default value and file option)~~\n - [x] ~~Add auto apply option (-a)~~\n - [ ] Make a better documentation\n - [ ] Allow default overlays generation with overlays value in file\n - [ ] Allow package multiple deployment inside a single namespace (naming of each resources)\n - [ ] Add installation option (brew...)\n - [x] ~~Add a sleep time if CRD creation for operator is a bit long (prometheus-operator) before creating new resources.~~\n - [ ] Add an stdout option?","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnight-gold%2Farmada","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnight-gold%2Farmada","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnight-gold%2Farmada/lists"}