diff --git a/src/test/e2e/04_create_templating_test.go b/src/test/e2e/04_create_templating_test.go index d69839547b..a93f23027d 100644 --- a/src/test/e2e/04_create_templating_test.go +++ b/src/test/e2e/04_create_templating_test.go @@ -21,15 +21,14 @@ func TestCreateTemplating(t *testing.T) { decompressPath := filepath.Join(tmpdir, ".package-decompressed") sbomPath := filepath.Join(tmpdir, ".sbom-location") - pkgName := fmt.Sprintf("zarf-package-variables-%s.tar.zst", e2e.Arch) + pkgName := fmt.Sprintf("zarf-package-templating-%s.tar.zst", e2e.Arch) // Test that not specifying a package variable results in an error - _, stdErr, _ := e2e.Zarf(t, "package", "create", "examples/variables", "--confirm") - expectedOutString := "variable 'NGINX_VERSION' must be '--set' when using the '--confirm' flag" - require.Contains(t, stdErr, "", expectedOutString) + _, _, err := e2e.Zarf(t, "package", "create", "src/test/packages/04-templating", "--confirm") + require.Error(t, err) // Test a simple package variable example with `--set` (will fail to pull an image if this is not set correctly) - stdOut, stdErr, err := e2e.Zarf(t, "package", "create", "examples/variables", "--set", "NGINX_VERSION=1.23.3", "--confirm") + stdOut, stdErr, err := e2e.Zarf(t, "package", "create", "src/test/packages/04-templating", "--set", "PODINFO_VERSION=6.4.0", "--confirm") require.NoError(t, err, stdOut, stdErr) stdOut, stdErr, err = e2e.Zarf(t, "t", "archiver", "decompress", pkgName, decompressPath, "--unarchive-all") @@ -38,7 +37,7 @@ func TestCreateTemplating(t *testing.T) { // Check that the constant in the zarf.yaml is replaced correctly builtConfig, err := os.ReadFile(decompressPath + "/zarf.yaml") require.NoError(t, err) - require.Contains(t, string(builtConfig), "name: NGINX_VERSION\n value: 1.23.3") + require.Contains(t, string(builtConfig), "name: PODINFO_VERSION\n value: 6.4.0") // Test that files and file folders template and handle SBOMs correctly stdOut, stdErr, err = e2e.Zarf(t, "package", "create", "src/test/packages/04-file-folders-templating-sbom/", "--sbom-out", sbomPath, "--confirm") diff --git a/src/test/e2e/13_find_images_test.go b/src/test/e2e/13_find_images_test.go index a161ed15f6..086b54c09d 100644 --- a/src/test/e2e/13_find_images_test.go +++ b/src/test/e2e/13_find_images_test.go @@ -48,20 +48,22 @@ func TestFindImages(t *testing.T) { t.Run("zarf dev find-images with helm or manifest vars", func(t *testing.T) { t.Parallel() - registry := "coolregistry.gov" + registry := "zarf.dev" agentTag := "test" - stdOut, _, err := e2e.Zarf(t, "prepare", "find-images", ".", "--registry-url", registry, "--create-set", fmt.Sprintf("agent_image_tag=%s", agentTag)) + stdOut, _, err := e2e.Zarf(t, "dev", "find-images", ".", "--registry-url", registry, "--create-set", fmt.Sprintf("agent_image_tag=%s", agentTag), "--skip-cosign") + require.NoError(t, err) internalRegistryImage := fmt.Sprintf("%s/%s:%s", registry, "zarf-dev/zarf/agent", agentTag) - require.Contains(t, stdOut, internalRegistryImage, "registry image should be found with registry url") - require.Contains(t, stdOut, "busybox:latest", "Busybox image should be found as long as helm chart doesn't error") + require.Contains(t, stdOut, internalRegistryImage) + // busybox image is in git init package + require.Contains(t, stdOut, "busybox:latest") - path := filepath.Join("src", "test", "packages", "00-find-images-with-vars") - stdOut, _, err = e2e.Zarf(t, "prepare", "find-images", path, "--deploy-set", "BUSYBOX_IMAGE=busybox:earliest") + path := filepath.Join("src", "test", "packages", "13-find-images-with-vars") + stdOut, _, err = e2e.Zarf(t, "dev", "find-images", path, "--deploy-set", "PODINFO_IMAGE=zarf.dev/podinfo:latest", "--skip-cosign") require.NoError(t, err) - require.Contains(t, stdOut, "nginx:latest", "Manifests aren't interpreting vars") - require.Contains(t, stdOut, "busybox:earliest", "Values files aren't interpreting vars") + require.Contains(t, stdOut, "ghcr.io/zarf-dev/zarf/agent:v0.36.1") + require.Contains(t, stdOut, "zarf.dev/podinfo:latest") }) t.Run("zarf test find images --why w/ helm chart success", func(t *testing.T) { diff --git a/src/test/packages/00-find-images-with-vars/values.yaml b/src/test/packages/00-find-images-with-vars/values.yaml deleted file mode 100644 index da10dacc6b..0000000000 --- a/src/test/packages/00-find-images-with-vars/values.yaml +++ /dev/null @@ -1 +0,0 @@ -busybox: ###ZARF_VAR_BUSYBOX_IMAGE### diff --git a/src/test/packages/04-templating/zarf.yaml b/src/test/packages/04-templating/zarf.yaml new file mode 100644 index 0000000000..bcc8e5cc35 --- /dev/null +++ b/src/test/packages/04-templating/zarf.yaml @@ -0,0 +1,14 @@ +kind: ZarfPackageConfig +metadata: + name: templating + +constants: + - name: PODINFO_VERSION + value: "###ZARF_PKG_TMPL_PODINFO_VERSION###" + pattern: "^[\\w\\-\\.]+$" + +components: + - name: variables-with-podinfo + images: + # This sets the nginx image tag to the same PKG_TMPL used for the constant above to keep the zarf.yaml and nginx-deployment.yaml in sync + - "ghcr.io/stefanprodan/podinfo:###ZARF_PKG_TMPL_PODINFO_VERSION###" diff --git a/src/test/packages/00-find-images-with-vars/deployment.yaml b/src/test/packages/13-find-images-with-vars/deployment.yaml similarity index 86% rename from src/test/packages/00-find-images-with-vars/deployment.yaml rename to src/test/packages/13-find-images-with-vars/deployment.yaml index 8d4b344dae..c0f766fd9b 100644 --- a/src/test/packages/00-find-images-with-vars/deployment.yaml +++ b/src/test/packages/13-find-images-with-vars/deployment.yaml @@ -16,4 +16,4 @@ spec: spec: containers: - name: server - image: "###ZARF_CONST_SAMPLE_IMAGE###" + image: "###ZARF_CONST_AGENT_IMAGE###" diff --git a/src/test/packages/00-find-images-with-vars/simple-helm/Chart.yaml b/src/test/packages/13-find-images-with-vars/simple-helm/Chart.yaml similarity index 100% rename from src/test/packages/00-find-images-with-vars/simple-helm/Chart.yaml rename to src/test/packages/13-find-images-with-vars/simple-helm/Chart.yaml diff --git a/src/test/packages/00-find-images-with-vars/simple-helm/templates/deployment.yaml b/src/test/packages/13-find-images-with-vars/simple-helm/templates/deployment.yaml similarity index 82% rename from src/test/packages/00-find-images-with-vars/simple-helm/templates/deployment.yaml rename to src/test/packages/13-find-images-with-vars/simple-helm/templates/deployment.yaml index 335cb8afbb..c5bb598e7d 100644 --- a/src/test/packages/00-find-images-with-vars/simple-helm/templates/deployment.yaml +++ b/src/test/packages/13-find-images-with-vars/simple-helm/templates/deployment.yaml @@ -15,5 +15,5 @@ spec: app: simple-deployment spec: containers: - - name: busybox - image: {{.Values.busybox}} + - name: podinfo + image: {{.Values.podinfo}} diff --git a/src/test/packages/13-find-images-with-vars/values.yaml b/src/test/packages/13-find-images-with-vars/values.yaml new file mode 100644 index 0000000000..525c3d3bd8 --- /dev/null +++ b/src/test/packages/13-find-images-with-vars/values.yaml @@ -0,0 +1 @@ +podinfo: ###ZARF_VAR_PODINFO_IMAGE### diff --git a/src/test/packages/00-find-images-with-vars/zarf.yaml b/src/test/packages/13-find-images-with-vars/zarf.yaml similarity index 77% rename from src/test/packages/00-find-images-with-vars/zarf.yaml rename to src/test/packages/13-find-images-with-vars/zarf.yaml index b58911d993..bc234638c6 100644 --- a/src/test/packages/00-find-images-with-vars/zarf.yaml +++ b/src/test/packages/13-find-images-with-vars/zarf.yaml @@ -4,12 +4,12 @@ metadata: description: Simple zarf package with variables variables: - - name: BUSYBOX_IMAGE - default: "busybox:latest" + - name: PODINFO_IMAGE + default: "ghcr.io/stefanprodan/podinfo:latest" constants: - - name: SAMPLE_IMAGE - value: "nginx:latest" + - name: AGENT_IMAGE + value: "ghcr.io/zarf-dev/zarf/agent:v0.36.1" components: - name: simple-var diff --git a/src/test/packages/28-helm-no-wait/never-ready.pod.yaml b/src/test/packages/28-helm-no-wait/never-ready.pod.yaml index 6fa1682d52..3ad9bd944e 100644 --- a/src/test/packages/28-helm-no-wait/never-ready.pod.yaml +++ b/src/test/packages/28-helm-no-wait/never-ready.pod.yaml @@ -4,8 +4,8 @@ metadata: name: never-ready-zarf-wait-test spec: containers: - - name: alpine - image: alpine:latest + - name: podinfo + image: ghcr.io/stefanprodan/podinfo:6.4.0 command: - "sleep" - "infinity" diff --git a/src/test/packages/28-helm-no-wait/zarf.yaml b/src/test/packages/28-helm-no-wait/zarf.yaml index 177fe6792a..7b8881f886 100644 --- a/src/test/packages/28-helm-no-wait/zarf.yaml +++ b/src/test/packages/28-helm-no-wait/zarf.yaml @@ -13,4 +13,4 @@ components: files: - never-ready.pod.yaml images: - - alpine:latest + - ghcr.io/stefanprodan/podinfo:6.4.0