{"id":20017603,"url":"https://github.com/foomo/squadron","last_synced_at":"2025-05-04T22:32:00.099Z","repository":{"id":46921219,"uuid":"243240256","full_name":"foomo/squadron","owner":"foomo","description":"K8s Deployment Manager App","archived":false,"fork":false,"pushed_at":"2023-11-06T03:08:19.000Z","size":3095,"stargazers_count":3,"open_issues_count":8,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2023-12-16T08:57:58.747Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/foomo.png","metadata":{"files":{"readme":"README.md","changelog":null,"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,"governance":null,"roadmap":null,"authors":null}},"created_at":"2020-02-26T10:54:04.000Z","updated_at":"2024-01-12T13:40:08.471Z","dependencies_parsed_at":"2023-12-20T16:49:22.160Z","dependency_job_id":"8309669f-4c82-4c66-941b-a2e51e8d6417","html_url":"https://github.com/foomo/squadron","commit_stats":null,"previous_names":[],"tags_count":63,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foomo%2Fsquadron","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foomo%2Fsquadron/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foomo%2Fsquadron/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/foomo%2Fsquadron/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/foomo","download_url":"https://codeload.github.com/foomo/squadron/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252408456,"owners_count":21743124,"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-11-13T08:16:54.682Z","updated_at":"2025-05-04T22:32:00.091Z","avatar_url":"https://github.com/foomo.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://github.com/foomo/squadron/actions/workflows/pr.yml/badge.svg?branch=main\u0026event=push)](https://github.com/foomo/squadron/actions/workflows/pr.yml)\n[![Go Report Card](https://goreportcard.com/badge/github.com/foomo/squadron)](https://goreportcard.com/report/github.com/foomo/squadron)\n[![Coverage Status](https://coveralls.io/repos/github/foomo/squadron/badge.svg?branch=main\u0026)](https://coveralls.io/github/foomo/squadron?branch=main)\n[![GoDoc](https://godoc.org/github.com/foomo/squadron?status.svg)](https://godoc.org/github.com/foomo/squadron)\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"squadron\" src=\".github/assets/squadron.png\"/\u003e\n\u003c/p\u003e\n\n# Squadron\n\nApplication for managing kubernetes microservice environments.\n\nUse it, if a helm chart is not enough in order to organize multiple services into an effective squadron.\n\nAnother way to think of it would be `helm-compose`, because it makes k8s and helm way more approachable, not matter if it is development or production (where it just becomes another helm chart)\n\n## Configuration `squadron.yaml`\n\nConfigure your squadron\n\n```yaml\n# https://raw.githubusercontent.com/foomo/squadron/refs/heads/main/squadron.schema.json\nversion: '2.2'\n\n# squadron template vars\nvars: {}\n\n# helm global vars\nglobal: {}\n\n# squadron definitions\nsquadron:\n  # squadron units\n  site:\n    # squadron unit\n    frontend:\n      # helm chart definition\n      chart:\n        name: mychart\n        version: 0.1.0\n        repository: http://helm.mycompany.com/repository\n      # container builds\n      builds:\n        service:\n          tag: latest\n          file: Dockerfile\n          image: docker.mycompany.com/mycomapny/frontend\n          build_arg:\n            - \"foo=foo\"\n            - \"bar=bar\"\n      # helm chart values\n      values:\n        image: docker.mycompany.com/mycomapny/frontend:latest\n    # squadron unit\n    backend:\n      # helm chart definition\n      chart: \u003c% env \"PROJECT_ROOT\" %\u003e/path/to/chart\n      # kustomize path\n      kustomize: \u003c% env \"PROJECT_ROOT\" %\u003e/path/to/kustomize\n      # container builds\n      builds:\n        service:\n          tag: latest\n          file: Dockerfile\n          image: docker.mycompany.com/mycomapny/backend\n          build_arg:\n            - \"foo=foo\"\n            - \"bar=bar\"\n      # helm chart values\n      values:\n        image: docker.mycompany.com/mycomapny/backend:latest\n```\n\n## Usage\n\n```shell\n$ squadron help\nUsage:\n  squadron [command]\n\nAvailable Commands:\n  build         build or rebuild squadron units\n  completion    Generate completion script\n  config        generate and view the squadron config\n  diff          shows the diff between the installed and local chart\n  down          uninstalls the squadron or given units\n  help          Help about any command\n  list          list squadron units\n  push          pushes the squadron or given units\n  rollback      rolls back the squadron or given units\n  schema        generate squadron json schema\n  status        installs the squadron or given units\n  template      render chart templates locally and display the output\n  up            installs the squadron or given units\n  version       show version information\n\nFlags:\n  -d, --debug          show all output\n  -f, --file strings   specify alternative squadron files (default [squadron.yaml])\n  -h, --help           help for squadron\n  -s, --silent         only show errors\n  -v, --verbose        show more output\n\nUse \"squadron [command] --help\" for more information about a command.\n```\n\n## How to Contribute\n\nPlease refer to the [CONTRIBUTING](.github/CONTRIBUTING.md) details and follow the [CODE_OF_CONDUCT](.github/CODE_OF_CONDUCT.md) and [SECURITY](.github/SECURITY.md) guidelines.\n\n## License\n\nDistributed under MIT License, please see license file within the code for more details.\n\n_Made with ♥ [foomo](https://www.foomo.org) by [bestbytes](https://www.bestbytes.com)_\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoomo%2Fsquadron","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffoomo%2Fsquadron","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffoomo%2Fsquadron/lists"}