OPSI-Paket nur auf Setup stellen, wenn ein anderes Paket installiert ist

Antworten
pago
Beiträge: 5
Registriert: 30 Apr 2020, 13:33

OPSI-Paket nur auf Setup stellen, wenn ein anderes Paket installiert ist

Beitrag von pago »

Hallo,

ich bin gerade mit OPSI Control Dateien am testen.
Hierbei ist mir die Frage gekommen, ob es möglich ist, in der Control-Datei zu prüfen, ob ein Paket installiert ist und das aktuelle Paket nur auf Setup zu setzen, wenn ein vorheriges Paket installiert ist.

Zum besseren Verständnis, das ganze an einem Beispiel mit Paketen:

Paket 1 muss installiert sein, damit Paket 2 installiert wird, wenn dieses auf Setup gesetzt wird.
Paket 1 soll allerdings nicht auf Setup gesetzt werden, wenn Paket 2 auf Setup gesetzt wird.

Ich finde aktuell leider keine detaillierten Beschreibungen zu den Parametern der Control Datei für die [ProductDependency].

Vielen Dank schon mal für eure Hilfe.
Benutzeravatar
SisterOfMercy
Beiträge: 1524
Registriert: 22 Jun 2012, 19:18

Re: OPSI-Paket nur auf Setup stellen, wenn ein anderes Paket installiert ist

Beitrag von SisterOfMercy »

Here an example:

control file package 1:

Code: Alles auswählen

[Package]
version: 1
depends: 

[Product]
type: localboot
id: avidemux
name: Avidemux
description: Avidemux is a free and open-source video editor designed for simple cutting, filtering and encoding tasks. It supports many file types, using a variety of codecs. Tasks can be automated using projects, job queues and scripts.
 http://fixounet.free.fr/avidemux/download.html
advice: Please refer to the avidemux wiki to learn more about the operation and options of this program.
version: 2.7.6
priority: 0
licenseRequired: False
productClasses: 
setupScript: setup3264.opsiscript
uninstallScript: uninstall3264.opsiscript
updateScript: 
alwaysScript: 
onceScript: 
customScript: 
userLoginScript: setup3264.opsiscript

[ProductDependency]
action: setup
requiredProduct: microsoft-vc-runtime-2017
requiredStatus: installed
requirementType: before

[ProductProperty]
type: bool
name: desktopicon
description: Determines if the installation should create a desktop icon.
default: False

[Changelog]
avidemux (2.7.6-1) stable; urgency=medium
  * Updated to 2.7.6 (blah blah)
control file package 2:

Code: Alles auswählen

[Package]
version: 1
depends: 

[Product]
type: localboot
id: microsoft-vc-runtime-2017
name: Microsoft Visual C++ Runtime 2017
description: Microsoft Visual C++ Runtime 2017 is required to run C++ applications that have been built with Visual Studio 2015, 2017 or 2019.
advice: 
version: 14.26.28720.3
priority: 0
licenseRequired: False
productClasses: 
setupScript: setup3264.opsiscript
uninstallScript: uninstall3264.opsiscript
updateScript: 
alwaysScript: 
onceScript: 
customScript: 
userLoginScript: 

[Changelog]
microsoft-vc-runtime-2017 (14.26.28720.3-1) testing; urgency=low
  * Update to 14.26.28720.3 (blah etc)
Bitte schreiben Sie Deutsch, when I'm responding in the German-speaking part of the forum!
Jan.Schmidt
Beiträge: 439
Registriert: 08 Jul 2017, 12:02

Re: OPSI-Paket nur auf Setup stellen, wenn ein anderes Paket installiert ist

Beitrag von Jan.Schmidt »

pago hat geschrieben: Hierbei ist mir die Frage gekommen, ob es möglich ist, in der Control-Datei zu prüfen, ob ein Paket installiert ist und das aktuelle Paket nur auf Setup zu setzen, wenn ein vorheriges Paket installiert ist.
Hi, das geht so nicht ;-(

Was aber geht ist im setup zu fragen "sind spuren des anderen Pakets da?"

Code: Alles auswählen

DefVar $feedback$
Set $feedback$ = "c:\Program Files\OpenVPN\config"
if not(FileExists($feedback$))
        LogError "kein ovpn gefunden"
        isFatalError "Open VPN nicht gefunden"
else
        do something
d.haberland
Beiträge: 46
Registriert: 27 Sep 2017, 16:47

Re: OPSI-Paket nur auf Setup stellen, wenn ein anderes Paket installiert ist

Beitrag von d.haberland »

Hallo Pago,

gibt es ein Grund dafür, dass du das nicht über Abhängigkeiten machst?


Grüße
feltel
Beiträge: 222
Registriert: 09 Dez 2014, 07:22

Re: OPSI-Paket nur auf Setup stellen, wenn ein anderes Paket installiert ist

Beitrag von feltel »

pago hat geschrieben:Paket 1 muss installiert sein, damit Paket 2 installiert wird, wenn dieses auf Setup gesetzt wird.
Paket 1 soll allerdings nicht auf Setup gesetzt werden, wenn Paket 2 auf Setup gesetzt wird.
Das widerspricht sich doch aber, oder verstehe ich es falsch? Um Paket 2 installieren zu können, muss Paket 1 installiert sein. Du willst dessen Installation aber nicht anstoßen, wenn Du Paket 2 zur Installation auswählst. Also würde das Paket 2 nach der Installation nicht funktionieren, es sei denn Du sorgst vorher manuell dafür, das Paket 1 installiert ist. Aber genau das ist doch der Zweck einer Abhängigkeit. Wenn ich immer händisch beachten muss, was von wem in welche Reihenfolge gebraucht wird, dann brauche ich keine Abhängigkeiten.
Jan.Schmidt
Beiträge: 439
Registriert: 08 Jul 2017, 12:02

Re: OPSI-Paket nur auf Setup stellen, wenn ein anderes Paket installiert ist

Beitrag von Jan.Schmidt »

d.haberland hat geschrieben:Hallo Pago,

gibt es ein Grund dafür, dass du das nicht über Abhängigkeiten machst?


Grüße
Theoretisch könnte das ein Programm mit einer Lizenz oder ein Plugin für ein Programm sein.

Hat jemand Programm x und die Lizenz hat sich geändert oder ein Plugin ist dazugekommen, will keiner das Programm neu installieren, weil sich die Lizenz geändert hat, oder du hast 100 Programmlizenzen, aber nur 10 pluginlizenzen.

Machst du das über Abhängigkeiten, bekommt jeder, das Programm, wenn du die Lizenz / plugin verteilst.
Antworten