En un mundo ideal, configurar Puppet para instalar el open-vm-tools
debería ser tan simple como esto:
class vm-tools {
package { 'open-vm-tools':
ensure => installed
}
package { 'open-vm-dkms':
ensure => installed
}
}
Pero, eso abre una lata fea de dependencia; instala X, que obviamente no pertenece a los servidores. A partir de Ubuntu 10.04, estos paquetes terminan recomendando el open-vm-toolbox
paquete de herramientas GUI:
# apt-cache depends open-vm-dkms
open-vm-dkms
Depends: dkms
Depends: make
Suggests: open-vm-toolbox
Recommends: open-vm-tools
# apt-cache depends open-vm-tools
open-vm-tools
Depends: libc6
Depends: libfuse2
Depends: libgcc1
Depends: libglib2.0-0
Depends: libicu44
Depends: libstdc++6
Recommends: open-vm-source
Recommends: open-vm-toolbox
Recommends: ethtool
Recommends: zerofree
Los paquetes recomendados siempre se instalan por defecto. Claramente, no es deseable instalar las dependencias X de forma predeterminada al instalar un paquete que se describe como "Herramientas CLI".
La solicitud de características contra Debian fue rechazada inmediatamente por este motivo, pero las cabezas más frías no prevalecieron en Ubuntu . Parece que en la última semana, hay algún reconocimiento de que este fue un cambio desaconsejado , pero eso no ayuda hasta que llegue el próximo lanzamiento de LTS.
El comportamiento de instalar los paquetes recomendados es fácilmente lo suficientemente desactivado en la línea de comandos con la --no-install-recommends
opción, pero a través de marionetas no hay apoyo para hacer esto, y una enmarañada lío de entradas que solicitan que el apoyo no han ido mucho más en 3 años.
La otra opción es simplemente deshabilitar los paquetes recomendados en todo el sistema a través de apt.conf
, lo cual es un cambio masivo en el comportamiento del paquete con impactos que van más allá de lo que me gustaría.
Me resigné a hacerlo de manera perezosa;
exec { 'open-vm-tools install':
command => '/usr/bin/apt-get install -y --no-install-recommends open-vm-dkms open-vm-tools',
creates => '/usr/lib/open-vm-tools',
}
Pero esto es claramente "hacerlo mal" . ¿Me estoy perdiendo algo que haga que todo funcione de la manera en que se supone que debe hacerlo, o esta es la mejor solución alternativa a este problema?
apt
proveedor es el predeterminado para Ubuntu y Debian, consulte la línea 13 de este archivo .