Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

aptitude: not found

Olá pessoal!

Ao provisionar o servidor utilizando o bootstrap (https://cursos.alura.com.br/course/devops-com-vagrant-e-puppet/task/5027) estou recebendo o seguinte erro:

==> web: /tmp/vagrant-shell: 14: /tmp/vagrant-shell: aptitude: not found
The SSH command responded with a non-zero exit status. Vagrant
assumes that this means the command failed. The output for this command
should be in the log above. Please read the output to determine what
went wrong.

Verifiquei que o servidor provisionado na Amazon não veio com o aptitude por padrão.

Para resolver, executei o seguinte procedimento:

Entre as linhas:

rm /tmp/puppetlabs-release-precise.deb
aptitude update

Adicionei a linha:

apt-get install -y aptitude

Consegui instalar o aptitude mas ocorreu um novo erro na hora de instalar o puppet

The following NEW packages will be installed:
  facter{a} fonts-lato{a} hiera{a} javascript-common{a} libjs-jquery{a} libruby{a} libruby2.3{a} puppet puppet-common{ab} rake{a} ruby{a}
  ruby-deep-merge{a} ruby-did-you-mean{a} ruby-json{a} ruby-minitest{a} ruby-net-telnet{a} ruby-power-assert{a} ruby-shadow{a} ruby-test-unit{a}
  ruby2.3{a} rubygems-integration{a} unzip{a} virt-what{a} zip{a}
0 packages upgraded, 24 newly installed, 0 to remove and 52 not upgraded.
Need to get 8,239 kB of archives. After unpacking 37.3 MB will be used.
The following packages have unmet dependencies:
 puppet-common : Depends: libaugeas-ruby which is a virtual package and is not provided by any available package.
 or
                          libaugeas-ruby1.9.1 which is a virtual package and is not provided by any available package.
 or
                          libaugeas-ruby1.8 which is a virtual package and is not provided by any available package.

open: 111; closed: 9; defer: 106; conflict: 106                                                                                                              .The following actions will resolve these dependencies:

     Keep the following packages at their current version:
1)     puppet [Not Installed]
2)     puppet-common [Not Installed]



Accept this solution? [Y/n/q/?] y
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 52 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.

Pensei em resolver essa dependência manualmente mas fiquei na dúvida se estava indo pelo caminho certo.

Alguém tem alguma sugestão ou passou por isso?

5 respostas

Oi Nelson, tudo bem? Tá dizendo que requer o Ruby, mas isso é minimamente estranho visto que o Vagrant usa Ruby no meio do caminho, será que a máquina em si é quem não tem o Ruby para o puppet-common usar?

Esse erro foi ao provisionar na Amazon ou localmente?

solução!

Oi Wanderson! Blz?

O erro foi ao provisionar o servidor na Amazon. Alterei o bootstrap.sh para ficar da seguinte forma:

#!/bin/sh
set -e -x

if which puppet > /dev/null ; then
    echo "Puppet is already installed"
    exit 0
fi

export DEBIAN_FRONTEND=noninteractive
wget -qO /tmp/puppetlabs-release-xenial.deb https://apt.puppetlabs.com/puppet5-release-xenial.deb

dpkg -i /tmp/puppetlabs-release-xenial.deb
rm /tmp/puppetlabs-release-xenial.deb
echo Installing puppet
apt-get install -y augeas-lenses libaugeas0 libxslt1.1 puppet puppet-common ruby-augeas ruby-nokogiri ruby-rgen ruby-safe-yaml ruby-selinux
echo "Puppet installed!"

Instalando essa lista de pacotes, funcionou.

Ótimo Nelson, pode acontecer isso mesmo, não temos a garantia de que a máquina do servidor virá com todos os pacotes que queremos, no geral é sempre bom instalá-los.

Problema resolvido então?

Foi resolvido sim Wanderson.

Além de especificar os pacotes precisei atualizar o nome da versão do Ubuntu.

Espero que ajude alguém!

Abs.

Sensacional Nelson, obrigado por compartilhar a solução aqui. Com certeza vai ajudar alguém!

Abraço!