打印出 ansible 主机名

Ale*_*der 2 amazon-ec2 ansible

我的 ansible playbook 的任务之一如下,这个 playbook 假设启动一个 EC2 实例:

TASK: [Demo] ******************************************************************
changed: [ec2-52-24-222-200.us-west-2.compute.amazonaws.com] => (item=ec2.instances)
Run Code Online (Sandbox Code Playgroud)

如何ec2-52-24-222-200.us-west-2.compute.amazonaws.com在 Ansible 上打印或创建名称为文件夹的文件夹

udo*_*dan 6

清单中定义的主机名存储在变量中inventory_hostname

因此,要打印出主机名,您将执行以下操作:

- debug: var=inventory_hostname
Run Code Online (Sandbox Code Playgroud)

要创建目录:

- file:
    path: "/tmp/{{ inventory_hostname }}"
    state: directory
Run Code Online (Sandbox Code Playgroud)

如果您的意思是“在 Ansible 上”要在 Ansible 控制主机上创建目录,则需要委派任务:

- file:
    path: "/tmp/{{ inventory_hostname }}"
    state: directory
  delegate_to: localhost
Run Code Online (Sandbox Code Playgroud)