RPM-Paketierung mehrerer Versionen für die gleichzeitige Installation


7

Gibt es einige Richtlinien oder hat jemand Vorschläge, wie ich etwas verpacken soll, damit mehrere Versionen gleichzeitig installiert werden können?

Antworten:


5

Ich bin mir nicht sicher, ob dies zu dem passt, was Sie erreichen möchten, aber bei einem Projekt, an dem ich gearbeitet habe, haben wir zunächst eine Verzeichnisstruktur diktiert, etwa:

/usr/local/[project_name]/[version]

Wo project_namewar der "Basisname" des Projekts und versionwar eine bestimmte getaggte Version. Wir haben dann eine beliebige Zahl für die RPM-Version verwendet (monoton ansteigend), sodass Releases innerhalb desselben Tags oder Zweigs RPM-aktualisiert werden können, ohne dass Konflikte mit anderen Tags / Zweigen auftreten. Dies bedeutet, dass Sie eine Versionsnummer irgendwo im RPM-Namensheader codieren müssen und nicht die Version, z

Name: foobar-1.0
Version: 1234
Release: 1
# ...etc...

In diesem Fall wird das RPM möglicherweise unter dem Pfad installiert, /usr/local/foobar/1.0und nachfolgende Versionen werden als "foobar-2.0" bezeichnet und auf ähnliche Weise installiert.

Der Name "foobar-1.0" impliziert, dass Sie ein anderes System benötigen, nicht das RPM-System, um die Versionsnummern zu verfolgen. Wir haben ein Shell-Skript verwendet, das bei Bedarf einfach die Spezifikationsdatei für eine getaggte Version generiert. Dies kann etwas umständlich sein, bietet Ihnen jedoch die Flexibilität, mehrere Versionen eines Pakets auf übliche Weise zu installieren und mehrere Versionen gleichzeitig zu verwenden.

Dies ist nur ein Vorschlag und YMMV offensichtlich.


0

Geben Sie den Paketen einfach unterschiedliche Namen und stellen Sie sicher, dass sie Dateien an verschiedenen Speicherorten installieren.

Oder bündeln Sie alle Versionen in einem einzigen Paket.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.