我想在jenkins中为远程git存储库构建一个自动部署作业,它只包含一个与playbook语法相同的配置文件。使用ansible-galaxy我在工作目录中安装必要的角色。但我不知道如何处理库存文件和主机变量。
我认为如果我构建一个包含本地服务器清单文件和host_Vars文件夹的ansible角色会更好。因此,通过在ansible slave工作目录上安装该角色并将库存名称作为参数传递,我可以在ansible文件夹中复制与该名称相关的文件,并在下一步中将其用作库存文件和vars,以便在远程服务器上进行部署。
首先,是否有人有更好的想法来动态制作库存文件?使用本地git服务器和存储库或shell命令?
主要问题:如何将这些文件从角色复制到ansible的同一目录? (它将被复制到../ ..文件目录中。)
答案 0 :(得分:0)
我想为远程git存储库构建一个自动部署作业 jenkins只包含一个与playbook语法相同的配置文件。
从Ansible 1.3开始,可以使用@语法从JSON / YAML文件加载额外的变量:
- extra-vars“@ some_file.json”同样从Ansible 1.3开始,额外的vars可以格式化为YAML,可以在命令行或文件中格式化为 上方。