Seite 1 von 1

opsi package version changer

Verfasst: 03 Sep 2013, 18:46
von islam
hab was gebastelt um die Versionsnummer für vorhandene opsi pakete zu ändern

(somit kann man z.B für Firefox nur die aktuelle .exe installationsdatei in "/opt/pcbin/install" ersetzen und danach mit dem skript die versionsnummer ändern)

Link hier für wiki

wiki/userspace:opsi-info

oder download hier

http://islamadel.com/en/downloads?func=fileinfo&id=12

Re: opsi package version changer

Verfasst: 11 Dez 2013, 15:37
von islam
Neues update für opsi-info.sh

wiki/userspace:opsi-info

Pakete aktualisieren war noch nie so einfach..
Du willst irgendein opsi-produkt mit dem geringsten Aufwand aktualisieren?

Hier ein Beispiel für Firefox..

Szenario:
- Firefox ist sowohl auf opsi als auch auf den clients noch in der Version "24.1.1" vorhanden
- Firefox hat in dem Szenario die Product-id: "internet_firefox"

Ziel ist es neuere "Firefox" Version "24.2.0" auf opsi und allen clients (bei den Firefox bereits installiert ist) zu aktualiseren.

Die einzigen Schritte die man dafür machen muss:

1) Neue Installations exe für Firefox herunterladen. "Firefox Setup 24.2.0esr.exe" und unter /opt/pcbin/internet_firefox/files/ ablegen
2) auf dem opsi-server das opsi-info.sh skript mit folgenden Paramtern ausführen:

Code: Alles auswählen

opsi-info.sh -prod internet_firefox -ver 24.2.0

Ergebnis:

Code: Alles auswählen

#################################
#                               #
# opsi-info version: 13.12.10   #
#                               #
#	use -h for help             #
#                               #
#################################

replacing product version for:	[ internet_firefox ], from: [ 24.1.1 ] to: [ 24.2.0 ]
current package version for:	[ internet_firefox ], is: [ 1 ]
OK: ProductVersion replaced in setup.ins

Searching for clients with [ internet_firefox ] status: installed ..

client-005.domain
client-006.domain
[...]

[ 105 ] clients found.

 Set SETUP action for [ internet_firefox ] on listed clients ? : [ y=Yes | n=No ]: [Default: y ]

Hier bestätige ich mit Enter

Ergebnis folgt:

Code: Alles auswählen

Setting SETUP action..

OK: SETUP action set for: client-005.domain
OK: SETUP action set for: client-006.domain
[..]

###############################

process done.
Das wars in 2 Schritten wurde die neuere Firefox Version zum installieren auf allen Clients die eine ältere Version haben freigegeben.
Kann das noch einfacher werden?


Eine kleine Ergänzung zum Aufbau der setup.ins

Die Variable ProductVersion wurde definiert die auf die neue .exe hinweist.
Den Wert dieser Variable ändert das opsi-info Skript falls vorhanden:

Code: Alles auswählen

[Actions]
DefVar $ProductVersion$
Set $ProductVersion$  = "24.1.1"

[Winbatch_install_64]
"%ScriptPath%\files\Firefox Setup $ProductVersion$esr.exe" -ms -ira
nach dem ausführen den Befehls wie oben beschrieben, wird automatisch die setup.ins automatisch angepasst in

Code: Alles auswählen

Set $ProductVersion$  = "24.2.0"
Diese Zeile wird nur geändert wenn Sie vorhanden ist, ansonsten wird die setup.ins nicht verändert.


Viel Spass