我在GitLab中有一个Ansible项目,可通过GitLab CI Runner按计划运行剧本。
我要将Playbook执行从跑步者转移到AWX(Ansible Tower)。 AWX支持通过GitLab中的webhook触发作业模板,但是在GitLab中我找不到通过时间表触发webhook的方法。
是否可以在GitLab CI中按计划触发webhhok?
答案 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
的一部分每次安装。