Просмотр исходного кода

Fix v2 e2e build and chart bootstrap

Signed-off-by: Moritz Johner <beller.moritz@googlemail.com>
Moritz Johner 2 месяцев назад
Родитель
Сommit
fe0833279c
3 измененных файлов с 14 добавлено и 4 удалено
  1. 4 3
      e2e/Makefile
  2. 9 0
      e2e/makefile_test.go
  3. 1 1
      go.mod

+ 4 - 3
e2e/Makefile

@@ -66,7 +66,7 @@ test: start-kind e2e-image ## Run e2e tests against current kube context
 	kind load docker-image --name="$(KIND_CLUSTER_NAME)" $(IMAGE_NAME):$(VERSION)
 	kind load docker-image --name="$(KIND_CLUSTER_NAME)" $(OCI_IMAGE_NAME):$(VERSION)
 	kind load docker-image --name="$(KIND_CLUSTER_NAME)" $(E2E_IMAGE_NAME):$(VERSION)
-	KUBECTL_CONTEXT="$(KIND_CONTEXT)" ./run.sh
+	KUBECTL_CONTEXT="$(KIND_CONTEXT)" E2E_SKIP_HELM_DEPENDENCY_UPDATE="true" ./run.sh
 
 test.v2: start-kind e2e-image ## Run v2 e2e tests against current kube context
 	$(MAKE) -C ../ docker.build.controller.e2e \
@@ -84,7 +84,7 @@ test.v2: start-kind e2e-image ## Run v2 e2e tests against current kube context
 	kind load docker-image --name="$(KIND_CLUSTER_NAME)" $(OCI_IMAGE_NAME):$(VERSION)
 	kind load docker-image --name="$(KIND_CLUSTER_NAME)" $(E2E_IMAGE_NAME):$(VERSION)
 	kind load docker-image --name="$(KIND_CLUSTER_NAME)" ghcr.io/external-secrets/provider-kubernetes:$(VERSION)
-	KUBECTL_CONTEXT="$(KIND_CONTEXT)" GINKGO_LABELS="$(V2_GINKGO_LABELS)" E2E_PROVIDER_MODE="v2" TEST_SUITES="provider" ./run.sh
+	KUBECTL_CONTEXT="$(KIND_CONTEXT)" GINKGO_LABELS="$(V2_GINKGO_LABELS)" E2E_PROVIDER_MODE="v2" TEST_SUITES="provider" E2E_SKIP_HELM_DEPENDENCY_UPDATE="true" ./run.sh
 
 test.managed: e2e-image ## Run e2e tests against current kube context
 	$(MAKE) -C ../ docker.build \
@@ -104,7 +104,7 @@ test.managed: e2e-image ## Run e2e tests against current kube context
 	$(MAKE) -C ../ docker.push \
 		IMAGE_NAME=$(E2E_IMAGE_NAME) \
 		VERSION=$(VERSION)
-	./run.sh
+	E2E_SKIP_HELM_DEPENDENCY_UPDATE="true" ./run.sh
 
 
 e2e-bin: install-ginkgo
@@ -114,6 +114,7 @@ e2e-image: e2e-bin
 	-rm -rf ./k8s/deploy
 	mkdir -p k8s
 	$(MAKE) -C ../ helm.generate
+	helm dependency build ../deploy/charts/external-secrets
 	cp -r ../deploy ./k8s
 	docker build $(DOCKER_BUILD_ARGS) -t $(E2E_IMAGE_NAME):$(VERSION) -f Dockerfile ..
 

+ 9 - 0
e2e/makefile_test.go

@@ -28,12 +28,18 @@ func TestV2MakeTargetCanSkipKubernetesProviderBuild(t *testing.T) {
 	t.Parallel()
 
 	defaultDryRun := runMakeDryRun(t, "VERSION=test-version")
+	if !strings.Contains(defaultDryRun, "helm dependency build ../deploy/charts/external-secrets") {
+		t.Fatalf("expected default test.v2 dry-run to vendor helm chart dependencies before building the e2e image, output:\n%s", defaultDryRun)
+	}
 	if !strings.Contains(defaultDryRun, "docker.build.provider.kubernetes") {
 		t.Fatalf("expected default test.v2 dry-run to build the kubernetes provider image, output:\n%s", defaultDryRun)
 	}
 	if !strings.Contains(defaultDryRun, "ghcr.io/external-secrets/provider-kubernetes:test-version") {
 		t.Fatalf("expected default test.v2 dry-run to still load the kubernetes provider image, output:\n%s", defaultDryRun)
 	}
+	if !strings.Contains(defaultDryRun, `E2E_SKIP_HELM_DEPENDENCY_UPDATE="true"`) {
+		t.Fatalf("expected default test.v2 dry-run to skip helm dependency updates inside the e2e pod, output:\n%s", defaultDryRun)
+	}
 
 	skippedDryRun := runMakeDryRun(t, "VERSION=test-version", "SKIP_PROVIDER_KUBERNETES_BUILD=true")
 	if strings.Contains(skippedDryRun, "docker.build.provider.kubernetes") {
@@ -42,6 +48,9 @@ func TestV2MakeTargetCanSkipKubernetesProviderBuild(t *testing.T) {
 	if !strings.Contains(skippedDryRun, "ghcr.io/external-secrets/provider-kubernetes:test-version") {
 		t.Fatalf("expected skipped test.v2 dry-run to still load the kubernetes provider image, output:\n%s", skippedDryRun)
 	}
+	if !strings.Contains(skippedDryRun, `E2E_SKIP_HELM_DEPENDENCY_UPDATE="true"`) {
+		t.Fatalf("expected skipped test.v2 dry-run to skip helm dependency updates inside the e2e pod, output:\n%s", skippedDryRun)
+	}
 }
 
 func runMakeDryRun(t *testing.T, extraArgs ...string) string {

+ 1 - 1
go.mod

@@ -166,7 +166,7 @@ require (
 	github.com/external-secrets/external-secrets/providers/v1/dvls v0.0.0-00010101000000-000000000000
 	github.com/external-secrets/external-secrets/providers/v1/fake v0.0.0-00010101000000-000000000000
 	github.com/external-secrets/external-secrets/providers/v1/fortanix v0.0.0-00010101000000-000000000000
-	github.com/external-secrets/external-secrets/providers/v1/gcp v0.0.0-20251104073127-4d2c8fd13e10
+	github.com/external-secrets/external-secrets/providers/v1/gcp v0.0.0-20260412142106-5002a5731709
 	github.com/external-secrets/external-secrets/providers/v1/github v0.0.0-00010101000000-000000000000
 	github.com/external-secrets/external-secrets/providers/v1/gitlab v0.0.0-00010101000000-000000000000
 	github.com/external-secrets/external-secrets/providers/v1/ibm v0.0.0-00010101000000-000000000000