diff --git a/scripts/docker-build.sh b/scripts/docker-build.sh index 24615ef..adcb119 100644 --- a/scripts/docker-build.sh +++ b/scripts/docker-build.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash #%%MULTILINE_YAML_START #Build Docker Container -docker build -t $CI_REGISTRY/$CI_PROJECT_PATH:$GITVERSION -t $CI_REGISTRY/$CI_PROJECT_PATH:latest . +docker build -t $CI_REGISTRY/$CI_PROJECT_PATH:$VERSION -t $CI_REGISTRY/$CI_PROJECT_PATH:latest . docker push "$CI_REGISTRY/$CI_PROJECT_PATH:latest" -docker push "$CI_REGISTRY/$CI_PROJECT_PATH:$GITVERSION" \ No newline at end of file +docker push "$CI_REGISTRY/$CI_PROJECT_PATH:$VERSION" \ No newline at end of file diff --git a/scripts/helm-package.sh b/scripts/helm-package.sh index e8996e7..bac573a 100644 --- a/scripts/helm-package.sh +++ b/scripts/helm-package.sh @@ -4,6 +4,6 @@ for chart in charts/*; do if [ -d "$chart" ]; then - helm package "$chart" -d ./packages --version ${GITVERSION} + helm package "$chart" -d ./packages --version ${VERSION} fi done \ No newline at end of file diff --git a/scripts/version-number.sh b/scripts/version-number.sh new file mode 100644 index 0000000..b7bf9f1 --- /dev/null +++ b/scripts/version-number.sh @@ -0,0 +1,9 @@ + +if [ -z "$VERSION" ]; then + VERSION="1" +fi +export COMMIT_COUNT=$(git rev-list --count HEAD) +export BUILD_NUMBER=$CI_PIPELINE_ID +export VERSION="$VERSION.$COMMIT_COUNT.$BUILD_NUMBER" +echo $VERSION > version.env +cat version.env diff --git a/templates/build-container.tpl.yml b/templates/build-container.tpl.yml index adc66cd..f90e536 100644 --- a/templates/build-container.tpl.yml +++ b/templates/build-container.tpl.yml @@ -1,6 +1,15 @@ stages: + - versioning - build +version: + stage: versioning + script: + - ./scripts/version-number.sh + artifacts: + reports: + dotenv: version.env + build-container: image: docker:20.10.16 variables: @@ -11,6 +20,9 @@ build-container: script: - ./scripts/docker-login.sh - ./scripts/docker-build.sh + needs: + - job: version + artifacts: true only: - main @@ -21,5 +33,8 @@ HelmChart: - ./scripts/helm-addrepo.sh - ./scripts/helm-package.sh - ./scripts/helm-push.sh + needs: + - job: version + artifacts: true only: - main \ No newline at end of file