小编PPC*_*PCM的帖子

从“--limit”选项之外的主机获取数据

我有以下剧本 ( playbook.yaml)

- hosts: myfirsthost[0]
  tasks:
    - name: Get a token
      slurp:
        src: /var/mytoken
      register: tokenFile

- hosts: myotherhosts
  vars:
    fileToken: "{{ hostvars[groups['myfirsthost'][0]]['tokenFile']['content'] | b64decode | replace('\n', '') }}"
  tasks:
    - debug:
    msg: The token {{fileToken}}
Run Code Online (Sandbox Code Playgroud)

当我为所有主机运行它时,它工作正常。

但是当我针对组中包含的单个主机myotherhosts(不在 group 中myfirsthosts)运行它时

ansible playbook.yaml --limit thesinglehost 
Run Code Online (Sandbox Code Playgroud)

它不执行第一个任务,然后变量无法初始化,这是预期的。

您是否知道我如何强制所有主机执行“获取令牌”任务,即使它们不在myfirsthost

ansible

5
推荐指数
1
解决办法
1515
查看次数

标签 统计

ansible ×1