在Ansible剧本中,在Serial位置1(在“ 1”位置)使用Group_vars变量是否有任何机会

时间:2019-04-28 09:00:01

标签: ansible

如果我在Group_vars中声明一个值为1或2或任何整数的变量,则如果我在剧本中使用该变量,则它适用于所有模块(或)位置,但不适用于SERIAL :(此位置)确实以串行方式运行剧本。错误发生是因为变量未定义

我曾经尝试过在各处使用剧本中的已声明变量,例如在命令节中调用它,或者在所有位置在任务中给定变量,它都调用了我声明的值,但并未在SERIAL中调用该值: (这个地方)在group_vars带有一个声明为int值的变量,发生错误是因为该变量未定义

在主持人中 [server] 192.168.1.71 192.168.1.72

在Group_vars / server.yml中

 ---
 Serial_Value: 1
 become_condition: yes
 become_user_as: root

在playbooks / serial.yml中

---
- hosts: server
  serial: "{{ Serial_Value }}"
  become: "{{ become_condition }}"
  become_user: "{{ become_user_as }}"
  gather_facts: no
  tasks:
    - name: task_one
      command: echo "{{ Serial_Value }}" >output3.txt

我需要解决方案,让Serial_Value调用我在group_vars中声明的值,或者我需要完成它的原因。

1 个答案:

答案 0 :(得分:0)

您必须使用 set_fact 模块或 environment 模块为变量赋值。

set_fact:
  serial: "{{ Serial_Value }}"