在Jenkins流水线中使用Ansible插件限制目标库存组
在Jenkins流水线的ansiblePlaybook步骤中限制执行主机组
没问题,我来帮你搞定这个需求!在Jenkins流水线的ansiblePlaybook步骤里,其实专门提供了limit参数,用法和你在命令行里用-l/--limit完全一致,直接就能指定要执行的主机组。
你只需要在原有的ansiblePlaybook配置里加上limit参数,把目标组用逗号分隔就行。修改后的流水线代码如下:
stage ("Stuff"){ steps { println "########################### +Install Stuff ###########################" ansiblePlaybook becomeUser: 'root', installation: 'Ansible', inventory: 'hosts/my_file/hosts', playbook: 'main.yml', extraVars: [ Var_1: "1", var_2: "2"], limit: 'grp_a,grp_b' // 新增的limit参数,指定仅在这两个组执行 } }
补充说明:
- 这个
limit参数支持所有Ansible原生的limit语法,比如你想排除某个组,可以写grp_a:!grp_c;或者指定单个主机m_1,都是可以的。 - 它的作用和你在命令行执行
ansible-playbook main.yml -i hosts/my_file/hosts -l grp_a,grp_b完全相同,只是适配了Jenkins流水线的语法格式。
内容的提问来源于stack exchange,提问作者Imeliator
相关产品推荐
相关产品推荐

