Eu mantenho um bando de servidores EC2 com ansible. Os servidores são atualizados regularmente e atualizados usando o módulo apt .
Quando tentei atualizar manualmente um servidor, recebi a seguinte mensagem:
$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages were automatically installed and are no longer required:
linux-headers-3.13.0-29 linux-headers-3.13.0-29-generic
linux-headers-3.13.0-32 linux-headers-3.13.0-32-generic
linux-image-3.13.0-29-generic linux-image-3.13.0-32-generic
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Existe uma maneira de executar sudo apt-get autoremove
com ansible?
O suporte para a
apt-get
opção--auto-remove
agora está embutido no Ansibleapt
(optionautoremove
) a partir da versão 2.1 A documentação oficial está em http://docs.ansible.com/ansible/apt_module.htmlA fusão aconteceu aqui .
Observe que
autoclean
também está disponível a partir de 2.4Este método simplificado requer apenas uma tarefa
Você pode fazer isso com
command
(não testado):No entanto, acho que pode ser arriscado executar
autoremove
automaticamente. Devido a erros de administração do sistema que você cometeu no passado (estes podem estar em seu código ansible), é possível que um pacote necessário possa, em algum momento, ser falsamente detectado como autoremovível e isso pode impedir o funcionamento do servidor. Por outro lado, não é nada demais deixar pacotes não utilizados no sistema, e não é muito comum, a menos que você faça uma grande mudança na configuração do servidor.Portanto, eu evitaria a remoção automática de pacotes sem a confirmação de um humano.
Esta é uma variação da solução fornecida por Antonis Christofides. É testado e funciona para mim. Evitei usar ignore_errors no comando check. Caso contrário, geralmente adota a mesma abordagem.
Uma variação que destaca a mudança nos pacotes (a primeira tarefa será apropriadamente colorida em verde ou amarelo):
Eu gosto desse método simplificado e adiciono alguns cheques e mensagens impressas para mim.
Obrigado por cortopia e Dave James Miller .