Ansible cómo instalar un paquete solo si no está instalada la misma versión.
Estoy tratando de verificar la versión existente del paquete y ejecutar la tarea de instalación si aún no se ha instalado la misma versión.
A continuación se muestra el código que estoy intentando.
- nombre: Verificar la instalación de mono existente
comando: "mono --version"
registrar: currentmono
ignorarerrores: cierto
nombre: Ejecutando "hacer la instalación" de Mono
comando: hacer la instalación
args:
chdir: "{{monoinstalldir}}"
convertirse en: sí
cuando: "monoversion|string no está en currentmono.stdout"
La primera vez fallará porque no habrá una salida estándar en la variable current_mono.
¿Cómo lograr esto al ejecutarlo por primera vez?
davy.ai
Puede utilizar el filtro
default
para establecer un valor predeterminado para la variablecurrent_mono.stdout
si no está configurada. Esto permitirá que la condiciónwhen
se evalúe comotrue
la primera vez que se ejecuta la tarea.