在ansible中,是否有注册角色结果的方法?

在ansible中,是否有注册角色结果的方法?,ansible,ansible-role,Ansible,Ansible Role,我基本上只尝试运行一个特定的角色,如果另一个角色能够无错误地运行。这可能吗 我尝试过类似的方法,但效果并不理想 tasks: - include_role: name: user_role register: users - include_role: name: another_role when: users is success 查看已注册的变量users。您将看到没有属性success。因此不可能对其进行测试。比如说 - debug: var: user

我基本上只尝试运行一个特定的角色,如果另一个角色能够无错误地运行。这可能吗

我尝试过类似的方法,但效果并不理想

tasks:
- include_role:
    name: user_role
  register: users
- include_role:
    name: another_role
  when: users is success

查看已注册的变量
users
。您将看到没有属性
success
。因此不可能对其进行测试。比如说

- debug:
    var: users
    - block:
        - include_role:
            name: user_role
      rescue:
        - set_fact:
            role_success: false
        - meta: clear_host_errors

    - include_role:
        name: another_role
      when: role_success|default(true)
应该给出(如果没有改变)

问:“有没有办法注册角色的结果?”

A:是的。它是。使用。比如说

- debug:
    var: users
    - block:
        - include_role:
            name: user_role
      rescue:
        - set_fact:
            role_success: false
        - meta: clear_host_errors

    - include_role:
        name: another_role
      when: role_success|default(true)