当运行带有多个“的ansible playbook时,第一个库存文件被忽略-我";s

当运行带有多个“的ansible playbook时,第一个库存文件被忽略-我";s,ansible,Ansible,Ansible playbook在如下运行时似乎忽略了第一个清单文件。它只识别最后一个文件 您能建议如何在两台服务器上运行它吗?我正在运行ansible playbook 2.3.2.0 ansible-playbook -i test1.infrastructure -i test2.infrastructure deploy_server.yml PLAY [all] ********************************************* TASK [Gatherin

Ansible playbook在如下运行时似乎忽略了第一个清单文件。它只识别最后一个文件

您能建议如何在两台服务器上运行它吗?我正在运行ansible playbook 2.3.2.0

ansible-playbook -i test1.infrastructure  -i test2.infrastructure deploy_server.yml
PLAY [all] *********************************************

TASK [Gathering Facts] *********************************************
ok: [test2]

TASK [Get release package] *********************************************
 [WARNING]: Consider using unarchive module rather than running tar

changed: [test2]

TASK [Set latest_sourcetree] *********************************************
ok: [test2]
...
以下是清单文件的示例

测试1.1基础设施

##################
[test1]
##################
test1hostname
[test1:vars]
# Database
db_server=dbservername
dbschema=test1schema
oracle_sid=test1sid
oracle_port=1521
...
##################
[test2]
##################
test2hostname
[test2:vars]
# Database
db_server=dbservername
dbschema=test2schema
oracle_sid=test2sid
oracle_port=1521
...
测试2.2基础设施

##################
[test1]
##################
test1hostname
[test1:vars]
# Database
db_server=dbservername
dbschema=test1schema
oracle_sid=test1sid
oracle_port=1521
...
##################
[test2]
##################
test2hostname
[test2:vars]
# Database
db_server=dbservername
dbschema=test2schema
oracle_sid=test2sid
oracle_port=1521
...
部署_server.yml

  - hosts: all
  pre_tasks:
  - name: Get directory name in server release package
    shell: tar -tzf "{{server_release_package}}" | head -1 | sed -e 's/\/.*//'
    register: server_code_dir

  - name: Set latest_sourcetree variable = "{{server_root_dir}}/{{server_code_dir.stdout}}"
    set_fact:
      latest_sourcetree: "{{server_root_dir}}/{{server_code_dir.stdout}}"

  roles:
   - deploy_source_tree
部署资源树/tasks/main.yml



编辑-@ITIC的建议有效,将库存文件放在一个目录中并使用“-i dirname”运行,我仍然很好奇为什么要使用多个-我不工作,如果有人可以建议,我真的很感激,你能添加deploy_server.yml的内容吗?对不起,添加了角色的文件和任务文件。服务器的名称是否相同?有可能它们被覆盖了:对于2.5.4版本,请尝试将清单文件放在一个文件夹中,并指定一个文件夹作为清单。@Itic您的建议有效,谢谢。我仍然很好奇为什么多重-我不工作,如果有人能建议,我真的很感激你能添加deploy_server.yml的内容吗?对不起,添加了角色的文件和任务文件。你对服务器使用相同的名称吗?有可能它们被覆盖了:对于2.5.4版本,请尝试将清单文件放在一个文件夹中,并指定一个文件夹作为清单。@Itic您的建议有效,谢谢。我仍然很好奇为什么我不工作,如果有人能给我建议,我真的很感激