Skip to content
Snippets Groups Projects
Commit 4ce856fb authored by Lukas Malte Monnerjahn's avatar Lukas Malte Monnerjahn
Browse files

publish helm chart

parent 1b0bde98
No related branches found
No related tags found
No related merge requests found
Pipeline #1442 failed
...@@ -40,52 +40,77 @@ verify: ...@@ -40,52 +40,77 @@ verify:
script: script:
- mvn verify $MAVEN_CLI_OPTS - mvn verify $MAVEN_CLI_OPTS
test-helm:
stage: test
before_script:
- apk add --no-cache helm git
- helm plugin install https://github.com/helm-unittest/helm-unittest.git
script:
- ./run_helm_test.sh
.get-version: .get-version:
before_script: before_script:
- export PROJECT_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout $MAVEN_CLI_OPTS) - export PROJECT_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout $MAVEN_CLI_OPTS)
- export PROJECT_ARTIFACTID=$(mvn help:evaluate -Dexpression=project.artifactId -q -DforceStdout $MAVEN_CLI_OPTS) - export PROJECT_ARTIFACTID=$(mvn help:evaluate -Dexpression=project.artifactId -q -DforceStdout $MAVEN_CLI_OPTS)
- export SNAPSHOT_TAG="${CI_COMMIT_BRANCH}-${PROJECT_VERSION}-${CI_COMMIT_SHORT_SHA}"
- export MERGE_REQUEST_TAG="MR-${CI_MERGE_REQUEST_IID}-${PROJECT_VERSION}"
- export NEXUS_IMAGE_PREFIX="docker.ozg-sh.de/${PROJECT_ARTIFACTID}" - export NEXUS_IMAGE_PREFIX="docker.ozg-sh.de/${PROJECT_ARTIFACTID}"
- export MERGE_REQUEST_TAG="MR-${CI_MERGE_REQUEST_IID}-${PROJECT_VERSION}"
- export SNAPSHOT_TAG="${CI_COMMIT_BRANCH}-${PROJECT_VERSION}"
.publish-helm-chart: .publish-helm-chart:
variables: variables:
- HELMCHART_NAME: Intelliform-Adapter
- NEXUS_HELM_URL: https://nexus.ozg-sh.de/service/rest/v1/components?repository= - NEXUS_HELM_URL: https://nexus.ozg-sh.de/service/rest/v1/components?repository=
before_script:
- apk add --no-cache helm curl
script: script:
- ./run_helm_test.sh - helm package --version=${HELM_CHART_VERSION} src/main/helm
- cd 'src/main/helm' - curl -u ${NEXUS_USER}:${NEXUS_PASSWORD} ${NEXUS_HELM_URL}${NEXUS_HELM_REPO_NAME} -F file=@${PROJECT_ARTIFACTID}-${HELM_CHART_VERSION}.tgz
- sh "helm package --version=${HELM_CHART_VERSION} ."
- helm package helm-chart
- curl -u ${NEXUS_USER}:${NEXUS_PASSWORD} ${NEXUS_HELM_URL}${HELM_REPO} -F file=@'''+${HELMCHART_NAME}+'''-'''+${HELM_CHART_VERSION}+'''.tgz
rules:
- when: never # The runner does not support helm yet
# Merge request jobs # Merge request jobs
push-merge-request-image-gitlab: push-merge-request-image-gitlab:
stage: publish stage: publish
extends: .get-version extends: .get-version
script: script:
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${MERGE_REQUEST_TAG}" - export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${MERGE_REQUEST_TAG},${CI_REGISTRY_IMAGE}:${MERGE_REQUEST_TAG}-${CI_COMMIT_SHORT_SHA}"
- mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS - mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
rules: rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event' - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
when: manual
push-merge-request-image-nexus: push-merge-request-image-nexus:
stage: publish stage: publish
extends: .get-version extends: .get-version
script: script:
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${MERGE_REQUEST_TAG}" - export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${MERGE_REQUEST_TAG},${NEXUS_IMAGE_PREFIX}:${MERGE_REQUEST_TAG}-${CI_COMMIT_SHORT_SHA}"
- mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS - mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
rules: rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event' - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
when: manual
push-merge-request-helm-nexus:
stage: publish
variables:
NEXUS_HELM_REPO_NAME: ozg-base-apps-snapshot
before_script:
- !reference [.get-version, before_script]
- !reference [.publish-helm-chart, before_script]
script:
- export HELM_CHART_VERSION=${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID}
- !reference [.publish-helm-chart, script]
- export HELM_CHART_VERSION=${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID}-${CI_COMMIT_SHORT_SHA}
- !reference [.publish-helm-chart, script]
rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
when: manual
artifacts:
paths:
- "*.tgz"
# Snapshot jobs # Snapshot jobs
push-snapshot-image-gitlab: push-snapshot-image-gitlab:
stage: publish stage: publish
extends: .get-version extends: .get-version
script: script:
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${SNAPSHOT_TAG},${CI_REGISTRY_IMAGE}:snapshot-latest" - export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${SNAPSHOT_TAG},${CI_REGISTRY_IMAGE}:${SNAPSHOT_TAG}-${CI_COMMIT_SHORT_SHA},${CI_REGISTRY_IMAGE}:snapshot-latest"
- mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS - mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
only: only:
- main - main
...@@ -94,22 +119,28 @@ push-snapshot-image-nexus: ...@@ -94,22 +119,28 @@ push-snapshot-image-nexus:
stage: publish stage: publish
extends: .get-version extends: .get-version
script: script:
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${SNAPSHOT_TAG},${NEXUS_IMAGE_PREFIX}:snapshot-latest" - export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${SNAPSHOT_TAG},${NEXUS_IMAGE_PREFIX}:${SNAPSHOT_TAG}-${CI_COMMIT_SHORT_SHA},${NEXUS_IMAGE_PREFIX}:snapshot-latest"
- mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS - mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
only: only:
- main - main
push-snapshot-helm-chart-nexus: push-snapshot-helm-nexus:
stage: publish stage: publish
extends: .publish-helm-chart
variables: variables:
HELM_REPO: ozg-base-apps-snapshot NEXUS_HELM_REPO_NAME: ozg-base-apps-snapshot
before_script: before_script:
- export HELM_CHART_VERSION="$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout $MAVEN_CLI_OPTS)-${CI_COMMIT_BRANCH}-${CI_COMMIT_SHORT_SHA}" - !reference [.get-version, before_script]
# only: - !reference [.publish-helm-chart, before_script]
# - main script:
rules: - export HELM_CHART_VERSION=${PROJECT_VERSION}-main
- when: never # The runner does not support helm yet - !reference [ .publish-helm-chart, script ]
- export HELM_CHART_VERSION=${PROJECT_VERSION}-main-${CI_COMMIT_SHORT_SHA}
- !reference [.publish-helm-chart, script]
only:
- main
artifacts:
paths:
- "*.tgz"
# Release jobs # Release jobs
push-release-image-gitlab: push-release-image-gitlab:
...@@ -132,13 +163,18 @@ push-release-image-nexus: ...@@ -132,13 +163,18 @@ push-release-image-nexus:
rules: rules:
- if: $CI_COMMIT_TAG - if: $CI_COMMIT_TAG
push-release-helm-chart-nexus: push-release-helm-nexus:
stage: publish stage: publish
extends: .publish-helm-chart
variables: variables:
HELM_REPO: ozg-base-apps NEXUS_HELM_REPO_NAME: ozg-base-apps
before_script: before_script:
- export HELM_CHART_VERSION=$CI_COMMIT_TAG - !reference [.get-version, before_script]
- !reference [.publish-helm-chart, before_script]
script:
- export HELM_CHART_VERSION=${PROJECT_VERSION}
- !reference [.publish-helm-chart, script]
rules: rules:
- if: $CI_COMMIT_TAG - if: $CI_COMMIT_TAG
- when: never # The runner does not support helm yet artifacts:
paths:
- "*.tgz"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment