2

依存ロールの依存関係リストでAnsibleロールとその引数を指定するにはどうすればよいですか? どちらも別々の Git リポジトリに保存されていますか?

tomcatroleが role のバージョン 8 に依存する次の間違った例を考えてみましょうopenjdk

# Role tomcat at git+http://source/ansible/roles/tomcat.
# File tomcat/meta/main.yml.
---
dependencies:
  # When it retrieves role tomcat, ansible-galaxy retrieves role openjdk. 
  - src: git+http://source/ansible/roles/openjdk
    version: master

  # ansible-playbook invokes role openjdk, but fails to set openjdk_version.
  - { role: openjdk, openjdk_version: 8 }

依存関係の役割を指定する正しい方法は何openjdkですか?

Ansible ギャラクシー バージョン:

derek@derek-lubuntu:~/Projects/deployer$ ansible-galaxy --version
ansible-galaxy 2.3.0 (devel 947e0f264e) last updated 2016/11/10 11:45:16 (GMT -400)
  lib/ansible/modules/core: (detached HEAD 2584fca0ae) last updated 2016/11/04 12:08:44 (GMT -400)
  lib/ansible/modules/extras: (detached HEAD a1dcbf9ce5) last updated 2016/11/04 12:08:44 (GMT -400)
  config file = /home/derek/Projects/deployer/ansible.cfg
  configured module search path = Default w/o overrides

Ansible プレイブックのバージョン:

ansible-playbook 2.3.0 (devel 947e0f264e) last updated 2016/11/10 11:45:16 (GMT -400)
  lib/ansible/modules/core: (detached HEAD 2584fca0ae) last updated 2016/11/04 12:08:44 (GMT -400)
  lib/ansible/modules/extras: (detached HEAD a1dcbf9ce5) last updated 2016/11/04 12:08:44 (GMT -400)
  config file = /home/derek/Projects/deployer/ansible.cfg
  configured module search path = Default w/o overrides
4

1 に答える 1

1

openjdk_versionrole に引数として渡す方法が見つからなかったので、openjdk代わりにAndrey Rusanov提案に従い、変数openjdk_versionvars/main.ymlof of roleに追加しましたtomcat

---
openjdk_version: 8

meta/main.ymlsrcの依存関係のみが含まれるようになりましたopenjdk:

# From role tomcat at git+http://source/ansible/roles/tomcat.
# File tomcat/meta/main.yml.
---
dependencies:
  - src: git+http://source/ansible/roles/openjdk
    version: master
于 2016-11-11T17:03:17.997 に答える