Commit Graph

291 Commits

Author SHA1 Message Date
Ulysses Souza f8a3aec64d Add aci volumes e2e test
Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-10-06 17:22:57 +02:00
Guillaume Tardif 5c0a953f7e
Merge pull request #731 from docker/atlas_test_disable
Temporarily disable some red ACI tests
2020-10-06 13:51:32 +02:00
Guillaume Tardif b10acc1a60 Temporarily disable some red ACI tests, to be put reverted once the platform is back to green (hopefully in a day or 2)
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-10-06 13:29:27 +02:00
Ulysses Souza d9115d4089 Add windows golden file for `context ls`
Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-10-06 11:50:27 +02:00
Guillaume Tardif 97576db803
Merge pull request #689 from ulyssessouza/json-out
Add json output format to several commands
2020-10-05 10:30:30 +02:00
Guillaume Tardif 71238b261d Running tests in many regions to avoid per region limit when we run too many // things in the CI
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-10-05 09:36:43 +02:00
Ulysses Souza e4fff081db
Merge pull request #711 from docker/fix_aci_500
ACI tests : Wait for http status and retry if necessary.
2020-10-02 17:30:23 +02:00
Guillaume Tardif 6d0f7f399f Fix regression: let users login to local registry (no '.' In registry name)
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-10-02 13:54:59 +02:00
Guillaume Tardif a07b1db9f1 Wait for http status and retry if necessary. We were getting 500 errors because database is not ready initially
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-10-01 18:09:34 +02:00
Ulysses Souza b8a1e6c888 Change JSON output to individual lines
Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-10-01 15:41:18 +02:00
Ulysses Souza 3e9095a873 Fix docker context ls for retrocompatibility
It writes each context as an independent object line

Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-10-01 15:41:18 +02:00
Ulysses Souza 0f6f547214 Refactor Print method for lists
This also fixes in the case of nil list

Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-10-01 15:41:18 +02:00
Ulysses Souza 8961805412 Add json output format to several commands
- docker context ls
- docker ps
- docker compose ls
- docker compose ps
- docker secret ls
- docker volume ls
- docker version

Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-10-01 15:41:18 +02:00
Guillaume Tardif 7941e048a1 Fix ACI e2e : now we support passing commands, set `--domainname` before the image in the cmd
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-10-01 12:56:47 +02:00
Guillaume Tardif b8968e83cd Do not fail when constructing error message for commands not implemented. Use metrics GetCommand() the is already used 3 lines above for metrics tracking.
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-30 10:49:14 +02:00
Guillaume Tardif ca35ccfb0e ACI Volumes : create takes one required arg, instead of required flag `--fileshare` (we still have required flag `--storage-account` specifically for ACI)
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-24 17:10:32 +02:00
Guillaume Tardif 7eda96bea4 Fix nil pointer when creating volume with “” storage account
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-24 12:59:29 +02:00
Guillaume Tardif 334ebf5f75 Implement --domainname flag on compose up, also defining compose extension "x-aci-domain-name" to store ACI DNSLabelName.
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-22 14:41:31 +02:00
Guillaume Tardif 701d1b834e ACI: allow users to set DNSLabelName and deploy containers with fqdn like `myapp.eastus.azurecontainers.io`
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-22 14:41:31 +02:00
Guillaume Tardif 7abdb085c0
Merge pull request #637 from docker/volume_tests
Added tests on ACI volume conversion, mock storageLogin required to get storage account keys
2020-09-22 14:40:46 +02:00
Guillaume Tardif 0092de6df1 Added tests on ACI volume conversion, mock storageLogin required to get storage account keys
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-22 14:24:12 +02:00
Chris Crone d154c41586 Update copyright
Signed-off-by: Chris Crone <christopher.crone@docker.com>
2020-09-22 12:13:00 +02:00
Guillaume Tardif 17bda79ca1 Changing e2e test PATH to make windows tests pass
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-17 17:13:05 +02:00
Guillaume Tardif 9c6aead797 Allow running commands with HOME=“”.
Do not try to create ~/.docker before using CONFIG_DIR. HOME=“” will result in trying to use a relative .docker folder as default config folder, and if we cannot create the context store for any reason, try delegate to Moby CLI.

Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-17 09:08:17 +02:00
Guillaume Tardif 2ce4e98d88 In version, replace “Azure integration” version info by “Cloud integration”
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-11 17:29:40 +02:00
Guillaume Tardif 57ded74aee
Merge pull request #598 from docker/encode_env_values
Properly send env variables containing “=“ in their value in ACI payload. Also properly send quoted values
2020-09-10 17:17:02 +02:00
Guillaume Tardif 98f0064fe9 Properly send env variables containing “=“ in their value in ACI payload. Also properly send quoted values
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-10 17:03:34 +02:00
Guillaume Tardif 0b3fdb637d Change volume IDs from “storageaccount@fileshare“ to “storageaccount/fileshare”
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-10 16:07:22 +02:00
Guillaume Tardif c7a456ab83
Merge pull request #593 from docker/volume_create
ACI Volume create
2020-09-10 15:32:12 +02:00
Guillaume Tardif 80d23a6097 Removed NAME from `volume ls` output, allow `volume delete <ID>` using IDs from `volume ls`.
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-10 09:14:39 +02:00
Guillaume Tardif 96d785a5bd Added volume delete, can delete juste a file share or the storage account if confirmed
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-08 16:32:16 +02:00
Nicolas De Loof d4c745a7a8
AWS CI environment is not dedicated to tests
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-09-08 15:47:24 +02:00
Guillaume Tardif 2f672f6c4c Volume e2e test
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-08 15:30:50 +02:00
Guillaume Tardif 08562b403e Connecting it all
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-08 15:30:50 +02:00
Guillaume Tardif 171ab1bd0c Most common scenario is to use `compose ls` without name option, and list all stacks
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-08 10:11:51 +02:00
Guillaume Tardif a2e0f16f07
Merge pull request #592 from docker/fix_compose_ls_tests
Fix `compose ls` tests
2020-09-08 09:06:39 +02:00
aiordache 9098405313 Fix `compose ls` tests
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-09-07 17:06:35 +02:00
Chris Crone 7545485f78
Merge pull request #591 from docker/flaky-aci
Attempt to fix flaky ACI tests
2020-09-07 17:05:58 +02:00
aiordache 3ed90ea467 replace check with Equal in e2e test
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-09-07 14:49:15 +02:00
aiordache 19a707495f add test for compose ls
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-09-07 14:39:49 +02:00
Chris Crone e4e77bd198 e2e.aci: Retry flaky HTTP GET requests
Signed-off-by: Chris Crone <christopher.crone@docker.com>
2020-09-07 13:43:49 +02:00
Chris Crone 6f0f9e5600 e2e.framework: Add helper to retry HTTP requests
Signed-off-by: Chris Crone <christopher.crone@docker.com>
2020-09-07 13:43:48 +02:00
Guillaume Tardif d06aa2827f Move containers, compose, secrets to /api
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-07 13:22:08 +02:00
Guillaume Tardif 7138ecc899 ACI : when following logs (actually polling logs), stop polling when the container is not running anymore.
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-04 15:46:35 +02:00
Guillaume Tardif c7e2db077e
Merge pull request #544 from docker/simulation
Introduce ECS emulation mode
2020-09-01 15:18:32 +02:00
Guillaume Tardif 58cb3491ae Wait only for the first “DELETE_COMPLETE” line when running `docker compose down` (~4 secs, instead of waiting 8-9 mins for the entire aws stack to be deleted), and let aws fully delete stack async.
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-09-01 09:33:13 +02:00
Nicolas De Loof 4d11594df0
default description if none set by user
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-31 17:10:59 +02:00
Nicolas De Loof 4693ce91f6
e2e test to check ecs-local context creation
Signed-off-by: Nicolas De Loof <nicolas.deloof@gmail.com>
2020-08-31 16:54:02 +02:00
Guillaume Tardif b0c50ed6dd Implement compose ps on ACI
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-28 17:43:18 +02:00
Guillaume Tardif ed395a1e64 Display nice message on context creation (message taken from Moby cli)
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-26 18:09:01 +02:00
Guillaume Tardif ad5c465bd1
Merge pull request #485 from docker/repo-rename
Rename docker/api -> docker/compose-cli
2020-08-25 15:58:51 +02:00
Ulysses Souza 59f7d7cd00 Redirect user from plugin usage to integrated ECS
Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-08-24 19:29:10 +02:00
Guillaume Tardif a61c2d16de
Merge pull request #537 from docker/e2e_better_logs
E2e improvements
2020-08-24 17:12:15 +02:00
Guillaume Tardif 981665b02c Better renaming
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-24 16:09:20 +02:00
Guillaume Lours 10b7197e4a Remove version in test compose files
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
2020-08-24 10:15:42 +02:00
Guillaume Tardif 2bac8cf94e Fix linter
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-21 21:28:15 +02:00
Guillaume Tardif 7204692e3a Use test name instead of arbitrary string that needs to be different for each test
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-21 18:46:31 +02:00
Guillaume Tardif 30884ad91a Display executed commands (prefixed with test name for readable logs in // runs)
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-21 18:46:17 +02:00
Guillaume Tardif da6334f415 Renaming, expect commands to succeed by default (removed a bunch of res.Assert(success) )
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-21 18:45:38 +02:00
Chris Crone 4c6280b0e9 Rename docker/api -> docker/compose-cli
Signed-off-by: Chris Crone <christopher.crone@docker.com>
2020-08-21 17:28:39 +02:00
Guillaume Tardif e05603a5ca More ECS E2E tests (secrets), in // of compose
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-21 15:56:00 +02:00
Guillaume Tardif 73f5f030ac Fix flakiness in ECS E2E : wait when reaching nginx welcome page, sometimes stack is not fully up and we get 503 errors
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-21 11:53:01 +02:00
Guillaume Tardif bff1fa1872
Merge pull request #525 from docker/workingdir
workdir default value is defined by compose file
2020-08-21 10:22:31 +02:00
Guillaume Tardif e19a740102 Adapt aci compose test reflecting the change.
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-21 09:59:50 +02:00
Djordje Lukic 635ecd7b99 Return a default implementation when nil
Some backends can decide not to implement a whole set of APIs (compose
for example), we now return a default implementation that returns a
`errdefs.ErrNotImplemented` for each action making it easy for the cli
to print a helpful error message. We also remove any possible nil
panics.

Signed-off-by: Djordje Lukic <djordje.lukic@docker.com>
2020-08-20 14:32:03 +02:00
Guillaume Tardif d49d4473c3 Allow running ECS E2E tests locally
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-20 09:59:24 +02:00
Guillaume Tardif 3a83d85d7a First ECS E2E test
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-19 19:13:23 +02:00
Guillaume Tardif 64dd7a5674 Check that AZURE creds are defined when running E2E tests
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-19 11:58:02 +02:00
Guillaume Tardif 6ad48b9212 Updated ACI e2e flaky test to avoid failing when https://github.com/docker/desktop-microsoft/issues/49 happens
Signed-off-by: Guillaume Tardif <guillaume.tardif@docker.com>
2020-08-18 12:42:01 +02:00
Guillaume Lours 95de770e87 Update or add license header which are not valid
Signed-off-by: Guillaume Lours <guillaume.lours@docker.com>
2020-08-17 16:55:25 +02:00
Guillaume Tardif 27e7a0ced3
Merge pull request #475 from docker/aci_volume_keys
Get storage account key from azure login, no need to specify it in compose file or run -v option
2020-08-14 17:55:56 +02:00
Guillaume Tardif 274dc8283f Use proper context in storage key retrieval 2020-08-14 17:01:44 +02:00
Chris Crone d902c968e7
Merge pull request #481 from ulyssessouza/fix-golang114-e2e-local-tests
Fix e2e-local tests when compiled with go1.14
2020-08-14 14:32:46 +02:00
Guillaume Tardif a86854effd Slightly update timeout, failing on windows nodes (https://github.com/docker/api/runs/984443961). Didn’t want to make it too long either, avoid waiting 2 mins to see when it’s failing. We’ll update this again if we see it’s not enough. 2020-08-14 12:42:19 +02:00
Guillaume Tardif 3a60c957ae Get storage account key from azure login, no need to specify it in compose file or run -v option 2020-08-14 12:26:09 +02:00
Guillaume Tardif 104b3d4dc8 Change ACI test region to eastus2. Improve error output when waiting for container status 2020-08-14 12:12:06 +02:00
Ulysses Souza 2f16ca1e7a Fix e2e-local tests when compiled with go1.14
Check https://github.com/golang/go/commit/64cfe9f

Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-08-14 09:45:03 +02:00
Djordje Lukic 9a29037e0f Put 40 seconds for timeout instead of 20
For some reason this test fails on CI with a timeout.
2020-08-13 09:50:06 +02:00
Djordje Lukic aa8bf1daaa Add test for ACI start 2020-08-12 14:50:47 +02:00
Guillaume Tardif 3d758b7f26 Implement `docker ps —all` filter on ACI 2020-08-12 11:59:36 +02:00
Guillaume Tardif ee062e8333 ACI Stop implementation 2020-08-12 10:32:35 +02:00
Djordje Lukic f44d29f4df Fix the rm test without force
mutlierror didn't append an `Error:` if there is only one error...
2020-08-11 17:06:45 +02:00
Djordje Lukic 80c1b2246b
Merge pull request #457 from docker/feat-aci-force-rm
Add --force to rm on ACI
2020-08-11 16:42:49 +02:00
Djordje Lukic 093a69136f Add --force to rm on ACI
If a container is running the user must force the removal of the
container.
2020-08-11 16:30:42 +02:00
Guillaume Tardif ec5f4e9202 Add options to `docker login azure` to support Service Principal login. Use it in E2E tests 2020-08-11 12:11:51 +02:00
Chris Crone fc64f2923b aci-e2e: Windows fixes
Signed-off-by: Chris Crone <christopher.crone@docker.com>
2020-08-10 17:23:50 +02:00
Chris Crone 65fb6020a0 tests.e2e: Check Windows specific error
Signed-off-by: Chris Crone <christopher.crone@docker.com>
2020-08-10 15:06:20 +02:00
Chris Crone 6e99119a4b tests.e2e: Fix Windows tests
Signed-off-by: Chris Crone <christopher.crone@docker.com>
2020-08-10 14:26:47 +02:00
Chris Crone 017053e19a tests.e2e: Refactor
Signed-off-by: Chris Crone <christopher.crone@docker.com>
2020-08-10 14:12:46 +02:00
Guillaume Tardif 4dd1918ac2 Improve test that was sometimes passing too quickly where it should fail 2020-08-05 15:05:32 +02:00
Guillaume Tardif f442eafe0b Validate run restart option value. Default value is “none”, instead of “no”, this is more in line with compose values, and changes only the default so should not have too much impact on legacy usage. 2020-08-04 17:11:21 +02:00
Ulysses Souza a2c2d6aa5d Add Restart Policy support when running single container 2020-08-04 16:57:58 +02:00
Chris Crone f8ce7a4780 cli: Move to gotest.tools
Signed-off-by: Chris Crone <christopher.crone@docker.com>
2020-08-04 14:03:24 +02:00
aiordache 87245ef727 rename packages ( amazon to ecs and azure to aci )
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-07-30 11:34:34 +02:00
aiordache 648f0139df add e2e test for compose up on default context
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-07-29 17:33:23 +02:00
Christopher Crone eac315c6ec tests: Fix logout test on Windows
The macOS/Linux output when logging out from a registry that you're not
logged into is different to that of Windows. As the login test doesn't
really test if the registry login works, the test now just checks that
the command is properly parsed.

Signed-off-by: Christopher Crone <christopher.crone@docker.com>
2020-07-17 16:55:12 +02:00
Christopher Crone d1a929eb7f cli: Fix logout when specifying a registry
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
2020-07-17 16:29:12 +02:00
Djordje Lukic 4480d27595 Don't set the container name in the test
This will help us catch errors such as
https://github.com/docker/desktop-microsoft/issues/42
2020-07-16 10:39:41 +02:00
Guillaume Tardif 1fbdbbbbe3
Merge pull request #381 from docker/fix-logs-windows
Get the real width of the terminal
2020-07-10 13:06:07 +02:00
Guillaume Tardif d21fd7b8cf Do not fail (divide by zero) if terminal width is not set. Improved a bit the ACI e2e test, happy that it catches this error (this was going to break the log gRPC API) 2020-07-10 13:00:41 +02:00