Size: a a a

ansible — русскоговорящее сообщество

2021 December 09

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
подскажие, я наверное не туда делаю. делаю плейбук по которому надо настроить один хост VPN сервер создание и т.п. все ок.
И надо так же перенастроить mikrotik (у меня 2 группы routers и servers с хостами temp и vpn соответсвенно)
Делаю так:
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
---
 
- name: Update configuration temp router

 hosts: temp,vpn

 gather_facts: false

 vars_prompt:

   - name: sitename
     prompt: input name for new site
     private: no
     default: site_name

   - name: MKnum
     prompt: input number for this mikrotik on this site (by default 1)
     private: no
     default: 1

   - name: Ovpn_password
     prompt: input password for this Mikrotik
     private: yes

   - name: networkpref
     prompt: input next preffix for network 10.100.x.0
     private: no
     default: 255

     #  hosts: vpn
 vars:
   name_mk: "{{sitename}}_MK{{MKnum}}"

 tasks:
     - name: Create password
       ansible.builtin.lineinfile:
         path: /etc/ansible/tmp/pwdtest
         line: "{{name_mk}} {{Ovpn_password}}"
         create: yes
       when: "'vpn' in {{group_names}}"
     - name: Create ip address for new Site
       ansible.builtin.lineinfile:
         path: /etc/openvpn/ccd/{{name_mk}}
         line: "ifconfig-push 10.100.{{networkpref}}.{{MKnum}} 255.255.0.0"
         create: yes
       when: "'vpn' in {{group_names}}"

     - name: change_name
       routeros_command:
         commands: /system identity set name="{{sitename}}_Mk{{MKnum}}"
       register: system_identity
       when: "'temp' in {{group_names}}"
     - name: debug print
       debug: var=system_identity.stdout_lines
       when: "'temp' in {{group_names}}"
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
но все таски пропускаются:
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
что я делаю не так в этой строке when: "'temp' in {{group_names}}"
источник

ММ

Микола Мельникович... in ansible — русскоговорящее сообщество
Кажись в условии нужно без  "
источник

ММ

Микола Мельникович... in ansible — русскоговорящее сообщество
У меня такое есть )
when: '"Empty token" in result.content'
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
убрал ковычик  ругается. может какой правильное условие написать мне нужно что бы одни таски выполнились для одного хоста другие для другого
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
у меня такое ощущения что я от неопытности вообще не туда смотрю.
источник

ММ

Микола Мельникович... in ansible — русскоговорящее сообщество
Сделай поиск в этой группе по group_name
Не единожды упоминалось подобное
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
можно перефразировать не догнал
источник

ММ

Микола Мельникович... in ansible — русскоговорящее сообщество
Ctrl+F и туды вставить "group_name"
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
этоя проделал. видимо опыта очень мало, не могу найти подходящее.
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
Переслано от Константин Сергеевич...
when:
   - node_state == "build"
   - '"acms_nodes_build" in group_names'
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
единствеено что я вижу подходящим
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
точнее нашел
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
- name: Speciall ops for special nodes
 command: "/usr/bin/special.sh"
 when: "'special' in {{ group_names }}"
источник

ММ

Микола Мельникович... in ansible — русскоговорящее сообщество
ХЗ.  Нормально работает:
     - name: Debug
      debug:
        msg: "Ok"
      when:
        - '"Empty token" in result.content'
        - '"testing" in group_names'
источник

АМ

Андрей Марийко... in ansible — русскоговорящее сообщество
да вроде вдуплил, сейчас доделаю все поделюсь для истории
источник