Skip to content

Commit f753168

Browse files
committed
e2e: add regression test for issue #1835
1 parent e8c4c4d commit f753168

File tree

2 files changed

+59
-1
lines changed

2 files changed

+59
-1
lines changed

e2e/tests/config/config.go

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,11 @@ package config
33
import (
44
"bytes"
55
"fmt"
6-
"github.com/loft-sh/devspace/pkg/devspace/config/loader/variable"
76
"os"
87
"path/filepath"
98

9+
"github.com/loft-sh/devspace/pkg/devspace/config/loader/variable"
10+
1011
"github.com/loft-sh/devspace/cmd"
1112
"github.com/loft-sh/devspace/cmd/flags"
1213
"github.com/loft-sh/devspace/pkg/devspace/config/versions/latest"
@@ -1907,4 +1908,33 @@ var _ = DevSpaceDescribe("config", func() {
19071908
gomega.Expect(deployment1.Kubectl).To(gomega.BeNil())
19081909
gomega.Expect(*deployment1.Helm.ComponentChart).To(gomega.BeTrue())
19091910
})
1911+
1912+
// regression test for issue: https://github.com/loft-sh/devspace/issues/1835
1913+
ginkgo.It("should load config with var in patch", func() {
1914+
tempDir, err := framework.CopyToTempDir("tests/config/testdata/profile-patches")
1915+
framework.ExpectNoError(err)
1916+
defer framework.CleanupTempDir(initialDir, tempDir)
1917+
1918+
config, _, err := framework.LoadConfigWithOptions(f, filepath.Join(tempDir, "path-variable.yaml"),
1919+
&loader.ConfigOptions{Profiles: []string{"demo"}})
1920+
framework.ExpectNoError(err)
1921+
1922+
framework.ExpectEqual(len(config.Config().Deployments), 1)
1923+
1924+
deployment := config.Config().Deployments[0]
1925+
framework.ExpectEqual(deployment.Name, "test-me-server")
1926+
1927+
values, ok := deployment.Helm.Values["containers"].([]interface{})
1928+
gomega.Expect(ok).To(gomega.BeTrue())
1929+
gomega.Expect(values).NotTo(gomega.BeEmpty())
1930+
1931+
v, ok := values[0].(map[interface{}]interface{})
1932+
gomega.Expect(ok).To(gomega.BeTrue())
1933+
gomega.Expect(v).NotTo(gomega.BeNil())
1934+
1935+
framework.ExpectEqual(v["name"], "replace-0")
1936+
1937+
gomega.Expect(deployment.Kubectl).To(gomega.BeNil())
1938+
gomega.Expect(*deployment.Helm.ComponentChart).To(gomega.BeTrue())
1939+
})
19101940
})
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
version: v1beta11
2+
vars:
3+
- name: IMAGE
4+
value: john/devbackend
5+
- name: PREFIX
6+
value: test-me
7+
deployments:
8+
- name: ${PREFIX}-server
9+
helm:
10+
componentChart: true
11+
values:
12+
containers:
13+
- name: container-0
14+
image: ${IMAGE}
15+
dev:
16+
replacePods:
17+
- imageSelector: ${IMAGE}
18+
replaceImage: ubuntu:18.04
19+
patches:
20+
- op: add
21+
path: spec.containers[0].command
22+
value: ["sleep"]
23+
profiles:
24+
- name: demo
25+
patches:
26+
- op: replace
27+
path: deployments.name=${PREFIX}-server.helm.values.containers[0].name
28+
value: replace-0

0 commit comments

Comments
 (0)