在gitlab-ci中安排或触发作业

时间:2016-12-14 09:38:01

标签: gitlab-ci

我想在Gitlab-ci中每天只进行一次重度测试。是否可以安排工作?或者是否可以将其设置为手动并使用API​​触发它?

3 个答案:

答案 0 :(得分:2)

自GitLab 9.1以来可以安排管道,请参阅: https://docs.gitlab.com/ce/user/project/pipelines/schedules.html

目前(即版本9.2)可以按如下方式进行配置:

  1. 导航到项目的管道➔计划,然后单击新建计划按钮。
  2. 填写表格
  3. 点击保存管道计划以使更改生效。

答案 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

请参阅文档:https://docs.gitlab.com/ce/ci/triggers/README.html

答案 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

     

有时这是有问题的,例如当您将个人机密传递给构建时,该机密不能放置在受保护的变量中,并且对所有团队成员都不可见。

     

即使是某些非保护变量,如果它们在屏幕截图/屏幕共享中无意间传递了这些变量,也会造成问题。

     

提案

     
      
  • 默认情况下,变量名仍然可见
  •   
  • 默认情况下,变量值将使用星号*******
  • 进行审查   
  • 可通过按钮切换变量值
  •   
  • 该按钮仅适用于维护人员
  •   

https://gitlab.com/gitlab-org/gitlab-ce/uploads/1dc4f635096c16322801f3deeecf09ab/image.png