Go to file
2021-12-07 13:12:57 +01:00
.github/workflows chore: add ci workflow 2021-07-28 16:56:16 +02:00
cmd refactor: use semaphore 2021-11-17 12:50:59 +01:00
example docs: update example monorepo 2021-12-07 13:12:57 +01:00
testdata fix: update tests 2021-11-03 15:34:48 +01:00
tests/utils fix: fix imports 2021-09-07 15:47:29 +02:00
util fix: use standard logger 2021-12-07 13:09:20 +01:00
.editorconfig feat: allow parallel docker build & push 2021-11-03 15:31:12 +01:00
.gitignore remove logger passed as dependency, small Cmd refactor 2021-03-31 17:24:45 +02:00
.golangci.yml chore: increase lll 2021-11-03 15:49:38 +01:00
.goreleaser.yml fix: fix parse extra args splitting 2021-04-17 11:32:36 +02:00
build.go feat: allow parallel docker build & push 2021-11-03 15:31:12 +01:00
chart.go feat: add context 2021-10-23 07:22:36 +02:00
go.mod refactor: use semaphore 2021-11-17 12:50:59 +01:00
go.sum refactor: use semaphore 2021-11-17 12:50:59 +01:00
LICENSE docs: add license 2021-07-26 15:57:20 +02:00
Makefile docs: update example monorepo 2021-12-07 13:12:57 +01:00
README.md feat: support docker buildx 2021-07-30 16:17:27 +02:00
squadron_test.go fix: update tests 2021-11-03 15:34:48 +01:00
squadron.go fix: remove dead code 2021-12-07 13:10:01 +01:00
template.go docs: update example monorepo 2021-12-07 13:12:57 +01:00
TODO.md docs: update example monorepo 2021-12-07 13:12:57 +01:00
unit.go feat: allow parallel docker build & push 2021-11-03 15:31:12 +01:00

Squadron

Go Report Card godoc goreleaser

Application for managing kubernetes microservice environments.

Use it, if a helm chart is not enough in order to organize multiple services into an effective squadron.

Another 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)

Quickstart

Configure your squadron

# squadron.yaml
version: "1.0"

squadron:
  frontend:
    chart:
      name: mychart
      version: 0.1.0
      repository: http://helm.mycompany.com/repository
    builds:
      service:
        tag: latest
        dockerfile: Dockerfile
        image: docker.mycompany.com/mycomapny/frontend
        args:
          - "foo=foo"
          - "bar=bar"
    values:
      image: docker.mycompany.com/mycomapny/frontend:latest

Install the squadron squadron and namespace:

$ squadron up --build --push --namespace default

Uninstall the squadron again:

$ squadron down

Commands

# See:
$ squadron help

Docker Buildx

To use docker buildx command define your platforms through the SQUADRON_DOCKER_BUILDX env var:

$ export SQUADRON_DOCKER_BUILDX=linux/amd64

See also

Sometimes as a sailor or a pirate you might need to get a grapple : go get github.com/foomo/gograpple/...

How to Contribute

Make a pull request...

License

Distributed under MIT License, please see license file within the code for more details.