suite: actions template | statefulset release: name: gitea-unittests namespace: testing templates: - templates/gitea/act_runner/statefulset.yaml - templates/gitea/act_runner/config-act-runner.yaml tests: - it: doesn't renders a StatefulSet by default template: templates/gitea/act_runner/statefulset.yaml asserts: - hasDocuments: count: 0 - it: renders a StatefulSet (with given existingSecret/existingSecretKey) template: templates/gitea/act_runner/statefulset.yaml set: actions: enabled: true existingSecret: "my-secret" existingSecretKey: "my-secret-key" asserts: - hasDocuments: count: 1 - containsDocument: kind: StatefulSet apiVersion: apps/v1 name: gitea-unittests-act-runner - equal: path: spec.template.spec.containers[0].env[3] value: name: GITEA_RUNNER_REGISTRATION_TOKEN valueFrom: secretKeyRef: name: "my-secret" key: "my-secret-key" - it: renders a StatefulSet (with secret reference defaults for enabled provisioning) template: templates/gitea/act_runner/statefulset.yaml set: actions: enabled: true provisioning: enabled: true asserts: - hasDocuments: count: 1 - containsDocument: kind: StatefulSet apiVersion: apps/v1 name: gitea-unittests-act-runner - equal: path: spec.template.spec.containers[0].env[3] value: name: GITEA_RUNNER_REGISTRATION_TOKEN valueFrom: secretKeyRef: name: "gitea-unittests-actions-token" key: "token" - it: renders a StatefulSet (that tracks changes of the runner configuration as annotation) template: templates/gitea/act_runner/statefulset.yaml set: image.tag: "1.22.3" # lock image tag to prevent test failures on future Gitea upgrades actions: enabled: true existingSecret: "my-secret" existingSecretKey: "my-secret-key" asserts: - hasDocuments: count: 1 - containsDocument: kind: StatefulSet apiVersion: apps/v1 name: gitea-unittests-act-runner - equal: path: spec.template.metadata.annotations["checksum/config"] value: "2a2200e80fc29111d18b675789c265cd3d5f917754850f946f1ce3c55dcd65f8" - it: renders a StatefulSet (with correct GITEA_INSTANCE_URL env with default act-runner specific LOCAL_ROOT_URL) template: templates/gitea/act_runner/statefulset.yaml set: actions: enabled: true existingSecret: "my-secret" existingSecretKey: "my-secret-key" asserts: - hasDocuments: count: 1 - containsDocument: kind: StatefulSet apiVersion: apps/v1 name: gitea-unittests-act-runner - equal: path: spec.template.spec.containers[0].env[4] value: name: GITEA_INSTANCE_URL value: "http://gitea-unittests-http:3000" - it: renders a StatefulSet (with correct GITEA_INSTANCE_URL env from customized LOCAL_ROOT_URL) template: templates/gitea/act_runner/statefulset.yaml set: gitea.config.server.LOCAL_ROOT_URL: "http://git.example.com" actions: enabled: true existingSecret: "my-secret" existingSecretKey: "my-secret-key" asserts: - hasDocuments: count: 1 - containsDocument: kind: StatefulSet apiVersion: apps/v1 name: gitea-unittests-act-runner - equal: path: spec.template.spec.containers[0].env[4] value: name: GITEA_INSTANCE_URL value: "http://git.example.com" - it: allows adding custom environment variables to the docker-in-docker container template: templates/gitea/act_runner/statefulset.yaml set: actions: enabled: true statefulset: dind: extraEnvs: - name: "CUSTOM_ENV_NAME" value: "custom env value" asserts: - equal: path: spec.template.spec.containers[1].env[3] value: name: "CUSTOM_ENV_NAME" value: "custom env value" - it: should mount an extra volume in the act runner container template: templates/gitea/act_runner/statefulset.yaml set: actions: enabled: true statefulset: extraVolumes: - name: my-act-runner-volume emptyDir: {} actRunner: extraVolumeMounts: - mountPath: /mnt name: my-act-runner-volume asserts: - hasDocuments: count: 1 - containsDocument: kind: StatefulSet apiVersion: apps/v1 name: gitea-unittests-act-runner - contains: any: true path: spec.template.spec.containers[0].volumeMounts content: mountPath: /mnt name: my-act-runner-volume - it: should mount an extra volume in the docker-in-docker container template: templates/gitea/act_runner/statefulset.yaml set: actions: enabled: true statefulset: extraVolumes: - name: my-dind-volume emptyDir: {} dind: extraVolumeMounts: - mountPath: /mnt name: my-dind-volume asserts: - hasDocuments: count: 1 - containsDocument: kind: StatefulSet apiVersion: apps/v1 name: gitea-unittests-act-runner - contains: any: true path: spec.template.spec.containers[1].volumeMounts content: mountPath: /mnt name: my-dind-volume