Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Erro com o DPKG

Olá, boa tarde! Estava seguindo o material de estudo do professor quando me deparo com um erro na hora da instalação das dependencias.

TASK [Install dependencias] ****************************************************
fatal: [172.16.14.196]: FAILED! => {"cache_update_time": 1710781787, "cache_updated": true, "changed": false, "msg": "'/usr/bin/apt-get -y -o \"Dpkg::Options::=--force-confdef\" -o \"Dpkg::Options::=--force-confold\"       install 'apache2=2.4.52-1ubuntu4.8' 'ghostscript=9.55.0~dfsg1-0ubuntu5.6' 'libapache2-mod-php=2:8.1+92ubuntu1' 'mysql-server=8.0.36-0ubuntu0.22.04.1' 'php=2:8.1+92ubuntu1' 'php-bcmath=2:8.1+92ubuntu1' 'php-curl=2:8.1+92ubuntu1' 'php-imagick=3.6.0-4ubuntu1' 'php-intl=2:8.1+92ubuntu1' 'php-json=2:8.1+92ubuntu1' 'php-mbstring=2:8.1+92ubuntu1' 'php-mysql=2:8.1+92ubuntu1' 'php-xml=2:8.1+92ubuntu1' 'php-zip=2:8.1+92ubuntu1'' failed: E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem. \n", "rc": 100, "stderr": "E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem. \n", "stderr_lines": ["E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem. "], "stdout": "", "stdout_lines": []}

Fui na segunda maquina virtual e fiz o comando 'sudo dpkg --configure -a' depois disso deu tudo certo. Gostaria de saber se teria como colocar esse comando no próprio Playbook para que eu n tivesse de ir na segunda maquina virtual fazer esse comando.

1 resposta
solução!

Oii, Raphael, tudo bem?

Dá sim! :)

Você pode adicionar uma nova tarefa para executar esse comando antes da tarefa de instalação das dependências.

Vou deixar um exemplo abaixo:

---
- hosts: all
  tasks:
    - name: Corrigir possíveis interrupções do dpkg
      ansible.builtin.command:
        cmd: sudo dpkg --configure -a
      become: yes

    - name: Install dependencias 
      ansible.builtin.apt:
        pkg: 
          - apache2
          - ghostscript
          - libapache2-mod-php
          - mysql-server
          - php
          - php-bcmath
          - php-curl
          - php-imagick
          - php-intl
          - php-json
          - php-mbstring
          - php-mysql
          - php-xml
          - php-zip
        state: latest
        update_cache: yes
      become: yes

No exemplo acima, a primeira tarefa seria Corrigir possíveis interrupções do dpkg - ela irá executar o comando que você foi informado a fazer em todas as suas VMs antes da tarefa de instalação das dependências.

Se outra dúvida surgir, estamos disponíveis.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

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