是否可以在GitLab CI中按计划触发webhook?

时间:2020-05-20 12:31:07

标签: ansible gitlab gitlab-ci ansible-tower ansible-awx

我在GitLab中有一个Ansible项目,可通过GitLab CI Runner按计划运行剧本。

我要将Playbook执行从跑步者转移到AWX(Ansible Tower)。 AWX支持通过GitLab中的webhook触发作业模板,但是在GitLab中我找不到通过时间表触发webhook的方法。

是否可以在GitLab CI中按计划触发webhhok?

2 个答案:

答案 0 :(得分:0)

The fine manual显示每个管道都可以有时间表,就像a cursory search也会显示出来

答案 1 :(得分:0)

为什么不使用 AWX 中的 Scheduling 功能?运行一个什么都不做的 GitLab CI 作业只是在 AWX 中触发作业是没有意义的。

如果您的用例更复杂,并且您必须使用 GitLab 中的时间表,您可以使用以下内容:

stages:
  - deploy

deploy:
  stage: deploy
  image: your_docker_image_containing_awx_cli
  script:
    - awx --conf.host $AWX_HOST --conf.token $AWX_TOKEN -f human job_templates launch 'Your_deployment_job_name' --monitor --filter status

您可以使用 AWX CLI 准备自己的容器映像,也可以使用一些 Python 映像并将其作为作业定义中的 script 的一部分每次安装。