4
respostas

o item é falso, claramente o with_items esta dentro do bloco tasks, portanto fazendo parte dela

  • hosts: all tasks:
    • name: 'Instala pacotes de dependencia do sistema operacional' apt: name: "{{ item }}" state: latest become: yes with_items:
      • php5
      • apache2
      • libapache2-mod-php5
      • php5-gd
      • libssh2-php
      • php5-mcrypt
      • mysql-server-5.6
      • python-mysqldb
      • php5-mysql
4 respostas

Olá José Zadir, tudo bem? Na verdade, como o instrutor fala no vídeo anterior a essa atividade o with_items ele fica de fato no nível da task, note que para fazer parte da task ele precisaria está dentro do apt, ou seja ele deveria ficar no mesmo nível que o state, no caso para ele está dentro da task ele precisaria ficar da seguinte forma:

- hosts: all 
  tasks:
    - name: 'Instala pacotes de dependencia do sistema operacional'
    apt: 
      name: "{{ item }}"
      state: latest
      with_items:
        - php5
        - apache2
        - libapache2-mod-php5
        - php5-gd
        - libssh2-php
        - php5-mcrypt
        - mysql-server-5.6
        - python-mysqldb
        - php5-mysql
    become: yes

Espero ter esclarecido sua dúvida!

Fiquei com a mesma dúvida. Claramente with_items está aninhado no mesmo nível de name e state, dentro de apt, portanto. E se está dentro de apt, não pode estar no mesmo nível de tasks. Ou o arquivo está formatado errado (quanto ao aninhamento).

Mesmo que estivesse no mesmo nível de apt, ainda assim não seria no mesmo nível de tasks:

- hosts: all
  tasks:
    - name: 'Install php7.3, apache2 and wordpress dependencies'
      apt:
        name: "{{ item }}"
        state: latest
      become: yes
      with_items:
        - php7.3
        - apache2
        - libapache2-mod-php7.3
        - php-gd
        - php-ssh2
        - python-mysqldb
        - php-mysql
        - mariadb-server-10.3

Entendi sua dúvida Flávio! Então a questão é que a task é a partir do apt, e note que o with_items está no mesmo nível ou seja igual com o apt, então por isso ele não faz parte da task, isso já que o - name: é só pra nomear mesmo, ou seja pra dar um rotolo a task. Portanto o with_items realmente não está dentro da task, para que ele precisa ficar da seguinte forma:

apt: 
      name: "{{ item }}"
      state: latest
      with_items:
        - php5
        - apache2

Como já tinha mencionado, o que está dentro da task é o que está identado com duas casas em relação ao apt. Espero ter esclarecido sua dúvida Flávio!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software