Skip to content
Snippets Groups Projects

Resolve "xta-test-server helm-chart mit Deployment und Keystore-Secrets/Certificate-Resources"

Merged Jan Zickermann requested to merge 2-OZG-7121-KOP-2850-Dev-Deployment into main
1 unresolved thread
1 file
+ 4
6
Compare changes
  • Side-by-side
  • Inline
  • 6eb928ab
    #2 OZG-7121 pipeline: Adjust references for helm · 6eb928ab
    Jan Zickermann authored
+ 90
13
@@ -22,10 +22,10 @@ stages:
- test
- publish
build:
package:
stage: build
script:
- mvn clean compile $MAVEN_CLI_OPTS
- mvn clean package -DskipTests=true $MAVEN_CLI_OPTS
artifacts:
paths:
- target/*.jar
@@ -35,6 +35,21 @@ test:
script:
- mvn test $MAVEN_CLI_OPTS
.helm:
before_script:
- apk add --no-cache helm git curl
script:
- helm package --version=${HELM_CHART_VERSION} src/main/helm
- curl -u ${NEXUS_USER}:${NEXUS_PASSWORD} https://nexus.ozg-sh.de/service/rest/v1/components?repository=${NEXUS_HELM_REPO_NAME} -F file=@${PROJECT_ARTIFACTID}-${HELM_CHART_VERSION}.tgz
test-helm:
stage: test
before_script:
- !reference [ .helm, before_script ]
- helm plugin install https://github.com/helm-unittest/helm-unittest.git
script:
- sh run_helm_test.sh
verify:
stage: test
script:
@@ -51,7 +66,7 @@ push-merge-request-image-gitlab:
stage: publish
extends: .get-version
script:
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:MR-${CI_MERGE_REQUEST_IID}-${PROJECT_VERSION}"
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID},${CI_REGISTRY_IMAGE}:${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID}-${CI_COMMIT_SHORT_SHA}"
- mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
@@ -61,51 +76,113 @@ push-merge-request-image-nexus:
stage: publish
extends: .get-version
script:
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:MR-${CI_MERGE_REQUEST_IID}-${PROJECT_VERSION}"
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID},${NEXUS_IMAGE_PREFIX}:${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID}-${CI_COMMIT_SHORT_SHA}"
- mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
rules:
- 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 [.helm, before_script]
script:
- export HELM_CHART_VERSION=${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID}
- !reference [.helm, script]
- export HELM_CHART_VERSION=${PROJECT_VERSION}-MR-${CI_MERGE_REQUEST_IID}-${CI_COMMIT_SHORT_SHA}
- !reference [.helm, script]
rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
when: manual
artifacts:
paths:
- "*.tgz"
push-keystore-assembler-image-nexus:
stage: publish
image: docker:latest
script:
- docker build -f keystore-truststore-from-tls-secret.dockerfile -t keystore-truststore-from-tls-secret:latest .
- echo "$NEXUS_PASSWORD" | docker login -u "$NEXUS_USER" --password-stdin docker.ozg-sh.de
- docker tag keystore-truststore-from-tls-secret:latest docker.ozg-sh.de/keystore-truststore-from-tls-secret:latest
- docker push docker.ozg-sh.de/keystore-truststore-from-tls-secret:latest
when: manual
rules:
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
# Snapshot jobs
push-snapshot-image-gitlab:
stage: publish
extends: .get-version
script:
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:main-${PROJECT_VERSION},${CI_REGISTRY_IMAGE}:snapshot-latest"
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${PROJECT_VERSION}-main,${CI_REGISTRY_IMAGE}:${PROJECT_VERSION}-main-${CI_COMMIT_SHORT_SHA},${CI_REGISTRY_IMAGE}:snapshot-latest"
- mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
# only:
# - main
rules:
- when: never # Step disabled until gitlab container registry works
only:
- main
push-snapshot-image-nexus:
stage: publish
extends: .get-version
script:
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:main-${PROJECT_VERSION},${NEXUS_IMAGE_PREFIX}:snapshot-latest"
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${PROJECT_VERSION}-main,${NEXUS_IMAGE_PREFIX}:${PROJECT_VERSION}-main-${CI_COMMIT_SHORT_SHA},${NEXUS_IMAGE_PREFIX}:snapshot-latest"
- mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
only:
- main
push-snapshot-helm-nexus:
stage: publish
variables:
NEXUS_HELM_REPO_NAME: ozg-base-apps-snapshot
before_script:
- !reference [.get-version, before_script]
- !reference [.helm, before_script]
script:
- export HELM_CHART_VERSION=${PROJECT_VERSION}-main
- !reference [ .helm, script ]
- export HELM_CHART_VERSION=${PROJECT_VERSION}-main-${CI_COMMIT_SHORT_SHA}
- !reference [.helm, script]
only:
- main
artifacts:
paths:
- "*.tgz"
# Release jobs
push-release-image-gitlab:
stage: publish
extends: .get-version
script:
- mvn versions:set -DnewVersion=${CI_COMMIT_TAG} $MAVEN_CLI_OPTS
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:release-${CI_COMMIT_TAG},${CI_REGISTRY_IMAGE}:latest"
- export IMAGE_TAGS="${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG},${CI_REGISTRY_IMAGE}:${CI_COMMIT_TAG}-release,${CI_REGISTRY_IMAGE}:latest"
- mvn deploy -Pgitlab-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
rules:
- if: $CI_COMMIT_TAG
when: never # Step disabled until gitlab container registry works
push-release-image-nexus:
stage: publish
extends: .get-version
script:
- mvn versions:set -DnewVersion=${CI_COMMIT_TAG} $MAVEN_CLI_OPTS
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:release-${CI_COMMIT_TAG},${NEXUS_IMAGE_PREFIX}:latest"
- export IMAGE_TAGS="${NEXUS_IMAGE_PREFIX}:${CI_COMMIT_TAG},${NEXUS_IMAGE_PREFIX}:${CI_COMMIT_TAG}-release,${NEXUS_IMAGE_PREFIX}:latest"
- mvn deploy -Pnexus-deploy $MAVEN_DEPLOY_CLI_OPTS $MAVEN_CLI_OPTS
rules:
- if: $CI_COMMIT_TAG
push-release-helm-nexus:
stage: publish
variables:
NEXUS_HELM_REPO_NAME: ozg-base-apps
before_script:
- !reference [.get-version, before_script]
- !reference [.helm, before_script]
script:
- export HELM_CHART_VERSION=${PROJECT_VERSION}
- !reference [.helm, script]
rules:
- if: $CI_COMMIT_TAG
artifacts:
paths:
- "*.tgz"
\ No newline at end of file
Loading