git tag与GitLab CI/CD Pipeline
在此Pipeline中,deploy_dockerhub 阶段只有在有 git tag 打在当前提交时才会运行,它会将镜像推送到 Docker Hub,标签为提交的 tag 名称。git tag用于给版本库的某个提交打标签,以示重要的里程碑。访问 GitLab CI 页面,deploy_dockerhub 阶段会运行,将镜像标签为 v1.0.0 推送至 Docker Hub。通过 git tag,
·
git tag与GitLab CI/CD Pipeline
git tag用于给版本库的某个提交打标签,以示重要的里程碑。在GitLab CI/CD Pipeline中,我们可以利用git tag来触发某些作业的运行。
例如,我们有一个镜像构建并推送到Docker Hub的Pipeline:
build:
stage: build
script:
- docker build -t myimage .
deploy_dockerhub:
stage: deploy
only:
- tags
script:
- docker login --username $DOCKER_USERNAME --password $DOCKER_PASSWORD
- docker tag myimage $DOCKER_USERNAME/myimage:$CI_COMMIT_TAG
- docker push $DOCKER_USERNAME/myimage:$CI_COMMIT_TAG
在此Pipeline中,deploy_dockerhub 阶段只有在有 git tag 打在当前提交时才会运行,它会将镜像推送到 Docker Hub,标签为提交的 tag 名称。
使用示例:
- 提交代码到仓库
git add .
git commit -m "Update code"
- 打 tag 并推送到远端
git tag v1.0.0
git push origin v1.0.0
-
访问 GitLab CI 页面,deploy_dockerhub 阶段会运行,将镜像标签为 v1.0.0 推送至 Docker Hub
-
未打 tag 时,deploy_dockerhub 阶段不会运行
git add .
git commit -m "Update code"
git push
GitLab CI 页面,deploy_dockerhub 阶段会被跳过。
页面提交标签:
通过 git tag,我们可以有选择性地触发 Pipeline 中的某些作业运行,这为我们实现持续交付提供了便利。
更多推荐
已为社区贡献6条内容
所有评论(0)