如何在整个部分切换用户?

How to switch user in ansible for entire sections?

我完全了解 Ansible 中的 become_user 功能,但有些东西我并不真正了解:如何 轻松地 以不同用户的身份执行操作而无需必须为每个用户指定用户。

为每个任务添加 become 似乎真的很痛苦,我正在寻找一种方法来为多个任务切换当前用户。

必须为每个 "block" 创建新的任务文件会使整个部署逻辑很难遵循。

只有两个选项:包含或阻止。

Includes 是 Ansible 1 中的唯一选项:

- include: run_as_user_x.yml
  become: true
  become_user: x

在 Ansible 2 中引入了 blocks 概念:

- block:
    - some task
    - another task
    - task n
  become: true
  become_user: x