Eu uso o puppet para gerenciar vários servidores Debian no trabalho, parte se isso inclui a instalação de pacotes. Um pacote que instalo em vários sistemas é o nmap, usado para verificar se as regras do firewall estão configuradas corretamente. No Debian 7.0, se você tiver o APT :: Install-Recommendends habilitado, receberá um monte de porcaria junto com o nmap (veja abaixo).
Não quero toda a porcaria que instala o nmap com as recomendações ativadas incluídas. Uma solução seria atualizar minha configuração do apt com APT::Install-Recommends "0";
. Mas não quero que isso seja o padrão. Na maioria das vezes eu quero recomendações incluídas. Os pacotes recomendados são ótimos, e não estou recebendo toneladas de coisas que não preciso. Mas existem alguns pacotes que estão trazendo coisas que eu não quero / preciso.
package { 'nmap':
ensure => installed,
require => Class['apt'],
}
Existe algum método para controlar se as recomendações são instaladas via fantoche ao usar o provedor de pacotes 'apt'? Não quero mexer com o provedor do aptitude, pois o apt e o aptitude não são totalmente compatíveis um com o outro.
With recomenda
root@fw-01:~# apt-get install nmap
Reading package lists... Done
Building dependency tree
Reading state information... Done
...
The following NEW packages will be installed:
fonts-droid fonts-liberation ghostscript gnuplot gnuplot-nox groff gsfonts
imagemagick imagemagick-common libblas3 libblas3gf libcroco3 libcupsimage2
libdjvulibre-text libdjvulibre21 libexiv2-12 libgfortran3 libgs9
libgs9-common libijs-0.35 libilmbase6 libjbig2dec0 liblcms1 liblcms2-2
liblensfun-data litesting firewall blensfun0 liblinear-tools liblinear1 liblqr-1-0
libmagickcore5 libmagickcore5-extra libmagickwand5 libnetpbm10 libopenexr6
libpaper-utils libpaper1 librsvg2-2 librsvg2-common libsvm-tools libwmf0.2-7
netpbm nmap poppler-data psutils ufraw-batch
0 upgraded, 45 newly installed, 0 to remove and 0 not upgraded.
Need to get 32.0 MB of archives.
After this operation, 93.8 MB of additional disk space will be used.
Do you want to continue [Y/n]?
Sem Recomenda
root@fw-01:~# apt-get --no-install-recommends install nmap
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
libblas3 libblas3gf libgfortran3 liblinear1
Suggested packages:
liblinear-dev
Recommended packages:
liblinear-tools
The following NEW packages will be installed:
libblas3 libblas3gf libgfortran3 liblinear1 nmap
0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.
Need to get 4,405 kB of archives.
After this operation, 17.4 MB of additional disk space will be used.
Do you want to continue [Y/n]?
apt
classe.Respostas:
Agora isso é possível através da configuração "install_options" no tipo de pacote do Puppet: http://docs.puppetlabs.com/references/latest/type.html#package-attribute-install_options
Por exemplo:
O item acima garante que a opção "--no-install-recommends" seja passada para o apt-get, que ignora os pacotes recomendados apenas para esta instalação: http://manpages.ubuntu.com/manpages/precise/man8/apt-get .8.html
fonte
Encontrei as seguintes soluções até agora, mas elas não são ideais.
Aguarde até que um patch adicionado recentemente seja lançado na versão e atualização.
Simplesmente use um exec para instalar em vez do pacote e use um exec.
Atualize globalmente minha configuração do apt e gaste tempo para encontrar todas as coisas ausentes e ajustar meus manifestos para também instalar pacotes que eu queria que só fossem instalados por recomendação.
Defina a variável de ambiente APT_CONFIG antes de executar o fantoche.
fonte