Amr*_*tha 2 ansible ansible-2.x
我是 ansible 和 ansistrano 的新手。
我已通过在 yml 文件中提供分支名称作为变量来成功部署。
default_branch: "master"
ansistrano_git_branch: "{{default_branch}}"
Run Code Online (Sandbox Code Playgroud)
还在额外变量中提供分支名称。
ansistrano_git_branch: {{branch}}
ansible-playbook playbook-deploy.yml -i testing --extra-vars "branch=develop"
Run Code Online (Sandbox Code Playgroud)
但是如果分支不通过额外变量传递,如何提供默认值?
您可以使用以下方法将它们融合在一起
default_branch: "master"
ansistrano_git_branch: "{{ branch | default(default_branch) }}"
Run Code Online (Sandbox Code Playgroud)
或者简单地省略 defaul_branch (额外变量)并写入
ansistrano_git_branch: "{{ branch | default('master') }}"
Run Code Online (Sandbox Code Playgroud)
现在这两个命令都可以工作:
ansible-playbook playbook-deploy.yml -i testing --extra-vars "branch=develop"
Run Code Online (Sandbox Code Playgroud)
和
ansible-playbook playbook-deploy.yml -i testing
Run Code Online (Sandbox Code Playgroud)
您可以提示输入值:
vars_prompt:
- name: branch
prompt: 'Enter a branch to deploy'
default: develop
private: no
Run Code Online (Sandbox Code Playgroud)
注意:如果没有通过 extra-vars 提供值,ansible 仅提示分支。
归档时间: |
|
查看次数: |
288 次 |
最近记录: |