Ответы пользователя по тегу Ansible
  • Ansible + SSH keys, как сделать задуманое?

    @gerasimov
    собственно ничего не мешает вам это сделать, нужно изменить описание ключей в roles/authorized_keys/vars/main.yml примерно так:
    ssh_users:
      - name: pupkin
        key: "{{ lookup('file', 'roles/authorized_keys/vars/pupkin.pub') }}" 
        servers: 
          - host1
          - host2
        state: present
      - name: root
        key: "{{ lookup('file', 'roles/authorized_keys/vars/guru.pub') }}"
        servers: 
          - host1
          - host2
        state: present
      - name: root
        key: "{{ lookup('file', 'roles/authorized_keys/vars/user.pub') }}"
        servers: 
          - host3
          - host4
        state: absent

    и добавить условие в roles/authorized_keys/tasks/main.yml:
    - name: Add ssh key.
        authorized_key: user="{{ item.name }}" key="{{ item.key }}" state="{{ item.state }}"
        when: "inventory_hostname in item.servers"
        with_items: "{{ ssh_users }}"

    при этом само собой имена перечисленные в servers должны совпадать с тем что написано в inventory
    Ответ написан
    Комментировать
  • Ansible. Можно ли передать в var_prompt (например) целевой хост?

    @gerasimov
    ---
    - hosts: "{{ host }}"
    
      vars_prompt:
        - name: host
          prompt: "Enter hostname"
          private: no
    
      tasks:
        - debug: msg="{{ host }}"

    вопрос только в том что файл с inventory с прописанным там хостом введеным через vars_prompt все равно должен быть, иначе не работает
    Ответ написан