Seite 1 von 1

[Gelöst] Wie update ich ein bestehendes Paket richtig?

Verfasst: 26 Okt 2017, 13:04
von krodon
Hallo,

ich stelle mir gerade die Frage wie ich ein bestehendes Paket updaten kann. Am besten so, dass alle Clients, die dieses installiert bekommen haben, sich das Update automatisch ziehen. In der Dokumentation habe ich nichts passendes hierzu gefunden.

Habe ich bereits gelöst.
Ich habe bereits Bei einem Paket erfolglos versucht ein Update durchzuführen.
Hierzu habe ich die *.opsi Datei gelöscht, in der control die neuen Werte eingefügt, ebenso in der Setup. Weil ich ordentlich auch noch den Changelog editiert :D
Danach habe ich noch ein opsi-package-manager -iU productid.opsi ausgeführt. Leider wurde das Update nicht automatisch ausgeführt.

VG

Krodon

Re: Wie update ich ein bestehendes Paket richtig?

Verfasst: 26 Okt 2017, 16:26
von l.gremme
Hallo Krodon,

Der Befehl für das neu installieren und automatisch auf Setup stellen lautet:

Code: Alles auswählen

opsi-package-manager -S -i softprod_1.0-5.opsi
OPSI sollte je nach Konfiguration der Setup-Datei das Produkt deinstallieren und anschließend neu installieren.

Durch den Parameter -U soll das gewünschte Produkt auf Update gesetzt werden. Wenn es keine Update-Datei gibt, wird nichts ausgerollt.
Den Update-Parameter habe ich gerade nicht zur Hand. Der einfachste Weg, ohne Recherche ein Testprodukt zu erstellen.

VG Lars

Re: [Gelöst] Wie update ich ein bestehendes Paket richtig?

Verfasst: 30 Okt 2017, 06:44
von GEI
vielleicht hilft dir auch ein kleines Quick&Dirty-Script 'opsi-checkinstall.sh' für die Console:

Code: Alles auswählen

#!/bin/sh
OPSIADMIN="/usr/bin/opsi-admin -dS method "
DOMAIN=$($OPSIADMIN getDomain)

if [ "$#" -ne "2" ] ; then
        echo "(Test-) Rollout eines Paketes:  $0 PRODUCTNAME HostId"
        echo "sample: $0 chrome gei730"
        exit 1
fi
$OPSIADMIN  setProductActionRequest                   $1 $2.$DOMAIN setup
$OPSIADMIN  hostControlSafe_fireEvent on_demand          $2.$DOMAIN
Gruss
Detlef