Skip to content

Commit

Permalink
Merge pull request #4946 from werf/test-e2e-add-complex-converge-test
Browse files Browse the repository at this point in the history
test(e2e): add complex "converge" test
  • Loading branch information
ilya-lesikov committed Sep 20, 2022
2 parents e035436 + 383d186 commit b089f2d
Show file tree
Hide file tree
Showing 27 changed files with 423 additions and 9 deletions.
10 changes: 10 additions & 0 deletions test/e2e/converge/_fixtures/complex/state0/.helm/Chart.lock
@@ -0,0 +1,10 @@
dependencies:
- name: hello
repository: oci://ghcr.io/werf
version: 0.1.0
- name: local-chart
repository: ""
version: 0.1.0
digest: sha256:fe76d5af7ce7fc3948deb95766ad10eee77d4866c385638934981d118afb316b
generated: "2022-09-19T16:13:01.337342528+03:00"

12 changes: 12 additions & 0 deletions test/e2e/converge/_fixtures/complex/state0/.helm/Chart.yaml
@@ -0,0 +1,12 @@
apiVersion: v2
name: werf-test-e2e-converge-complex
version: 0.1.0
dependencies:
- name: hello
version: 0.1.0
repository: oci://ghcr.io/werf
- name: local-chart
version: 0.1.0
export-values:
- parent: werf
child: werf
@@ -0,0 +1,3 @@
apiVersion: v2
name: local-chart
version: 0.1.0
@@ -0,0 +1,7 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: local-chart-config
data:
werfEnv: {{ .Values.werf.env }}
option: {{ .Values.option }}
@@ -0,0 +1,2 @@
app1:
secretOption: 1000a493a30a9787a7785a6226baefef32a8d54724f6504ef07202557d5cb4d61a7f11fef08d52f3d9e52003be6e492587ef
@@ -0,0 +1 @@
100052fb0fa1cc8ef1cb123be089cdb853cc153772691b8fb743d612a7b64d65614d4d8745250752564941227eb8d7161523
@@ -0,0 +1,3 @@
{{- define "app1Name" }}
{{- print "app1" }}
{{- end }}
@@ -0,0 +1,12 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: app1-config
annotations:
werf.io/weight: "-10"
data:
werfNamespace: {{ .Values.werf.namespace }}
werfEnv: {{ .Values.werf.env }}
option: {{ .Values.app1.option }}
secretOption: {{ .Values.app1.secretOption }}
secretConfig: {{ werf_secret_file "app1-secret-config.txt" }}
@@ -0,0 +1,24 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "app1Name" . }}
annotations:
sa.external-dependency.werf.io/resource: serviceaccount/default
spec:
selector:
matchLabels:
app: app1
template:
metadata:
labels:
app: app1
spec:
containers:
- name: app
image: {{ .Values.werf.image.app1 | quote }}
command:
- sh
- -ec
- |
echo app1 started
tail -f /dev/null
@@ -0,0 +1,25 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: app2
annotations:
werf.io/track-termination-mode: NonBlocking
werf.io/fail-mode: IgnoreAndContinueDeployProcess
spec:
selector:
matchLabels:
app: app2
template:
metadata:
labels:
app: app2
spec:
containers:
- name: app
image: {{ .Values.werf.image.app2 }}
command:
- sh
- -ec
- |
echo app2 started
false
@@ -0,0 +1,15 @@
apiVersion: batch/v1
kind: Job
metadata:
name: hook
annotations:
helm.sh/hook: pre-upgrade,pre-install
spec:
backoffLimit: 0
template:
spec:
containers:
- name: hook
image: ubuntu:22.04
command: ["echo", "hook started"]
restartPolicy: Never
5 changes: 5 additions & 0 deletions test/e2e/converge/_fixtures/complex/state0/.helm/values.yaml
@@ -0,0 +1,5 @@
app1:
option: wouldBeOverridden

local-chart:
option: optionValue
@@ -0,0 +1 @@
bc3458408a5687e60b9417adb84e4ad0
10 changes: 10 additions & 0 deletions test/e2e/converge/_fixtures/complex/state0/werf.yaml
@@ -0,0 +1,10 @@
project: werf-test-e2e-converge-complex
configVersion: 1

---
image: app1
from: ubuntu:22.04

---
image: app2
from: ubuntu:22.04
3 changes: 3 additions & 0 deletions test/e2e/converge/_fixtures/complex/state1/.helm/Chart.yaml
@@ -0,0 +1,3 @@
apiVersion: v2
name: werf-test-e2e-converge-complex
version: 0.1.0
@@ -0,0 +1,6 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: app1-config
data:
option2: {{ .Values.app1.option }}
@@ -0,0 +1,15 @@
apiVersion: batch/v1
kind: Job
metadata:
name: hook
annotations:
helm.sh/hook: pre-upgrade,pre-install
spec:
backoffLimit: 0
template:
spec:
containers:
- name: hook
image: ubuntu:22.04
command: ["echo", "hook started"]
restartPolicy: Never
2 changes: 2 additions & 0 deletions test/e2e/converge/_fixtures/complex/state1/werf.yaml
@@ -0,0 +1,2 @@
project: werf-test-e2e-converge-complex
configVersion: 1
3 changes: 3 additions & 0 deletions test/e2e/converge/_fixtures/complex/state2/.helm/Chart.yaml
@@ -0,0 +1,3 @@
apiVersion: v2
name: werf-test-e2e-converge-complex
version: 0.1.0
@@ -0,0 +1,24 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: app2
annotations:
werf.io/failures-allowed-per-replica: "0"
spec:
selector:
matchLabels:
app: app2
template:
metadata:
labels:
app: app2
spec:
containers:
- name: app
image: ubuntu:22.04
command:
- sh
- -ec
- |
echo app2 started
false
2 changes: 2 additions & 0 deletions test/e2e/converge/_fixtures/complex/state2/werf.yaml
@@ -0,0 +1,2 @@
project: werf-test-e2e-converge-complex
configVersion: 1
4 changes: 0 additions & 4 deletions test/e2e/converge/_fixtures/simple/state0/werf.yaml
@@ -1,6 +1,2 @@
project: werf-test-e2e-converge-simple
configVersion: 1

---
image: main
from: ubuntu:22.04
1 change: 1 addition & 0 deletions test/e2e/converge/common_test.go
Expand Up @@ -9,6 +9,7 @@ import (

func setupEnv() {
SuiteData.Stubs.SetEnv("WERF_REPO", strings.Join([]string{os.Getenv("WERF_TEST_K8S_DOCKER_REGISTRY"), SuiteData.ProjectName}, "/"))
SuiteData.Stubs.SetEnv("WERF_ENV", "test")

if util.GetBoolEnvironmentDefaultFalse("WERF_TEST_K8S_DOCKER_REGISTRY_INSECURE") {
SuiteData.Stubs.SetEnv("WERF_INSECURE_REGISTRY", "1")
Expand Down

0 comments on commit b089f2d

Please sign in to comment.