Ansible脚本条件执行:两个条件的shell脚本会同时执行吗?
根据这个ansible脚本,只有当变量stop_app的值为'app1'时,第一个条件的shell脚本才会执行并将结果存储在shell_result1中。同样地,只有当变量stop_app的值为'app2'时,第二个条件的shell脚本才会执行并将结果存储在shell_result中。因此,两个条件的shell脚本不会同时执行。
- hosts: app_hosts
remote_user: root
gather_facts: false
tasks:
- name: 'stop app1'
ansible.builtin.shell: |
cd /opt/app1/bin
pwd
sh shutdown.sh
register: shell_result1
- debug:
var: shell_result1.stdout_lines
when: stop_app == 'app1'
- name: 'stop app2'
ansible.builtin.shell: |
cd /opt/app2/bin
pwd
sh shutdown.sh
register: shell_result
- debug:
var: shell_result.stdout_lines
when: stop_app == 'app2'
原文地址: https://www.cveoy.top/t/topic/lOnv 著作权归作者所有。请勿转载和采集!