diff --git a/AGENTS.md b/AGENTS.md index e91c95f52a..ab2ff6128d 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -4,9 +4,11 @@ - Build: `make build` - Test all: `make test` -- Test unit: `go test ./pkg/...` +- Test unit: `go test ./pkg/...` — needs no Docker daemon; the e2e suite is + gated behind the `e2e` build tag and is not picked up - Test single: `go test ./pkg/compose/ -run TestFunctionName` -- E2E tests: `go test -tags e2e ./pkg/e2e/ -run TestName` +- E2E tests: `go test -tags e2e ./pkg/e2e/ -run TestName` — requires a Docker + daemon and the locally built binary (`make build`) ## E2E tests diff --git a/Makefile b/Makefile index 14542e2e52..db04afa0a0 100644 --- a/Makefile +++ b/Makefile @@ -77,11 +77,11 @@ install: binary .PHONY: e2e-compose e2e-compose: example-provider ## Run end to end local tests in plugin mode. Set E2E_TEST=TestName to run a single test - go run gotest.tools/gotestsum@latest --format testname --junitfile "/tmp/report/report.xml" -- -v $(TEST_FLAGS) -count=1 -parallel=$(E2E_PARALLEL_PLUGIN) -timeout 20m ./pkg/e2e + go run gotest.tools/gotestsum@latest --format testname --junitfile "/tmp/report/report.xml" -- -v $(TEST_FLAGS) -count=1 -parallel=$(E2E_PARALLEL_PLUGIN) -timeout 20m -tags e2e ./pkg/e2e .PHONY: e2e-compose-standalone e2e-compose-standalone: ## Run End to end local tests in standalone mode. Set E2E_TEST=TestName to run a single test - go run gotest.tools/gotestsum@latest --format testname --junitfile "/tmp/report/report.xml" -- $(TEST_FLAGS) -v -count=1 -parallel=$(E2E_STANDALONE_PARALLEL) -timeout 20m --tags=standalone ./pkg/e2e + go run gotest.tools/gotestsum@latest --format testname --junitfile "/tmp/report/report.xml" -- $(TEST_FLAGS) -v -count=1 -parallel=$(E2E_STANDALONE_PARALLEL) -timeout 20m --tags=e2e,standalone ./pkg/e2e .PHONY: build-and-e2e-compose build-and-e2e-compose: build e2e-compose ## Compile the compose cli-plugin and run end to end local tests in plugin mode. Set E2E_TEST=TestName to run a single test diff --git a/pkg/e2e/bridge_test.go b/pkg/e2e/bridge_test.go index 7212bcaf2c..19f8eec478 100644 --- a/pkg/e2e/bridge_test.go +++ b/pkg/e2e/bridge_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/build_test.go b/pkg/e2e/build_test.go index 25fd08b4fd..1b58c074ae 100644 --- a/pkg/e2e/build_test.go +++ b/pkg/e2e/build_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/cancel_test.go b/pkg/e2e/cancel_test.go index 64f3ff609a..4802d64abb 100644 --- a/pkg/e2e/cancel_test.go +++ b/pkg/e2e/cancel_test.go @@ -1,4 +1,4 @@ -//go:build !windows +//go:build e2e && !windows /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/cascade_test.go b/pkg/e2e/cascade_test.go index a201acc2b3..f9f72ca1ef 100644 --- a/pkg/e2e/cascade_test.go +++ b/pkg/e2e/cascade_test.go @@ -1,4 +1,4 @@ -//go:build !windows +//go:build e2e && !windows /* Copyright 2022 Docker Compose CLI authors diff --git a/pkg/e2e/commit_test.go b/pkg/e2e/commit_test.go index 7298b6e798..c0e3217ac5 100644 --- a/pkg/e2e/commit_test.go +++ b/pkg/e2e/commit_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2023 Docker Compose CLI authors diff --git a/pkg/e2e/compose_environment_test.go b/pkg/e2e/compose_environment_test.go index 36fa855042..447104c963 100644 --- a/pkg/e2e/compose_environment_test.go +++ b/pkg/e2e/compose_environment_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/compose_exec_test.go b/pkg/e2e/compose_exec_test.go index 9e58d56684..b5cf163da9 100644 --- a/pkg/e2e/compose_exec_test.go +++ b/pkg/e2e/compose_exec_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/compose_run_build_once_test.go b/pkg/e2e/compose_run_build_once_test.go index 31b124665c..608adfe127 100644 --- a/pkg/e2e/compose_run_build_once_test.go +++ b/pkg/e2e/compose_run_build_once_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/compose_run_test.go b/pkg/e2e/compose_run_test.go index 3a80fdc86b..31feafe504 100644 --- a/pkg/e2e/compose_run_test.go +++ b/pkg/e2e/compose_run_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/compose_test.go b/pkg/e2e/compose_test.go index f0ff1da070..59d6cdd481 100644 --- a/pkg/e2e/compose_test.go +++ b/pkg/e2e/compose_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/compose_up_test.go b/pkg/e2e/compose_up_test.go index 35296d8f2c..66e8837a02 100644 --- a/pkg/e2e/compose_up_test.go +++ b/pkg/e2e/compose_up_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/config_test.go b/pkg/e2e/config_test.go index 585ee7419f..0be97c28eb 100644 --- a/pkg/e2e/config_test.go +++ b/pkg/e2e/config_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/configs_test.go b/pkg/e2e/configs_test.go index 899c5168ff..05b2c99bf6 100644 --- a/pkg/e2e/configs_test.go +++ b/pkg/e2e/configs_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/container_name_test.go b/pkg/e2e/container_name_test.go index 79332ab6ac..2f0fac7900 100644 --- a/pkg/e2e/container_name_test.go +++ b/pkg/e2e/container_name_test.go @@ -1,4 +1,4 @@ -//go:build !windows +//go:build e2e && !windows /* Copyright 2022 Docker Compose CLI authors diff --git a/pkg/e2e/cp_test.go b/pkg/e2e/cp_test.go index e9ea7691ad..5847af4e96 100644 --- a/pkg/e2e/cp_test.go +++ b/pkg/e2e/cp_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/env_file_test.go b/pkg/e2e/env_file_test.go index 5a5a964306..c7ae466dcb 100644 --- a/pkg/e2e/env_file_test.go +++ b/pkg/e2e/env_file_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/events_test.go b/pkg/e2e/events_test.go index 1c9b19334a..ef20d7264c 100644 --- a/pkg/e2e/events_test.go +++ b/pkg/e2e/events_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/exec_test.go b/pkg/e2e/exec_test.go index 1f8d1018c0..d5e70087f4 100644 --- a/pkg/e2e/exec_test.go +++ b/pkg/e2e/exec_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2023 Docker Compose CLI authors diff --git a/pkg/e2e/export_test.go b/pkg/e2e/export_test.go index 5cceb693a1..1244488006 100644 --- a/pkg/e2e/export_test.go +++ b/pkg/e2e/export_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2023 Docker Compose CLI authors diff --git a/pkg/e2e/expose_test.go b/pkg/e2e/expose_test.go index f7e7d3c2f4..0fb7d4d15d 100644 --- a/pkg/e2e/expose_test.go +++ b/pkg/e2e/expose_test.go @@ -1,4 +1,4 @@ -//go:build !windows +//go:build e2e && !windows /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/healthcheck_test.go b/pkg/e2e/healthcheck_test.go index 2cb42fd54a..b25376f9cc 100644 --- a/pkg/e2e/healthcheck_test.go +++ b/pkg/e2e/healthcheck_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2023 Docker Compose CLI authors diff --git a/pkg/e2e/hooks_test.go b/pkg/e2e/hooks_test.go index 8d44de8380..e7db829f33 100644 --- a/pkg/e2e/hooks_test.go +++ b/pkg/e2e/hooks_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2023 Docker Compose CLI authors diff --git a/pkg/e2e/image_identity_corner_test.go b/pkg/e2e/image_identity_corner_test.go index 810304219a..4f2d3154ff 100644 --- a/pkg/e2e/image_identity_corner_test.go +++ b/pkg/e2e/image_identity_corner_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2026 Docker Compose CLI authors diff --git a/pkg/e2e/image_identity_test.go b/pkg/e2e/image_identity_test.go index dd1a9b01f9..b2e881c15f 100644 --- a/pkg/e2e/image_identity_test.go +++ b/pkg/e2e/image_identity_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/images_test.go b/pkg/e2e/images_test.go index 8511d7ff85..5ffdf3a109 100644 --- a/pkg/e2e/images_test.go +++ b/pkg/e2e/images_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2026 Docker Compose CLI authors diff --git a/pkg/e2e/ipc_test.go b/pkg/e2e/ipc_test.go index 010854b60e..63dcddb955 100644 --- a/pkg/e2e/ipc_test.go +++ b/pkg/e2e/ipc_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/logs_test.go b/pkg/e2e/logs_test.go index afc2e08908..493385dae8 100644 --- a/pkg/e2e/logs_test.go +++ b/pkg/e2e/logs_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/main_test.go b/pkg/e2e/main_test.go index 415987bc71..9a710c7a9c 100644 --- a/pkg/e2e/main_test.go +++ b/pkg/e2e/main_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/model_test.go b/pkg/e2e/model_test.go index a9e6d3d6fd..baeb6c3d24 100644 --- a/pkg/e2e/model_test.go +++ b/pkg/e2e/model_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/multiplatform_test.go b/pkg/e2e/multiplatform_test.go index 651c51519b..2590a43408 100644 --- a/pkg/e2e/multiplatform_test.go +++ b/pkg/e2e/multiplatform_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2026 Docker Compose CLI authors diff --git a/pkg/e2e/networks_test.go b/pkg/e2e/networks_test.go index 438e31eb28..462ccb35d7 100644 --- a/pkg/e2e/networks_test.go +++ b/pkg/e2e/networks_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/noDeps_test.go b/pkg/e2e/noDeps_test.go index deacbf023b..f1ad0be2c9 100644 --- a/pkg/e2e/noDeps_test.go +++ b/pkg/e2e/noDeps_test.go @@ -1,4 +1,4 @@ -//go:build !windows +//go:build e2e && !windows /* Copyright 2022 Docker Compose CLI authors diff --git a/pkg/e2e/orphans_test.go b/pkg/e2e/orphans_test.go index 0e12a494a1..77eff1562c 100644 --- a/pkg/e2e/orphans_test.go +++ b/pkg/e2e/orphans_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/pause_test.go b/pkg/e2e/pause_test.go index d8b037c26c..0fa4489138 100644 --- a/pkg/e2e/pause_test.go +++ b/pkg/e2e/pause_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/profiles_test.go b/pkg/e2e/profiles_test.go index 6c1256a05f..0a2883aa84 100644 --- a/pkg/e2e/profiles_test.go +++ b/pkg/e2e/profiles_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/providers_test.go b/pkg/e2e/providers_test.go index 91b0ab0450..0b8031c3f4 100644 --- a/pkg/e2e/providers_test.go +++ b/pkg/e2e/providers_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/ps_test.go b/pkg/e2e/ps_test.go index 8ea47f7463..2aae0a53ae 100644 --- a/pkg/e2e/ps_test.go +++ b/pkg/e2e/ps_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/publish_test.go b/pkg/e2e/publish_test.go index e8c46c7d0a..902c542215 100644 --- a/pkg/e2e/publish_test.go +++ b/pkg/e2e/publish_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/pull_test.go b/pkg/e2e/pull_test.go index 979b08de42..906fff4f67 100644 --- a/pkg/e2e/pull_test.go +++ b/pkg/e2e/pull_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/recreate_no_deps_test.go b/pkg/e2e/recreate_no_deps_test.go index 8ba94b74eb..e9a5b0267c 100644 --- a/pkg/e2e/recreate_no_deps_test.go +++ b/pkg/e2e/recreate_no_deps_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2022 Docker Compose CLI authors diff --git a/pkg/e2e/restart_test.go b/pkg/e2e/restart_test.go index 21746e0dce..6f0e316b6a 100644 --- a/pkg/e2e/restart_test.go +++ b/pkg/e2e/restart_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/scale_test.go b/pkg/e2e/scale_test.go index 92e135075e..9184d03a49 100644 --- a/pkg/e2e/scale_test.go +++ b/pkg/e2e/scale_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/secrets_test.go b/pkg/e2e/secrets_test.go index 3147c3765b..78ead037d7 100644 --- a/pkg/e2e/secrets_test.go +++ b/pkg/e2e/secrets_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/start_stop_test.go b/pkg/e2e/start_stop_test.go index bad7fdb4a2..5bf1f3e589 100644 --- a/pkg/e2e/start_stop_test.go +++ b/pkg/e2e/start_stop_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/testdata_test.go b/pkg/e2e/testdata_test.go index 780fa27827..b0e43b45d7 100644 --- a/pkg/e2e/testdata_test.go +++ b/pkg/e2e/testdata_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/up_test.go b/pkg/e2e/up_test.go index c4d0856a14..01c11b7b93 100644 --- a/pkg/e2e/up_test.go +++ b/pkg/e2e/up_test.go @@ -1,4 +1,4 @@ -//go:build !windows +//go:build e2e && !windows /* Copyright 2022 Docker Compose CLI authors diff --git a/pkg/e2e/volumes_test.go b/pkg/e2e/volumes_test.go index 0407f016a3..1827d9fbba 100644 --- a/pkg/e2e/volumes_test.go +++ b/pkg/e2e/volumes_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/wait_test.go b/pkg/e2e/wait_test.go index 23a80020d1..b8fb8d86d7 100644 --- a/pkg/e2e/wait_test.go +++ b/pkg/e2e/wait_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2020 Docker Compose CLI authors diff --git a/pkg/e2e/watch_test.go b/pkg/e2e/watch_test.go index 225d7fa065..7267918505 100644 --- a/pkg/e2e/watch_test.go +++ b/pkg/e2e/watch_test.go @@ -1,3 +1,5 @@ +//go:build e2e + /* Copyright 2023 Docker Compose CLI authors