- Windows:
- Docker Desktop
- make
- macOS:
- Docker Desktop
- make
- Linux:
Once you have the prerequisites installed, you can build the CLI using:
make
This will output a docker-compose
CLI plugin for your host machine in
./bin/build
.
You can statically cross compile the CLI for Windows, macOS, and Linux using the
cross
target.
To run all of the unit tests, run:
make test
If you need to update a golden file simply do go test ./... -test.update-golden
.
To run e2e tests, the Compose CLI binary needs to be built. All the commands to run e2e tests propose a version
with the prefix build-and-e2e
to first build the CLI before executing tests.
Note that this requires a local Docker Engine to be running.
To execute both CLI and standalone e2e tests, run :
make e2e
Or if you need to build the CLI, run:
make build-and-e2e
To execute CLI plugin e2e tests, run :
make e2e-compose
Or if you need to build the CLI, run:
make build-and-e2e-compose
To execute the standalone CLI e2e tests, run :
make e2e-compose-standalone
Or if you need to build the CLI, run:
make build-and-e2e-compose-standalone
To create a new release:
- Check that the CI is green on the main branch for the commit you want to release
- Run the release GitHub Actions workflow with a tag of form vx.y.z following existing tags.
This will automatically create a new tag, release and make binaries for Windows, macOS, and Linux available for download on the releases page.