Commit Graph

3130 Commits

Author SHA1 Message Date
Sebastiaan van Stijn bc46490a68
Adjust `--platform` tests for changes in docker engine
These tests started failing on recent versions of the engine because the error string changed,
and due to a regression, the status code for one endpoint changed from a 400 to a 500.

On Docker 18.03:

The `docker build` case properly returns a 400, and "invalid platform" as error string;

```bash
docker build --platform=foobar -<<EOF
FROM busybox
EOF

Sending build context to Docker daemon  2.048kB
Error response from daemon: invalid platform: invalid platform os "foobar"
```

```
DEBU[2019-07-15T12:17:22.745511870Z] Calling GET /_ping
DEBU[2019-07-15T12:17:22.748224796Z] Calling POST /session
DEBU[2019-07-15T12:17:22.748692282Z] Calling POST /v1.37/build?buildargs=%7B%7D&cachefrom=%5B%5D&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=Dockerfile&labels=%7B%7D&memory=0&memswap=0&networkmode=default&platform=foobar&rm=1&session=d7b6ceba9d8d0aed67a805528554feb5285781fe888a4bf4e0c15cb09bffd614&shmsize=0&target=&ulimits=null
```

The `docker pull --platform=foobar hello-world:latest` case incorrectly returns a 500

```
DEBU[2019-07-15T12:16:08.744827612Z] Calling POST /v1.37/images/create?fromImage=hello-world&platform=foobar&tag=latest
DEBU[2019-07-15T12:16:08.745594874Z] FIXME: Got an API for which error does not match any expected type!!!: invalid platform: invalid platform os "foobar"  error_type="*errors.errorString" module=api
ERRO[2019-07-15T12:16:08.745916686Z] Handler for POST /v1.37/images/create returned error: invalid platform: invalid platform os "foobar"
DEBU[2019-07-15T12:16:08.746191172Z] FIXME: Got an API for which error does not match any expected type!!!: invalid platform: invalid platform os "foobar"  error_type="*errors.errorString" module=api
```

On Docker 18.09;

```bash
docker build --platform=foobar -<<EOF
FROM busybox
EOF

Error response from daemon: "foobar": unknown operating system or architecture: invalid argument
```

Which incorrectly returns a 500 status;

```
DEBU[2019-07-15T11:59:20.687268380Z] Calling POST /v1.39/build?buildargs=%7B%7D&cachefrom=%5B%5D&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=Dockerfile&labels=%7B%7D&memory=0&memswap=0&networkmode=default&platform=foobar&rm=1&session=jko7kejjvs93judyfnq7shoda&shmsize=0&target=&ulimits=null&version=1
DEBU[2019-07-15T11:59:20.687282279Z] Calling POST /session
INFO[2019-07-15T11:59:20.687761392Z] parsed scheme: ""                             module=grpc
INFO[2019-07-15T11:59:20.687833668Z] scheme "" not registered, fallback to default scheme  module=grpc
INFO[2019-07-15T11:59:20.688017578Z] ccResolverWrapper: sending new addresses to cc: [{ 0  <nil>}]  module=grpc
INFO[2019-07-15T11:59:20.688270160Z] ClientConn switching balancer to "pick_first"  module=grpc
INFO[2019-07-15T11:59:20.688353083Z] pickfirstBalancer: HandleSubConnStateChange: 0xc4209b0630, CONNECTING  module=grpc
INFO[2019-07-15T11:59:20.688985698Z] pickfirstBalancer: HandleSubConnStateChange: 0xc4209b0630, READY  module=grpc
DEBU[2019-07-15T11:59:20.812700550Z] client is session enabled
DEBU[2019-07-15T11:59:20.813139288Z] FIXME: Got an API for which error does not match any expected type!!!: invalid argument
github.com/docker/docker/vendor/github.com/containerd/containerd/errdefs.init
	/go/src/github.com/docker/docker/vendor/github.com/containerd/containerd/errdefs/errors.go:40
github.com/docker/docker/vendor/github.com/containerd/containerd/content.init
	<autogenerated>:1
github.com/docker/docker/builder/builder-next.init
	<autogenerated>:1
github.com/docker/docker/api/server/backend/build.init
	<autogenerated>:1
main.init
	<autogenerated>:1
runtime.main
	/usr/local/go/src/runtime/proc.go:186
runtime.goexit
	/usr/local/go/src/runtime/asm_amd64.s:2361  error_type="*errors.fundamental" module=api
ERRO[2019-07-15T11:59:20.813210677Z] Handler for POST /v1.39/build returned error: "foobar": unknown operating system or architecture: invalid argument
DEBU[2019-07-15T11:59:20.813276737Z] FIXME: Got an API for which error does not match any expected type!!!: invalid argument
github.com/docker/docker/vendor/github.com/containerd/containerd/errdefs.init
	/go/src/github.com/docker/docker/vendor/github.com/containerd/containerd/errdefs/errors.go:40
github.com/docker/docker/vendor/github.com/containerd/containerd/content.init
	<autogenerated>:1
github.com/docker/docker/builder/builder-next.init
	<autogenerated>:1
github.com/docker/docker/api/server/backend/build.init
	<autogenerated>:1
main.init
	<autogenerated>:1
runtime.main
	/usr/local/go/src/runtime/proc.go:186
runtime.goexit
	/usr/local/go/src/runtime/asm_amd64.s:2361  error_type="*errors.fundamental" module=api
```

