Skip to content
Snippets Groups Projects
Commit aa29268c authored by OZGCloud's avatar OZGCloud
Browse files

Merge branch 'master' into OZG-6747

parents 3d9815bb 3bf2ab85
No related branches found
No related tags found
No related merge requests found
Showing with 66 additions and 66 deletions
...@@ -53,7 +53,7 @@ tools { go 'go-1.22.0' } ...@@ -53,7 +53,7 @@ tools { go 'go-1.22.0' }
} }
} }
stage('Build Antragsraum-Proxy') { stage('Build antragraum-proxy') {
steps { steps {
script { script {
FAILED_STAGE=env.STAGE_NAME FAILED_STAGE=env.STAGE_NAME
...@@ -87,17 +87,17 @@ tools { go 'go-1.22.0' } ...@@ -87,17 +87,17 @@ tools { go 'go-1.22.0' }
script { script {
FAILED_STAGE=env.STAGE_NAME FAILED_STAGE=env.STAGE_NAME
sh "docker build -t docker.ozg-sh.de/antragsraum-proxy:${env.APP_VERSION} ." sh "docker build -t docker.ozg-sh.de/antragraum-proxy:${env.APP_VERSION} ."
IMAGE_TAG = generateImageTag() IMAGE_TAG = generateImageTag()
tagAndPushDockerImage('antragsraum-proxy', IMAGE_TAG) tagAndPushDockerImage('antragraum-proxy', IMAGE_TAG)
if (env.BRANCH_NAME == 'master') { if (env.BRANCH_NAME == 'master') {
tagAndPushDockerImage('antragsraum-proxy', 'snapshot-latest') tagAndPushDockerImage('antragraum-proxy', 'snapshot-latest')
} }
else if (env.BRANCH_NAME == 'release') { else if (env.BRANCH_NAME == 'release') {
tagAndPushDockerImage('antragsraum-proxy', 'latest') tagAndPushDockerImage('antragraum-proxy', 'latest')
} }
} }
} }
...@@ -131,7 +131,7 @@ tools { go 'go-1.22.0' } ...@@ -131,7 +131,7 @@ tools { go 'go-1.22.0' }
cloneGitopsRepo() cloneGitopsRepo()
setNewDevAntragsraumProxyVersion() setNewDevAntragraumProxyVersion()
pushDevGitopsRepo() pushDevGitopsRepo()
} }
...@@ -148,7 +148,7 @@ tools { go 'go-1.22.0' } ...@@ -148,7 +148,7 @@ tools { go 'go-1.22.0' }
cloneGitopsRepo() cloneGitopsRepo()
setNewTestAntragsraumProxyVersion() setNewTestAntragraumProxyVersion()
pushTestGitopsRepo() pushTestGitopsRepo()
} }
...@@ -161,7 +161,7 @@ tools { go 'go-1.22.0' } ...@@ -161,7 +161,7 @@ tools { go 'go-1.22.0' }
Void deployHelmChart(String helmChartVersion) { Void deployHelmChart(String helmChartVersion) {
withCredentials([usernamePassword(credentialsId: 'jenkins-nexus-login', usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD')]){ withCredentials([usernamePassword(credentialsId: 'jenkins-nexus-login', usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD')]){
String fileName = '@antragsraum-proxy-' + helmChartVersion + '.tgz' String fileName = '@antragraum-proxy-' + helmChartVersion + '.tgz'
result = sh script: '''curl -u $USERNAME:$PASSWORD https://nexus.ozg-sh.de/service/rest/v1/components?repository=''' + getHelmRepository() + ''' -F file=''' + fileName, returnStdout: true result = sh script: '''curl -u $USERNAME:$PASSWORD https://nexus.ozg-sh.de/service/rest/v1/components?repository=''' + getHelmRepository() + ''' -F file=''' + fileName, returnStdout: true
if (result != '') { if (result != '') {
...@@ -209,9 +209,9 @@ String getElementAccessToken() { ...@@ -209,9 +209,9 @@ String getElementAccessToken() {
String getFailureData() { String getFailureData() {
return """{"msgtype":"m.text", \ return """{"msgtype":"m.text", \
"body":"Antragsraum-Proxy: Build Failed. Stage: ${FAILED_STAGE} Build-ID: ${env.BUILD_NUMBER}", \ "body":"antragraum-proxy: Build Failed. Stage: ${FAILED_STAGE} Build-ID: ${env.BUILD_NUMBER}", \
"format": "org.matrix.custom.html", \ "format": "org.matrix.custom.html", \
"formatted_body":"Antragsraum-Proxy: Build Failed. Stage: ${FAILED_STAGE} Build-ID: ${env.BUILD_NUMBER}"}""" "formatted_body":"antragraum-proxy: Build Failed. Stage: ${FAILED_STAGE} Build-ID: ${env.BUILD_NUMBER}"}"""
} }
String getRoom() { String getRoom() {
...@@ -240,22 +240,22 @@ Void cloneGitopsRepo() { ...@@ -240,22 +240,22 @@ Void cloneGitopsRepo() {
configureGit() configureGit()
} }
Void setNewDevAntragsraumProxyVersion() { Void setNewDevAntragraumProxyVersion() {
setNewAntragsraumProxyGitopsVersion("dev") setNewAntragraumProxyGitopsVersion("dev")
} }
Void setNewTestAntragsraumProxyVersion() { Void setNewTestAntragraumProxyVersion() {
setNewAntragsraumProxyGitopsVersion("test") setNewAntragraumProxyGitopsVersion("test")
} }
Void setNewAntragsraumProxyGitopsVersion(String environment) { Void setNewAntragraumProxyGitopsVersion(String environment) {
dir("gitops") { dir("gitops") {
def envFile = "${environment}/application/values/antragraum-proxy-values.yaml" def envFile = "${environment}/application/values/antragraum-proxy-values.yaml"
def envVersions = readYaml file: envFile def envVersions = readYaml file: envFile
envVersions.antragsraum_proxy.image.tag = IMAGE_TAG envVersions.antragraum_proxy.image.tag = IMAGE_TAG
envVersions.antragsraum_proxy.helm.version = HELM_CHART_VERSION envVersions.antragraum_proxy.helm.version = HELM_CHART_VERSION
writeYaml file: envFile, data: envVersions, overwrite: true writeYaml file: envFile, data: envVersions, overwrite: true
} }
...@@ -272,20 +272,20 @@ Void pushTestGitopsRepo() { ...@@ -272,20 +272,20 @@ Void pushTestGitopsRepo() {
Void pushNewGitopsVersion(String environment) { Void pushNewGitopsVersion(String environment) {
dir('gitops') { dir('gitops') {
if (!hasAntragsraumProxyValuesFileChanged(environment)) { if (!hasAntragraumProxyValuesFileChanged(environment)) {
return return
} }
withCredentials([usernamePassword(credentialsId: 'jenkins-gitea-access-token', passwordVariable: 'TOKEN', usernameVariable: 'USER')]) { withCredentials([usernamePassword(credentialsId: 'jenkins-gitea-access-token', passwordVariable: 'TOKEN', usernameVariable: 'USER')]) {
sh "git add ${environment}/application/values/antragraum-proxy-values.yaml" sh "git add ${environment}/application/values/antragraum-proxy-values.yaml"
sh "git commit -m 'jenkins rollout ${environment} antragsraum-proxy version ${IMAGE_TAG}'" sh "git commit -m 'jenkins rollout ${environment} antragraum-proxy version ${IMAGE_TAG}'"
sh 'git push https://${USER}:${TOKEN}@git.ozg-sh.de/ozgcloud-devops/gitops.git' sh 'git push https://${USER}:${TOKEN}@git.ozg-sh.de/ozgcloud-devops/gitops.git'
} }
} }
} }
Boolean hasAntragsraumProxyValuesFileChanged(String environment) { Boolean hasAntragraumProxyValuesFileChanged(String environment) {
return sh (script: "git status | grep '${environment}/application/values/antragraum-proxy-values.yaml'", returnStatus: true) == env.SH_SUCCESS_STATUS_CODE as Integer return sh (script: "git status | grep '${environment}/application/values/antragraum-proxy-values.yaml'", returnStatus: true) == env.SH_SUCCESS_STATUS_CODE as Integer
} }
......
...@@ -25,6 +25,6 @@ ...@@ -25,6 +25,6 @@
apiVersion: v1 apiVersion: v1
appVersion: "v1.0.0-beta.1" appVersion: "v1.0.0-beta.1"
description: A Helm chart for Anragsraum-Proxy description: A Helm chart for Anragsraum-Proxy
name: antragsraum-proxy name: antragraum-proxy
version: 0.0.0-MANAGED-BY-JENKINS version: 0.0.0-MANAGED-BY-JENKINS
icon: https://simpleicons.org/icons/helm.svg icon: https://simpleicons.org/icons/helm.svg
{{/* Default Labels: Helm recommended best-practice labels https://helm.sh/docs/chart_best_practices/labels/ */}} {{/* Default Labels: Helm recommended best-practice labels https://helm.sh/docs/chart_best_practices/labels/ */}}
{{- define "app.defaultLabels" }} {{- define "app.defaultLabels" }}
app.kubernetes.io/instance: antragsraum-proxy app.kubernetes.io/instance: antragraum-proxy
app.kubernetes.io/managed-by: {{ .Release.Service }} app.kubernetes.io/managed-by: {{ .Release.Service }}
app.kubernetes.io/name: {{ .Release.Name }} app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/namespace: {{ .Release.Namespace }} app.kubernetes.io/namespace: {{ .Release.Namespace }}
app.kubernetes.io/part-of: ozgcloud app.kubernetes.io/part-of: ozgcloud
app.kubernetes.io/version: {{ .Chart.Version }} app.kubernetes.io/version: {{ .Chart.Version }}
helm.sh/chart: {{ printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" }} helm.sh/chart: {{ printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" }}
app.kubernetes.io/component: antragsraum-proxy app.kubernetes.io/component: antragraum-proxy
component: antragsraum-proxy component: antragraum-proxy
{{- end -}} {{- end -}}
{{- define "app.matchLabels" }} {{- define "app.matchLabels" }}
app.kubernetes.io/name: {{ .Release.Name }} app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/namespace: {{ .Release.Namespace }} app.kubernetes.io/namespace: {{ .Release.Namespace }}
component: antragsraum-proxy component: antragraum-proxy
{{- end -}} {{- end -}}
{{- define "app.serviceAccountName" -}} {{- define "app.serviceAccountName" -}}
{{ printf "%s" ( (.Values.serviceAccount).name | default "antragsraum-proxy-service-account" ) }} {{ printf "%s" ( (.Values.serviceAccount).name | default "antragraum-proxy-service-account" ) }}
{{- end -}} {{- end -}}
......
...@@ -72,7 +72,7 @@ spec: ...@@ -72,7 +72,7 @@ spec:
image: "{{ .Values.image.repo }}/{{ .Values.image.name }}:{{ coalesce (.Values.image).tag "latest" }}" image: "{{ .Values.image.repo }}/{{ .Values.image.name }}:{{ coalesce (.Values.image).tag "latest" }}"
imagePullPolicy: Always imagePullPolicy: Always
name: antragsraum-proxy name: antragraum-proxy
ports: ports:
- containerPort: 8082 - containerPort: 8082
name: 8082tcp1 name: 8082tcp1
......
...@@ -26,12 +26,12 @@ ...@@ -26,12 +26,12 @@
apiVersion: networking.k8s.io/v1 apiVersion: networking.k8s.io/v1
kind: NetworkPolicy kind: NetworkPolicy
metadata: metadata:
name: network-policy-antragsraum-proxy name: network-policy-antragraum-proxy
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
spec: spec:
podSelector: podSelector:
matchLabels: matchLabels:
component: antragsraum-proxy component: antragraum-proxy
policyTypes: policyTypes:
- Ingress - Ingress
- Egress - Egress
......
...@@ -28,7 +28,7 @@ replicaCount: 1 ...@@ -28,7 +28,7 @@ replicaCount: 1
image: image:
repo: docker.ozg-sh.de repo: docker.ozg-sh.de
name: antragsraum-proxy name: antragraum-proxy
tag: latest # [default: latest] tag: latest # [default: latest]
......
...@@ -6,9 +6,9 @@ networkPolicy: ...@@ -6,9 +6,9 @@ networkPolicy:
imagePullSecret: ozgcloud-image-pull-secret imagePullSecret: ozgcloud-image-pull-secret
ozgcloud: ozgcloud:
bezeichner: antragsraum-proxy bezeichner: antragraum-proxy
baseUrl: antragsraum-proxy.dev.de baseUrl: antragraum-proxy.dev.de
grpc: grpc:
server: server:
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
suite: test deployment default labels suite: test deployment default labels
release: release:
name: antragsraum-proxy name: antragraum-proxy
namespace: sh-helm-test namespace: sh-helm-test
templates: templates:
- templates/deployment.yaml - templates/deployment.yaml
...@@ -39,36 +39,36 @@ tests: ...@@ -39,36 +39,36 @@ tests:
- equal: - equal:
path: metadata.labels path: metadata.labels
value: value:
app.kubernetes.io/instance: antragsraum-proxy app.kubernetes.io/instance: antragraum-proxy
app.kubernetes.io/managed-by: Helm app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: antragsraum-proxy app.kubernetes.io/name: antragraum-proxy
app.kubernetes.io/namespace: sh-helm-test app.kubernetes.io/namespace: sh-helm-test
app.kubernetes.io/part-of: ozgcloud app.kubernetes.io/part-of: ozgcloud
app.kubernetes.io/version: 0.0.0-MANAGED-BY-JENKINS app.kubernetes.io/version: 0.0.0-MANAGED-BY-JENKINS
helm.sh/chart: antragsraum-proxy-0.0.0-MANAGED-BY-JENKINS helm.sh/chart: antragraum-proxy-0.0.0-MANAGED-BY-JENKINS
app.kubernetes.io/component: antragsraum-proxy app.kubernetes.io/component: antragraum-proxy
component: antragsraum-proxy component: antragraum-proxy
- it: should set spec.selector.matchLabels - it: should set spec.selector.matchLabels
asserts: asserts:
- equal: - equal:
path: spec.selector.matchLabels path: spec.selector.matchLabels
value: value:
app.kubernetes.io/name: antragsraum-proxy app.kubernetes.io/name: antragraum-proxy
app.kubernetes.io/namespace: sh-helm-test app.kubernetes.io/namespace: sh-helm-test
component: antragsraum-proxy component: antragraum-proxy
- it: should have correct deyploment spec.template.metadata.labels - it: should have correct deyploment spec.template.metadata.labels
asserts: asserts:
- equal: - equal:
path: spec.template.metadata.labels path: spec.template.metadata.labels
value: value:
app.kubernetes.io/instance: antragsraum-proxy app.kubernetes.io/instance: antragraum-proxy
app.kubernetes.io/managed-by: Helm app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: antragsraum-proxy app.kubernetes.io/name: antragraum-proxy
app.kubernetes.io/namespace: sh-helm-test app.kubernetes.io/namespace: sh-helm-test
app.kubernetes.io/part-of: ozgcloud app.kubernetes.io/part-of: ozgcloud
app.kubernetes.io/version: 0.0.0-MANAGED-BY-JENKINS app.kubernetes.io/version: 0.0.0-MANAGED-BY-JENKINS
helm.sh/chart: antragsraum-proxy-0.0.0-MANAGED-BY-JENKINS helm.sh/chart: antragraum-proxy-0.0.0-MANAGED-BY-JENKINS
app.kubernetes.io/component: antragsraum-proxy app.kubernetes.io/component: antragraum-proxy
component: antragsraum-proxy component: antragraum-proxy
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
suite: test deployment image pull secret suite: test deployment image pull secret
release: release:
name: antragsraum-proxy name: antragraum-proxy
namespace: sh-helm-test namespace: sh-helm-test
templates: templates:
- templates/deployment.yaml - templates/deployment.yaml
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
suite: test deployment container resources suite: test deployment container resources
release: release:
name: antragsraum-proxy name: antragraum-proxy
templates: templates:
- templates/deployment.yaml - templates/deployment.yaml
set: set:
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
suite: deployment suite: deployment
release: release:
name: antragsraum-proxy name: antragraum-proxy
templates: templates:
- templates/deployment.yaml - templates/deployment.yaml
set: set:
...@@ -42,7 +42,7 @@ tests: ...@@ -42,7 +42,7 @@ tests:
of: apps/v1 of: apps/v1
- equal: - equal:
path: metadata.name path: metadata.name
value: "antragsraum-proxy" value: "antragraum-proxy"
- equal: - equal:
path: metadata.namespace path: metadata.namespace
value: "NAMESPACE" value: "NAMESPACE"
...@@ -63,7 +63,7 @@ tests: ...@@ -63,7 +63,7 @@ tests:
path: spec.selector path: spec.selector
- equal: - equal:
path: spec.selector.matchLabels["app.kubernetes.io/name"] path: spec.selector.matchLabels["app.kubernetes.io/name"]
value: "antragsraum-proxy" value: "antragraum-proxy"
- equal: - equal:
path: spec.selector.matchLabels["app.kubernetes.io/namespace"] path: spec.selector.matchLabels["app.kubernetes.io/namespace"]
value: "NAMESPACE" value: "NAMESPACE"
...@@ -80,10 +80,10 @@ tests: ...@@ -80,10 +80,10 @@ tests:
asserts: asserts:
- equal: - equal:
path: spec.template.metadata.labels["app.kubernetes.io/instance"] path: spec.template.metadata.labels["app.kubernetes.io/instance"]
value: "antragsraum-proxy" value: "antragraum-proxy"
- equal: - equal:
path: spec.template.metadata.labels.component path: spec.template.metadata.labels.component
value: "antragsraum-proxy" value: "antragraum-proxy"
- equal: - equal:
path: spec.template.spec.topologySpreadConstraints[0].maxSkew path: spec.template.spec.topologySpreadConstraints[0].maxSkew
value: 1 value: 1
...@@ -95,7 +95,7 @@ tests: ...@@ -95,7 +95,7 @@ tests:
value: "ScheduleAnyway" value: "ScheduleAnyway"
- equal: - equal:
path: spec.template.spec.topologySpreadConstraints[0].labelSelector.matchLabels["app.kubernetes.io/name"] path: spec.template.spec.topologySpreadConstraints[0].labelSelector.matchLabels["app.kubernetes.io/name"]
value: "antragsraum-proxy" value: "antragraum-proxy"
- isEmpty: - isEmpty:
path: spec.template.spec.dnsConfig path: spec.template.spec.dnsConfig
- equal: - equal:
...@@ -116,10 +116,10 @@ tests: ...@@ -116,10 +116,10 @@ tests:
asserts: asserts:
- equal: - equal:
path: spec.template.spec.containers[0].name path: spec.template.spec.containers[0].name
value: "antragsraum-proxy" value: "antragraum-proxy"
- equal: - equal:
path: spec.template.spec.containers[0].image path: spec.template.spec.containers[0].image
value: "docker.ozg-sh.de/antragsraum-proxy:latest" value: "docker.ozg-sh.de/antragraum-proxy:latest"
- equal: - equal:
path: spec.template.spec.containers[0].imagePullPolicy path: spec.template.spec.containers[0].imagePullPolicy
value: "Always" value: "Always"
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
suite: test ingress.yaml suite: test ingress.yaml
release: release:
name: antragsraum-proxy name: antragraum-proxy
namespace: sh-helm-test namespace: sh-helm-test
templates: templates:
- templates/ingress.yaml - templates/ingress.yaml
...@@ -42,7 +42,7 @@ tests: ...@@ -42,7 +42,7 @@ tests:
asserts: asserts:
- equal: - equal:
path: spec.tls[0].secretName path: spec.tls[0].secretName
value: helm-antragsraum-proxy-tls value: helm-antragraum-proxy-tls
- it: should use default letsencrypt-prod cluster-issuer - it: should use default letsencrypt-prod cluster-issuer
asserts: asserts:
...@@ -81,7 +81,7 @@ tests: ...@@ -81,7 +81,7 @@ tests:
pathType: Prefix pathType: Prefix
backend: backend:
service: service:
name: antragsraum-proxy name: antragraum-proxy
port: port:
number: 8082 number: 8082
......
...@@ -54,7 +54,7 @@ tests: ...@@ -54,7 +54,7 @@ tests:
- equal: - equal:
path: metadata path: metadata
value: value:
name: network-policy-antragsraum-proxy name: network-policy-antragraum-proxy
namespace: by-helm-test namespace: by-helm-test
- it: should generate spec - it: should generate spec
...@@ -92,7 +92,7 @@ tests: ...@@ -92,7 +92,7 @@ tests:
- port: 8082 - port: 8082
podSelector: podSelector:
matchLabels: matchLabels:
component: antragsraum-proxy component: antragraum-proxy
policyTypes: policyTypes:
- Ingress - Ingress
- Egress - Egress
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
suite: test service suite: test service
release: release:
name: antragsraum-proxy name: antragraum-proxy
namespace: sh-helm-test namespace: sh-helm-test
templates: templates:
- templates/service.yaml - templates/service.yaml
...@@ -37,7 +37,7 @@ tests: ...@@ -37,7 +37,7 @@ tests:
of: v1 of: v1
- equal: - equal:
path: metadata.labels.component path: metadata.labels.component
value: antragsraum-proxy value: antragraum-proxy
- it: should be of type ClusterIP - it: should be of type ClusterIP
asserts: asserts:
- equal: - equal:
...@@ -59,19 +59,19 @@ tests: ...@@ -59,19 +59,19 @@ tests:
asserts: asserts:
- equal: - equal:
path: spec.selector.component path: spec.selector.component
value: antragsraum-proxy value: antragraum-proxy
- it: selector should contain helm recommended labels name and namespace - it: selector should contain helm recommended labels name and namespace
asserts: asserts:
- equal: - equal:
path: spec.selector path: spec.selector
value: value:
app.kubernetes.io/name: antragsraum-proxy app.kubernetes.io/name: antragraum-proxy
app.kubernetes.io/namespace: sh-helm-test app.kubernetes.io/namespace: sh-helm-test
component: antragsraum-proxy component: antragraum-proxy
- it: check component label for service - it: check component label for service
asserts: asserts:
- equal: - equal:
path: metadata.labels["component"] path: metadata.labels["component"]
value: antragsraum-proxy value: antragraum-proxy
\ No newline at end of file \ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment