问:Gitlab CI 谁重试旧管道
Posted
技术标签:
【中文标题】问:Gitlab CI 谁重试旧管道【英文标题】:Q : Gitlab CI who to retry older pipeline 【发布时间】:2020-11-04 19:11:01 【问题描述】:我第一次在重试具有 4 个阶段和 1 个作业的旧管道时遇到故障,当管道仅重试第 4 步和第 1 步作为运行时
我的 .gitlab-ci.yml
阶段: - 建造 - 部署 - 干净的 before_script: … 变量: GIT_SUBMODULE_STRATEGY:递归 GIT_STRATEGY:克隆 建造: 阶段:构建 脚本: - git子模块初始化 - git 子模块更新 -f 允许失败:假 时间:手动 只要: - 掌握 生产: 阶段:部署 脚本: - ssh $DEPLOY_SERVER_USER@$DEPLOY_SERVER_ADDRESS "[ -f /usr/bin/rsync ] || apt-get install -qq -y rsync && [ -f /usr/bin/getfacl ] .... » 允许失败:假 回滚: 阶段:干净 脚本: - ssh $DEPLOY_SERVER_USER@$DEPLOY_SERVER_ADDRESS "[ -d /var/www/old/ ] ... 退出 1" 何时:on_failure 允许失败:假 清理: 阶段:干净 脚本: - ssh $DEPLOY_SERVER_USER@$DEPLOY_SERVER_ADDRESS "rm -rf /var/www/old && rm -rf /var/www/new && rm -rf /var/www/acl" 何时:on_success 允许失败:假或者在我的 git 工作流程中将我的 master 恢复到所需的提交不是更合乎逻辑吗?
【问题讨论】:
【参考方案1】:是的,正确的方法是先还原代码,然后再次运行管道。
但在某些情况下,我们没有时间修复代码,需要紧急回滚。
但是看看你的管道,你的步骤构建是没有用的。
您还需要将git submodule
命令移至其他步骤,因为其他作业仅使用您的原始代码,而没有子模块的内容
【讨论】:
以上是关于问:Gitlab CI 谁重试旧管道的主要内容,如果未能解决你的问题,请参考以下文章