更新.gitlab-ci.yml文件
This commit is contained in:
@@ -2,18 +2,23 @@ stages:
|
||||
- generate
|
||||
- release
|
||||
|
||||
variables:
|
||||
TAGS: ""
|
||||
|
||||
generate:
|
||||
stage: generate
|
||||
image: python:3.11-alpine
|
||||
script:
|
||||
- pip install -r requirements.txt
|
||||
- ./update.py > tags.txt
|
||||
rules:
|
||||
# if specific version is set, don't run this job
|
||||
- if: '$TAGS == ""'
|
||||
artifacts:
|
||||
expire_in: 1 hour
|
||||
paths:
|
||||
- tags.txt
|
||||
|
||||
|
||||
release-image:
|
||||
needs:
|
||||
- job: generate
|
||||
@@ -22,6 +27,13 @@ release-image:
|
||||
stage: release
|
||||
services:
|
||||
- docker:dind
|
||||
rules:
|
||||
# if not specific version is set, use artifacts from generate job
|
||||
- if: '$TAGS == ""'
|
||||
needs:
|
||||
- job: generate
|
||||
artifacts: true
|
||||
- if: '$TAGS'
|
||||
variables:
|
||||
DOCKER_HOST: tcp://docker:2376
|
||||
DOCKER_TLS_CERTDIR: "/certs"
|
||||
@@ -31,8 +43,9 @@ release-image:
|
||||
- until docker info; do sleep 1; done
|
||||
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
||||
script:
|
||||
- if [ -z "$TAGS" ]; then export TAGS=$(cat tags.txt); fi
|
||||
- |
|
||||
for tag in $(cat tags.txt); do
|
||||
for tag in $TAGS; do
|
||||
export IMAGE_TAG=$CI_REGISTRY_IMAGE:$tag
|
||||
echo $IMAGE_TAG
|
||||
sed "s/latest/$tag/g" Dockerfile > Dockerfile.tmp
|
||||
|
||||
Reference in New Issue
Block a user