mirror of
https://github.com/docker/compose.git
synced 2025-04-07 19:55:07 +02:00
- 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
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
.
Description
Languages
Go
97.1%
Dockerfile
2%
Makefile
0.5%
HCL
0.3%