2016-10-21 19 views
0

由於JOB_NAME在Jenkins作業中可用作變量。ansible:我想在jenkins中使用特定JOB_NAME時使用group_var

我想,當有在JOB_NAME可變

某些字符串,以便根據不同的詹金斯的工作我可以註冊不同的變量來選擇一個特定的變量。

我想在group_vars下面的東西,不知道它是否會工作。

command: echo "{{ lookup('env','JOB_NAME') }}" 
     register: jenkins_job_name 
when: installation in jenkins_job_name 
    - topology: topology-02 

回答

1

可以定義可用的拓撲列表中的某個地方你的小組增值經銷商,然後選擇一個與set_fact取決於JOB_NAME值。

例如:

- hosts: localhost 
    gather_facts: no 
    vars: 
    topologies: 
     prod: foo 
     dev: bar 
    tasks: 
    - set_fact: topology="{{ topologies[lookup('env','JOB_NAME')] | default('unknown') }}" 
    - debug: var=topology 

這將設置:

  • topology=foo如果JOB_NAME=prod
  • topology=bar如果JOB_NAME=dev
  • topology=unknown否則

您可能有一個複雜的拓撲配置對象,而不是簡單的foo/bar字符串。

+0

謝謝你會試試這個主要它應該工作 –