Same for the `docker pull --platform=foobar hello-world:latest` case:

```bash
docker pull --platform=foobar hello-world:latest
Error response from daemon: "foobar": unknown operating system or architecture: invalid argument
```

```
DEBU[2019-07-15T12:00:18.812995330Z] Calling POST /v1.39/images/create?fromImage=hello-world&platform=foobar&tag=latest
DEBU[2019-07-15T12:00:18.813229172Z] FIXME: Got an API for which error does not match any expected type!!!: invalid argument
github.com/docker/docker/vendor/github.com/containerd/containerd/errdefs.init
	/go/src/github.com/docker/docker/vendor/github.com/containerd/containerd/errdefs/errors.go:40
github.com/docker/docker/vendor/github.com/containerd/containerd/content.init
	<autogenerated>:1
github.com/docker/docker/builder/builder-next.init
	<autogenerated>:1
github.com/docker/docker/api/server/backend/build.init
	<autogenerated>:1
main.init
	<autogenerated>:1
runtime.main
	/usr/local/go/src/runtime/proc.go:186
runtime.goexit
	/usr/local/go/src/runtime/asm_amd64.s:2361  error_type="*errors.fundamental" module=api
ERRO[2019-07-15T12:00:18.813365546Z] Handler for POST /v1.39/images/create returned error: "foobar": unknown operating system or architecture: invalid argument
DEBU[2019-07-15T12:00:18.813461428Z] FIXME: Got an API for which error does not match any expected type!!!: invalid argument
github.com/docker/docker/vendor/github.com/containerd/containerd/errdefs.init
	/go/src/github.com/docker/docker/vendor/github.com/containerd/containerd/errdefs/errors.go:40
github.com/docker/docker/vendor/github.com/containerd/containerd/content.init
	<autogenerated>:1
github.com/docker/docker/builder/builder-next.init
	<autogenerated>:1
github.com/docker/docker/api/server/backend/build.init
	<autogenerated>:1
main.init
	<autogenerated>:1
runtime.main
	/usr/local/go/src/runtime/proc.go:186
runtime.goexit
	/usr/local/go/src/runtime/asm_amd64.s:2361  error_type="*errors.fundamental" module=api
```

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-07-15 15:48:06 +02:00
Sebastiaan van Stijn 6f6572bb8a
Update to python 3.7 (buster) and use build-args
The build arg can be used to either test different versions, but
also makes it easier to "grep" when upgrading versions.

The output format of `gpg2 --list-secret-keys` changed in the version
installed on Buster, so `grep` was replaced with `awk` to address
the new output format;

Debian Jessie:

    gpg2 --no-auto-check-trustdb --list-secret-keys
    /root/.gnupg/secring.gpg
    ------------------------
    sec   1024D/A7B21401 2018-04-25
    uid                  Sakuya Izayoi <sakuya@gensokyo.jp>
    ssb   1024g/C235E4CE 2018-04-25

