Skip to content

Commit

Permalink
test: lagoon-env secrets
Browse files Browse the repository at this point in the history
  • Loading branch information
shreddedbacon committed Jan 16, 2025
1 parent adf234c commit e82b72b
Show file tree
Hide file tree
Showing 2 changed files with 216 additions and 1 deletion.
20 changes: 19 additions & 1 deletion test/e2e/e2e_suite.go
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,10 @@ var _ = Describe("controller", Ordered, func() {
// remove the example namespace
cmd = exec.Command("kubectl", "delete", "ns", "example-project-main")
_, _ = utils.Run(cmd)

// remove the example namespace
cmd = exec.Command("kubectl", "delete", "ns", "example-project-develop")
_, _ = utils.Run(cmd)
})

// comment to prevent cleaning up controller namespace and local services
Expand All @@ -68,6 +72,10 @@ var _ = Describe("controller", Ordered, func() {
cmd := exec.Command("kubectl", "delete", "ns", "example-project-main")
_, _ = utils.Run(cmd)

// remove the example namespace
cmd = exec.Command("kubectl", "delete", "ns", "example-project-develop")
_, _ = utils.Run(cmd)

By("removing manager namespace")
cmd = exec.Command("kubectl", "delete", "ns", namespace)
_, _ = utils.Run(cmd)
Expand Down Expand Up @@ -139,7 +147,7 @@ var _ = Describe("controller", Ordered, func() {

time.Sleep(30 * time.Second)

By("creating a basic deployment")
By("creating first basic deployment")
cmd = exec.Command(
"kubectl",
"apply",
Expand All @@ -149,6 +157,16 @@ var _ = Describe("controller", Ordered, func() {
_, err = utils.Run(cmd)
ExpectWithOffset(1, err).NotTo(HaveOccurred())

By("creating second basic deployment")
cmd = exec.Command(
"kubectl",
"apply",
"-f",
"test/e2e/testdata/example-env-2.yaml",
)
_, err = utils.Run(cmd)
ExpectWithOffset(1, err).NotTo(HaveOccurred())

By("wait for storage calculator to run")
verifyStorageCalculatorRuns := func() error {
cmd = exec.Command("kubectl", "logs",
Expand Down
197 changes: 197 additions & 0 deletions test/e2e/testdata/example-env-2.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,197 @@
apiVersion: v1
kind: Namespace
metadata:
name: example-project-develop
labels:
lagoon.sh/environmentType: production
lagoon.sh/storageCalculatorEnabled: 'true'
lagoon.sh/environmentId: '123'
lagoon.sh/environment: 'develop'
lagoon.sh/project: example-project
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
annotations:
lagoon.sh/branch: develop
lagoon.sh/version: v2.7.x
creationTimestamp: null
labels:
app.kubernetes.io/instance: basic
app.kubernetes.io/managed-by: build-deploy-tool
app.kubernetes.io/name: basic-persistent
lagoon.sh/buildType: branch
lagoon.sh/environment: develop
lagoon.sh/environmentType: production
lagoon.sh/project: example-project
lagoon.sh/service: basic
lagoon.sh/service-type: basic-persistent
lagoon.sh/template: basic-persistent-0.1.0
name: basic-data
namespace: example-project-develop
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100Mi
status: {}
---
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
lagoon.sh/branch: develop
lagoon.sh/version: v2.7.x
creationTimestamp: null
labels:
app.kubernetes.io/instance: basic
app.kubernetes.io/managed-by: build-deploy-tool
app.kubernetes.io/name: basic-persistent
lagoon.sh/buildType: branch
lagoon.sh/environment: develop
lagoon.sh/environmentType: production
lagoon.sh/project: example-project
lagoon.sh/service: basic
lagoon.sh/service-type: basic-persistent
lagoon.sh/template: basic-persistent-0.1.0
name: basic
namespace: example-project-develop
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/instance: basic
app.kubernetes.io/name: basic-persistent
strategy: {}
template:
metadata:
annotations:
lagoon.sh/branch: develop
lagoon.sh/configMapSha: abcdefg1234567890
lagoon.sh/version: v2.7.x
creationTimestamp: null
labels:
app.kubernetes.io/instance: basic
app.kubernetes.io/managed-by: build-deploy-tool
app.kubernetes.io/name: basic-persistent
lagoon.sh/buildType: branch
lagoon.sh/environment: develop
lagoon.sh/environmentType: production
lagoon.sh/project: example-project
lagoon.sh/service: basic
lagoon.sh/service-type: basic-persistent
lagoon.sh/template: basic-persistent-0.1.0
spec:
containers:
- env:
- name: LAGOON_GIT_SHA
value: abcdefg123456
- name: CRONJOBS
- name: SERVICE_NAME
value: basic
image: uselagoon/nginx:latest
imagePullPolicy: IfNotPresent
livenessProbe:
initialDelaySeconds: 60
tcpSocket:
port: 8080
timeoutSeconds: 10
name: basic
ports:
- containerPort: 8080
name: tcp-8080
protocol: TCP
readinessProbe:
initialDelaySeconds: 1
tcpSocket:
port: 8080
timeoutSeconds: 1
resources:
requests:
cpu: 10m
memory: 10Mi
securityContext: {}
volumeMounts:
- mountPath: /var/lib/basic
name: basic-data
enableServiceLinks: false
volumes:
- name: basic-data
persistentVolumeClaim:
claimName: basic-data
status: {}
---
apiVersion: v1
kind: Service
metadata:
annotations:
lagoon.sh/branch: develop
lagoon.sh/version: v2.7.x
creationTimestamp: null
labels:
app.kubernetes.io/instance: basic
app.kubernetes.io/managed-by: build-deploy-tool
app.kubernetes.io/name: basic-persistent
lagoon.sh/buildType: branch
lagoon.sh/environment: develop
lagoon.sh/environmentType: production
lagoon.sh/project: example-project
lagoon.sh/service: basic
lagoon.sh/service-type: basic-persistent
lagoon.sh/template: basic-persistent-0.1.0
name: basic
namespace: example-project-develop
spec:
ports:
- name: tcp-8080
port: 8080
protocol: TCP
targetPort: tcp-8080
selector:
app.kubernetes.io/instance: basic
app.kubernetes.io/name: basic-persistent
status:
loadBalancer: {}
---
apiVersion: v1
kind: Secret
metadata:
annotations:
lagoon.sh/branch: environment-name
creationTimestamp: null
labels:
app.kubernetes.io/instance: lagoon-env
app.kubernetes.io/managed-by: build-deploy-tool
app.kubernetes.io/name: lagoon-env
lagoon.sh/buildType: branch
lagoon.sh/environment: name
lagoon.sh/environmentType: production
lagoon.sh/project: example-project
lagoon.sh/template: lagoon-env-0.1.0
name: lagoon-platform-env
namespace: example-project-develop
stringData:
A_SPECIAL_VARIABLE: myspecialvariable
---
apiVersion: v1
kind: Secret
metadata:
annotations:
lagoon.sh/branch: environment-name
creationTimestamp: null
labels:
app.kubernetes.io/instance: lagoon-env
app.kubernetes.io/managed-by: build-deploy-tool
app.kubernetes.io/name: lagoon-env
lagoon.sh/buildType: branch
lagoon.sh/environment: name
lagoon.sh/environmentType: production
lagoon.sh/project: example-project
lagoon.sh/template: lagoon-env-0.1.0
name: lagoon-env
namespace: example-project-develop
stringData:
MY_SPECIAL_VARIABLE: myspecialvariable
MY_SPECIAL_VARIABLE1: myspecialvariable1
MY_SPECIAL_VARIABLE2: myspecialvariable2

0 comments on commit e82b72b

Please sign in to comment.