mirror of https://github.com/docker/compose.git
a948b6e1d0
- less dependencies to init backend. (Will need to work more on this to make login command not need an existing subscription ID) - backend does not get login token at init time. For a long running process (grace server) this would cause issues with token lifetime - we benefit from the client config (polling options especially) set in aci.go, without duplicating stuff |
||
---|---|---|
.dependabot | ||
.github | ||
azure | ||
backend | ||
cli | ||
client | ||
compose | ||
containers | ||
context | ||
docs/cli | ||
errdefs | ||
example | ||
moby | ||
multierror | ||
protos | ||
server | ||
tests | ||
.dockerignore | ||
.gitignore | ||
.golangci.yml | ||
Dockerfile | ||
Makefile | ||
README.md | ||
builder.Makefile | ||
go.mod | ||
go.sum |
README.md
Docker API
Dev Setup
The recommended way is to use the main Makefile
that runs everything inside a container.
If you don't have or want to use Docker for building you need to make sure you have all the needed tools installed locally:
- go 1.14
- protoc
go get github.com/golang/protobuf/protoc-gen-go@v1.4.1
go get golang.org/x/tools/cmd/goimports
go get github.com/golangci/golangci-lint/cmd/golangci-lint@v1.26.0
And then you can call the same make targets but you need to pass it the builder.Makefile
(make -f builder.Makefile
).
The new CLI delegates to the classic docker for default contexts ; delegation is done to docker-classic
.
make classic-link
will create adocker-classic
link in/usr/local/bin
if you don't already have it from Docker Desktop
Building the project
$ make
If you make changes to the .proto
files, make sure to make protos
to generate go code.
Tests
To run unit tests:
make test
If you need to update a golden file simply do go test ./... -test.update-golden
.