Debian Buster:

    gpg2 --no-auto-check-trustdb --list-secret-keys
    /root/.gnupg/pubring.kbx
    ------------------------
    sec   dsa1024 2018-04-25 [SCA]
          9781B87DAB042E6FD51388A5464ED987A7B21401
    uid           [ultimate] Sakuya Izayoi <sakuya@gensokyo.jp>
    ssb   elg1024 2018-04-25 [E]

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-07-15 13:27:07 +02:00
Sebastiaan van Stijn 1126ea9d6f
xfail test_init_swarm_data_path_addr
This test can fail if `eth0` has multiple IP addresses;

   E   docker.errors.APIError: 400 Client Error: Bad Request ("interface eth0 has more than one IPv6 address (2001:db8:1::242:ac11:2 and fe80::42:acff:fe11:2)")

Which is not a failiure, but depends on the environment that
the test is run in.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-07-12 22:50:35 +02:00
Joffrey F 53a182d6e2
Merge pull request #2377 from thaJeztah/bump_credential_helpers
Update credentials-helpers to v0.6.2
2019-07-12 10:32:50 -07:00
Sebastiaan van Stijn df340bea60
Update credentials-helpers to v0.6.2
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2019-07-12 01:28:41 +02:00
Joffrey F 4d8e5eb2ad
Merge pull request #2369 from crosbymichael/detach-exec
Remove exec detach test
2019-06-25 11:26:57 -07:00
Michael Crosby 8303884612 Remove exec detach test
Forking off an exec process and detaching isn't a supported method

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2019-06-25 13:08:39 -04:00
Djordje Lukic 4db37a1267 Bump dev
Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
2019-06-20 13:34:03 +02:00
Djordje Lukic 46fdeffb10 Bump 4.0.2
Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
2019-06-20 13:33:44 +02:00
Djordje Lukic 1308cfb78d
Merge pull request #2365 from docker/4.0.2-release
4.0.2 release
2019-06-20 13:23:27 +02:00
Djordje Lukic 805f5f4b38 Bump 4.0.2
Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
2019-06-20 12:58:37 +02:00
Djordje Lukic a821502b9e Bump websocket-client -> 0.56.0
Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
2019-06-20 12:58:37 +02:00
Kajetan Champlewski 1f38d270e0 Clean up healtcheck.py docs
Signed-off-by: Kajetan Champlewski <contact@kajetan.ch>
2019-06-20 12:58:37 +02:00
Kajetan Champlewski 241aaaab23 Handle str in setter for test.
Signed-off-by: Kajetan Champlewski <contact@kajetan.ch>
2019-06-20 12:58:37 +02:00
Kajetan Champlewski c5ca2ef85e Fix documentation for inspect_secret referring to removal.
Signed-off-by: Kajetan Champlewski <contact@kajetan.ch>
2019-06-20 12:58:37 +02:00
Joffrey F 1ef822afee dev version
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-06-20 12:58:37 +02:00
Chris Crone 20b5491363
Merge pull request #2362 from rumpl/bump-websockets
Bump websocket-client -> 0.56.0
2019-06-19 08:27:04 -07:00
Djordje Lukic 7dd3d563f6 Bump websocket-client -> 0.56.0
Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
2019-06-19 14:09:47 +02:00
Joffrey F 0f368939de
Merge pull request #2353 from mildlyincompetent/improve-healthcheck
Handle `str` in setter for test on HealthCheck
2019-05-31 10:42:29 -07:00
Kajetan Champlewski dcff8876b1
Clean up healtcheck.py docs
Signed-off-by: Kajetan Champlewski <contact@kajetan.ch>
2019-05-31 09:13:30 +00:00
Kajetan Champlewski 7302d1af04
Handle str in setter for test.
Signed-off-by: Kajetan Champlewski <contact@kajetan.ch>
2019-05-31 09:11:20 +00:00
Frank Sachsenheim 4b924dbaf4 Amends the docs concerning multiple label filters
Closes #2338

