我希望“验证”阶段在“测试”阶段完成后不开始运行,我希望“验证”阶段在“测试”完成后X分钟开始运行。
stages:
- configure-site
- test
- verify发布于 2021-12-06 07:11:41
您可以在“测试”和“验证”阶段之间添加一个新阶段。这个阶段可以简单地在给定的时间(以秒为单位)执行一个“睡眠”命令。
否则,您可以将睡眠命令添加到"test"-job的末尾。
请注意,作业在默认情况下不能运行超过60分钟(文档)。
stages:
- configure-site
- test
- wait
- verify
configure-site:
stage: configure-site
...
test:
stage: test
needs:
- "configure-site"
...
wait:
stage: wait
needs:
- "test"
script:
- sleep 600
verify:
stage: verify
needs:
- "wait"
...然而,正如对您的问题的评论已经指出的,我倾向于修改您的工作流程,以便在出版完成时通知CI,而不是仅仅等待指定的时间。我认为,“测试”作业应该自动等待,直到一切真正完成,而不是在不知道流程是否真的成功的情况下开始某个过程并返回某种成功。
否则,您可以使用外部状态检查来确保在测试后执行发布作业。当流程完成时,外部作业可以调用API (Gitlab集体文章)。
https://stackoverflow.com/questions/70238059
复制相似问题