#ansible #tags #ansible-2.x
#ansible #Теги #ansible-2.x
Вопрос:
У меня есть следующая пьеса. Если я запускаю с —tags «decommision», были запущены только 2 задачи, что является правильным. Но когда я запускаю playbook с помощью —tags «deliver», последние задачи все еще выполняются, независимо от того, что их теги являются «списанием». Кажется, я не могу понять. Мой отступ тоже в порядке.
tasks:
- name: Change PS 1
command: sed -i 's/PS1="[\u@\h \W]/PS1="[\u@\H \W]/g' /etc/bashrc
tags: deliver, update
- name: Update Info In CMDB
uri:
url: "update url"
method: POST
body: {"ip_list": ["{{ ansible_host }}"]}
body_format: json
tags: deliver, update
- name: Remove Old Targets
uri:
url: "remove url"
method: POST
body: {"job_name": "{{ jobname }}", "host_list": ["{{ ansible_host }}"]}
body_format: json
tags: deliver, decommision, update
- name: Associate Host With Prometheus
uri:
url: "prometheus url"
method: POST
body: {"ip_list": [ "{{ ansible_host }}" ]}
body_format: json
tags: deliver
- name: Register monitoring job
uri:
url: "register url"
method: POST
body: {"host_list": ["{{ ansible_host }}"]}
body_format: json
tags: deliver, update_hostname
- name: Remove Association Host With Prometheus
uri:
url: "remove url"
method: POST
body: {"ip_list": [ "{{ ansible_host }}" ]}
body_format: json
tags: decommision
Комментарии:
1. Я не могу воспроизвести проблему. Должна быть какая-то причина, не очевидная из опубликованного вами кода. Вы должны минимизировать код и попытаться изолировать проблему. Например, начните с «debug» только в каждой задаче и попытайтесь воспроизвести проблему.
Ответ №1:
Работает так, как ожидалось
shell> cat pb.yml
- hosts: localhost
gather_facts: false
tasks:
- debug:
msg: Change PS 1
tags: deliver, update
- debug:
msg: Update Info In CMDB
tags: deliver, update
- debug:
msg: Remove Old Targets
tags: deliver, decommision, update
- debug:
msg: Associate Host With Prometheus
tags: deliver
- debug:
msg: Register monitoring job
tags: deliver, update_hostname
- debug:
msg: Remove Association Host With Prometheus
tags: decommision
дает (сокращенный)
shell> ansible-playbook pb.yml --tags "deliver" | grep msg:
msg: Change PS 1
msg: Update Info In CMDB
msg: Remove Old Targets
msg: Associate Host With Prometheus
msg: Register monitoring job