2020-04-06 17:40:40 +03:00
|
|
|
# Docker API
|
|
|
|
|
2020-05-03 16:31:05 +03:00
|
|
|
[![Actions Status](https://github.com/docker/api/workflows/Continuous%20integration/badge.svg)](https://github.com/docker/api/actions)
|
2020-05-03 16:25:50 +03:00
|
|
|
|
2020-04-06 17:40:40 +03:00
|
|
|
## Dev Setup
|
|
|
|
|
2020-05-05 00:50:00 +03:00
|
|
|
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
|
2020-05-14 22:48:50 +03:00
|
|
|
* [protoc](https://github.com/protocolbuffers/protobuf)
|
2020-05-05 00:50:00 +03:00
|
|
|
* `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`).
|
2020-04-06 17:43:36 +03:00
|
|
|
|
2020-05-04 23:31:59 +03:00
|
|
|
## Building the project
|
2020-04-06 17:43:36 +03:00
|
|
|
|
|
|
|
```bash
|
2020-05-04 23:31:59 +03:00
|
|
|
$ make
|
2020-04-06 17:43:36 +03:00
|
|
|
```
|
2020-05-04 23:31:59 +03:00
|
|
|
|
|
|
|
If you make changes to the `.proto` files, make sure to `make protos` to generate go code.
|
2020-05-06 10:37:52 +03:00
|
|
|
|
|
|
|
|
|
|
|
## Tests
|
|
|
|
|
|
|
|
To run unit tests:
|
|
|
|
|
|
|
|
```
|
|
|
|
make test
|
|
|
|
```
|
|
|
|
|
|
|
|
If you need to update a golden file simply do `go test ./... -test.update-golden`.
|