Signed-off-by: Frank Sachsenheim <funkyfuture@riseup.net>
2019-05-27 22:07:24 +02:00
Joffrey F a208de9e5b
Merge pull request #2351 from mildlyincompetent/master
Fix documentation for inspect_secret referring to removal.
2019-05-24 10:16:27 -07:00
Kajetan Champlewski 0624ccc9cc
Fix documentation for inspect_secret referring to removal.
Signed-off-by: Kajetan Champlewski <contact@kajetan.ch>
2019-05-24 15:37:58 +00:00
Joffrey F 542251af3a
Merge pull request #2349 from docker/resync-release
Resync release notes (4.0.1)
2019-05-18 21:00:20 -07:00
Joffrey F 0200e051c0 dev version
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-05-18 20:28:19 -07:00
Joffrey F 4828138f50 Changelog 4.0.1
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-05-18 20:27:35 -07:00
Joffrey F bc827a2ea9 Bump 4.0.1
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-05-18 20:27:35 -07:00
Joffrey F ead0bb9e08
Merge pull request #2348 from docker/4.0.1-release
4.0.1 release
2019-05-18 20:18:03 -07:00
Joffrey F 307e2b3eda Changelog 4.0.1
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-05-18 20:05:20 -07:00
Joffrey F 4d08f2c33d Bump 4.0.1
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-05-18 19:54:35 -07:00
Joffrey F fc0285c09b Version bump
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-05-18 19:54:35 -07:00
Simon Gurcke df182fd42d Change os.errno to errno for py3.7 compatibility
Signed-off-by: Simon Gurcke <simon@gurcke.de>
2019-05-18 19:54:35 -07:00
Joffrey F 4a8a86eed4 Add readthedocs config
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-05-18 19:54:35 -07:00
Batuhan Taşkaya 80f68c81cd reference swarm page correctly
Signed-off-by: Batuhan Taşkaya <btaskaya33@gmail.com>
2019-05-18 19:54:35 -07:00
Joffrey F c657ca316e
Merge pull request #2347 from docker/resync-release
Resync release branch with master
2019-05-18 19:45:41 -07:00
Joffrey F a33dbd8682
Merge pull request #2335 from isidentical/master
reference swarm page correctly
2019-05-18 19:38:48 -07:00
Joffrey F c2ceb89329
Merge pull request #2346 from itssimon/master
Change os.errno to errno for py3.7 compatibility
2019-05-18 19:34:36 -07:00
Joffrey F eee115c2b8 Version bump
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-05-18 19:33:48 -07:00
Joffrey F b406bfb463 Update changelog for 4.0.0
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-05-18 19:33:48 -07:00
Joffrey F 3267d1f0cc Bump version 4.0.0
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-05-18 19:33:48 -07:00
Ulysses Souza efdac34ef4 Bump 3.7.2
Signed-off-by: Ulysses Souza <ulysses.souza@docker.com>
2019-05-18 19:33:48 -07:00
Ulysses Souza ccd9ca4947 Xfail test_attach_stream_and_cancel on TLS
This test is quite flaky on ssl integration test

Signed-off-by: Ulysses Souza <ulysses.souza@docker.com>
2019-05-18 19:33:48 -07:00
Simon Gurcke 31fec93872 Change os.errno to errno for py3.7 compatibility
Signed-off-by: Simon Gurcke <simon@gurcke.de>
2019-05-19 12:20:12 +10:00
Joffrey F 181fade33a
Merge pull request #2343 from docker/rtd-conf
Add readthedocs config
2019-05-18 19:17:54 -07:00
Joffrey F 31236ba5a7 Add readthedocs config
Signed-off-by: Joffrey F <joffrey@docker.com>
2019-05-18 19:13:45 -07:00
Joffrey F 5d42ab81c3
Merge pull request #2331 from docker/4.0.0-release
4.0.0 release
2019-05-18 18:35:54 -07:00
Ulysses Souza 5de5af1155 Bump urllib3 -> 1.24.3
Signed-off-by: Ulysses Souza <ulysses.souza@docker.com>
2019-05-18 18:15:27 -07:00
Joffrey F 37e442aaed
Merge pull request #2339 from ulyssessouza/bump-urllib3
Bump urllib3 -> 1.24.3
2019-05-15 13:06:14 -07:00
Ulysses Souza 690b0ce9c4 Bump urllib3 -> 1.24.3
Signed-off-by: Ulysses Souza <ulysses.souza@docker.com>
2019-05-15 10:21:26 +02:00