Re: ansible - condition when package is installed...

Startseite
Anhänge:
Nachricht
+ (text/plain)
Nachricht löschen
Nachricht beantworten
Autor: Sven Velt
Datum:  
To: list
Betreff: Re: ansible - condition when package is installed...
Moin!

Norman Zimmer wrote:
> ich möchte gerne einen Ansible-Task nur ausführen wenn ein bestimmtes
> Packet noch nicht installiert ist.
>
> Hier als Beispiel zwei Tasks. Erst wird eine Debconf-Variable gesetzt,
> danach das Packet installiert.
> Das Packet wird freilich nur installiert wenn es noch net da ist. Die
> Variable aber jedes mal gesetzt.
> Das wird halt jedes mal als "changed" dokumentiert und ist überflüssig


Das klingt für mich direkt nach einem "Bug" im debconf-Modul von
Ansible. Ich hab mal eben in den Code geguggt (da ich sowas an einer
anderen Stelle auch grad mache...) und eigentlich holt er sich die
alten/vorhandenen Einstellungen her.

Was mir noch auffällt: Man MUSS bei "debconf-set-selections" (der
Befehl, der im Hintergrund verwendet wird) einen Datentyp übergeben --
das KANN das Ansible-Modul auch, es ist aber keine Pflicht. Ich seh aber
grad nicht, was er übergibt, wenn man es nicht setzt.

> ---
> - name: Set something before installing
> debconf: name='my-package' question='my-package/foo-info' value='{{ my-value }}'


... hier noch ein 'vtype="string"' anhängen und testen.

> # when: package my-package is not installed


... der Code wäre eigentlich im Modul...

> Alles was ich gefunden habe geht dahin, vorher einen Task auszuführen,
> per Shell-Script das Paket zu prüfen, sich per "register" zu merken
> und dann wieder abzufragen.


... oder per shell/command den Eintrag im debconf abfragen ;)

> Ein kleinwenig umständlich wie ich finde.


Allerdings.

> Ich hätte es gerne in der Art wie die auskommentierte Zeile oben ;)


Hardcore: 'changed_when: False'
Ja, aua, tut aber ;)

> gibt es sowas was ich brauche? ...


Durch Einwurf einer größerer Anzahl kleiner Münzen... usw. Die kennst ja
meine Handy-Nummer...

SCNR ;-D

Sven

PS: Ich seh grad noch, es steht sogar drin, dass "question", "vtype" und
"value" *zusammen* verwendet werden müssen. Es wird nur nicht
getestet/verwendet!

-- 
Leukämie     -> http://de.wikipedia.org/wiki/Leuk%C3%A4mie
Heilung      -> http://de.wikipedia.org/wiki/Knochenmark#Knochenmarkspende
Typisierung  -> http://www.knochenmarkspende.de/page.php?id=12
Warum&Fragen -> sven@???
-- 
Mailing-Liste der Linux User Schwabach (LUSC) e.V.
Vor und beim Posten bitte
        => http://lusc.de/List-Netiquette <=    und
        => http://lusc.de/List-Howto      <=    beachten. Danke!