如何将文件从ansible角色复制到ansible主目录

时间:2016-03-08 13:41:29

标签: jenkins ansible ansible-playbook

我想在jenkins中为远程git存储库构建一个自动部署作业,它只包含一个与playbook语法相同的配置文件。使用ansible-galaxy我在工作目录中安装必要的角色。但我不知道如何处理库存文件和主机变量。

我认为如果我构建一个包含本地服务器清单文件和host_Vars文件夹的ansible角色会更好。因此,通过在ansible slave工作目录上安装该角色并将库存名称作为参数传递,我可以在ansible文件夹中复制与该名称相关的文件,并在下一步中将其用作库存文件和vars,以便在远程服务器上进行部署。

首先,是否有人有更好的想法来动态制作库存文件?使用本地git服务器和存储库或shell命令?

主要问题:如何将这些文件从角色复制到ansible的同一目录? (它将被复制到../ ..文件目录中。)

1 个答案:

答案 0 :(得分:0)

  1. 你可以使用ansible-playbook -i 10.0.0.0,/ var / lib / jenkins / somerole / main.yml -e“some_var = xxx”
  2. Ansible dynamic inventory:ansible -i openstack.py all -m ping
  3.   

    我想为远程git存储库构建一个自动部署作业   jenkins只包含一个与playbook语法相同的配置文件。

    • Variables Defined in Inventory
    • 从Ansible 1.3开始,可以使用@语法从JSON / YAML文件加载额外的变量:

      - extra-vars“@ some_file.json”同样从Ansible 1.3开始,额外的vars可以格式化为YAML,可以在命令行或文件中格式化为    上方。