feat(Container Publish): Cleanup Container Publishing tasks
This commit is contained in:
parent
d7648255c7
commit
378447099b
30
container-publish-snapshot.gitlab-ci.yml
Normal file
30
container-publish-snapshot.gitlab-ci.yml
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
include:
|
||||||
|
- local: 'container-publish.gitlab-ci.yml'
|
||||||
|
|
||||||
|
.container-publish-snapshot-rules: &container-publish-snapshot-rules
|
||||||
|
stage: snapshot
|
||||||
|
rules:
|
||||||
|
- if: "$CI_PIPELINE_SOURCE == 'merge_request_event'"
|
||||||
|
when: never
|
||||||
|
- if: '$CI_COMMIT_REF_NAME =~ /^feature/'
|
||||||
|
variables:
|
||||||
|
IMAGE_TAG: $CI_COMMIT_REF_SLUG
|
||||||
|
- if: '$CI_COMMIT_REF_NAME =~ /^refactor/'
|
||||||
|
variables:
|
||||||
|
IMAGE_TAG: $CI_COMMIT_REF_SLUG
|
||||||
|
- if: $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH
|
||||||
|
variables:
|
||||||
|
IMAGE_TAG: "latest"
|
||||||
|
- when: never
|
||||||
|
|
||||||
|
.publish-image-jib-maven-snapshot:
|
||||||
|
<<: *container-publish-snapshot-rules
|
||||||
|
extends: .publish-image-jib-maven
|
||||||
|
|
||||||
|
.publish-image-jib-gradle-snapshot:
|
||||||
|
<<: *container-publish-snapshot-rules
|
||||||
|
extends: .publish-image-jib-gradle
|
||||||
|
|
||||||
|
.publish-image-kaniko-snapshot:
|
||||||
|
<<: *container-publish-snapshot-rules
|
||||||
|
extends: .publish-image-kaniko
|
||||||
@ -1,16 +1,26 @@
|
|||||||
.publish-image-jib:
|
.container-publish-common: &container-publish-common
|
||||||
image: $MAVEN_IMAGE
|
before_script:
|
||||||
|
- export PARSED_VERSION=$(echo $IMAGE_TAG | sed -r 's/\+/_/g') # Replace + sign since this is not valid in a docker tag
|
||||||
|
- echo $PARSED_VERSION
|
||||||
stage: package
|
stage: package
|
||||||
rules:
|
rules:
|
||||||
- if: $CI_COMMIT_TAG
|
- if: $CI_COMMIT_TAG
|
||||||
variables:
|
variables:
|
||||||
|
IMAGE_TAG: $CI_COMMIT_TAG
|
||||||
|
|
||||||
|
|
||||||
|
.container-publish-common-variables: &container-publish-common-variables
|
||||||
DOCKER_REGISTRY: $CI_REGISTRY_IMAGE
|
DOCKER_REGISTRY: $CI_REGISTRY_IMAGE
|
||||||
DOCKER_REGISTRY_USER: $CI_REGISTRY_USER
|
DOCKER_REGISTRY_USER: $CI_REGISTRY_USER
|
||||||
DOCKER_REGISTRY_PASSWORD: $CI_REGISTRY_PASSWORD
|
DOCKER_REGISTRY_PASSWORD: $CI_REGISTRY_PASSWORD
|
||||||
|
|
||||||
|
.publish-image-jib-maven:
|
||||||
|
image: $MAVEN_IMAGE
|
||||||
|
<<: *container-publish-common
|
||||||
|
variables:
|
||||||
|
<<: *container-publish-common-variables
|
||||||
MVN_VERSION: "true"
|
MVN_VERSION: "true"
|
||||||
script:
|
script:
|
||||||
- export PARSED_VERSION=$(echo $CI_COMMIT_TAG | sed -r 's/\+/_/g') # Replace + sign since this is not valid in a docker tag
|
|
||||||
- echo $PARSED_VERSION
|
|
||||||
- >
|
- >
|
||||||
if [ "${MVN_VERSION}" == "true" ]; then
|
if [ "${MVN_VERSION}" == "true" ]; then
|
||||||
mvn versions:set -DnewVersion=$PARSED_VERSION -DgenerateBackupPoms=false
|
mvn versions:set -DnewVersion=$PARSED_VERSION -DgenerateBackupPoms=false
|
||||||
@ -23,21 +33,15 @@
|
|||||||
|
|
||||||
.publish-image-jib-gradle:
|
.publish-image-jib-gradle:
|
||||||
image: $GRADLE_IMAGE
|
image: $GRADLE_IMAGE
|
||||||
stage: package
|
<<: *container-publish-common
|
||||||
rules:
|
|
||||||
- if: $CI_COMMIT_TAG
|
|
||||||
variables:
|
variables:
|
||||||
DOCKER_REGISTRY: $CI_REGISTRY_IMAGE
|
<<: *container-publish-common-variables
|
||||||
DOCKER_REGISTRY_USER: $CI_REGISTRY_USER
|
GRADLE_EXTRA_ARGS: ""
|
||||||
DOCKER_REGISTRY_PASSWORD: $CI_REGISTRY_PASSWORD
|
|
||||||
before_script:
|
|
||||||
- export PARSED_VERSION=$(echo $CI_COMMIT_TAG | sed -r 's/\+/_/g') # Replace + sign since this is not valid in a docker tag
|
|
||||||
- export IMAGE_NAME=$CI_REGISTRY_IMAGE:$PARSED_VERSION
|
|
||||||
script:
|
script:
|
||||||
- echo $PARSED_VERSION
|
- echo $PARSED_VERSION
|
||||||
- gradlew jib
|
- ./gradlew assemble jib $GRADLE_EXTRA_ARGS
|
||||||
"-DskipTests"
|
"-DskipTests"
|
||||||
"-Djib.to.image=$DOCKER_REGISTRY:$PARSED_VERSION"
|
"-Djib.to.image=$DOCKER_REGISTRY:$PARSED_VERSION""
|
||||||
"-Djib.to.auth.username=$DOCKER_REGISTRY_USER"
|
"-Djib.to.auth.username=$DOCKER_REGISTRY_USER"
|
||||||
"-Djib.to.auth.password=$DOCKER_REGISTRY_PASSWORD"
|
"-Djib.to.auth.password=$DOCKER_REGISTRY_PASSWORD"
|
||||||
|
|
||||||
@ -45,20 +49,13 @@
|
|||||||
image:
|
image:
|
||||||
name: gcr.io/kaniko-project/executor:v1.7.0-debug
|
name: gcr.io/kaniko-project/executor:v1.7.0-debug
|
||||||
entrypoint: [ "" ]
|
entrypoint: [ "" ]
|
||||||
stage: package
|
<<: *container-publish-common
|
||||||
rules:
|
|
||||||
- if: $CI_COMMIT_TAG
|
|
||||||
variables:
|
variables:
|
||||||
DOCKER_REGISTRY: $CI_REGISTRY_IMAGE
|
<<: *container-publish-common-variables
|
||||||
DOCKER_REGISTRY_USER: $CI_REGISTRY_USER
|
|
||||||
DOCKER_REGISTRY_PASSWORD: $CI_REGISTRY_PASSWORD
|
|
||||||
PROJECT_DIR: $CI_PROJECT_DIR
|
PROJECT_DIR: $CI_PROJECT_DIR
|
||||||
DOCKERFILE_LOCATION: $CI_PROJECT_DIR/Dockerfile
|
DOCKERFILE_LOCATION: $CI_PROJECT_DIR/Dockerfile
|
||||||
CONTEXT_LOCATION: $CI_PROJECT_DIR
|
CONTEXT_LOCATION: $CI_PROJECT_DIR
|
||||||
before_script:
|
|
||||||
- export PARSED_VERSION=$(echo $CI_COMMIT_TAG | sed -r 's/\+/_/g') # Replace + sign since this is not valid in a docker tag
|
|
||||||
- export IMAGE_NAME=$CI_REGISTRY_IMAGE:$PARSED_VERSION
|
|
||||||
script:
|
script:
|
||||||
- mkdir -p /kaniko/.docker
|
- mkdir -p /kaniko/.docker
|
||||||
- echo "{\"auths\":{\"$DOCKER_REGISTRY\":{\"username\":\"$DOCKER_REGISTRY_USER\",\"password\":\"$DOCKER_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json
|
- echo "{\"auths\":{\"$DOCKER_REGISTRY\":{\"username\":\"$DOCKER_REGISTRY_USER\",\"password\":\"$DOCKER_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json
|
||||||
- /kaniko/executor --context $CONTEXT_LOCATION --dockerfile $DOCKERFILE_LOCATION --destination $IMAGE_NAME --skip-tls-verify
|
- /kaniko/executor --context $CONTEXT_LOCATION --dockerfile $DOCKERFILE_LOCATION --destination $CI_REGISTRY_IMAGE:$PARSED_VERSION --skip-tls-verify
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user