我想在Gitlab-ci中每天只进行一次重度测试。是否可以安排工作?或者是否可以将其设置为手动并使用API触发它?
答案 0 :(得分:2)
自GitLab 9.1以来可以安排管道,请参阅: https://docs.gitlab.com/ce/user/project/pipelines/schedules.html
目前(即版本9.2)可以按如下方式进行配置:
答案 1 :(得分:0)
这是一个补丁工作,但您可以使用带有 if 语句的触发器:
test_app:
stage: test
script:
- if [ -n "${DO_TESTS}" ]; then make test; fi
并在cron中定义进行调用的变量:
curl --request POST \
--form token=TOKEN \
--form ref=master \
--form "variables[DO_TESTS]=true" \
https://gitlab.example.com/api/v3/projects/9/trigger/builds
答案 2 :(得分:0)
这是可能的,并将在GitLab 11.6(12月22日)中进行改进
请参见gitlab-org/gitlab-ce issue 20422:
当前所有变量都显示在UI中: http://docs.gitlab.com/ce/ci/triggers/README.html#pass-build-variables-to-a-trigger
有时这是有问题的,例如当您将个人机密传递给构建时,该机密不能放置在受保护的变量中,并且对所有团队成员都不可见。
即使是某些非保护变量,如果它们在屏幕截图/屏幕共享中无意间传递了这些变量,也会造成问题。
提案
- 默认情况下,变量名仍然可见
- 默认情况下,变量值将使用星号
进行审查*******
- 可通过按钮切换变量值
- 该按钮仅适用于维护人员