2017-07-24 3 views
0

Gibt es eine Standardmethode zum Bereitstellen von umgebungsabhängigen cfg-Dateien für Karaf? Nehmen wir an, ich habe xyz.cfg Datei in 2 Versionen für Dev und QA. Muss ich in diesem Fall separate Features für Dev und QA erstellen?Bereitstellen von umgebungsabhängiger Konfiguration für Apache Karaf

Danke!

+0

Afaik, dann ist es nicht möglich. Eine cfg-Datei kann Systemeigenschaften und einen Standardwert haben, aber ich glaube nicht, dass es möglich ist, eine Funktion basierend auf einer Systemeigenschaft zu wählen. –

+0

Meinst du das Bereitstellen zu laufendem Karaf? Wenn ja, wie wird die cfg-Datei bereitgestellt? Skript? CI? Oder meinst du, du musst verschiedene Versionen der Anwendung für verschiedene env zusammenbauen? –

+0

Bitte finden Sie meine Antwort unten. – medalik

Antwort

0

Vielleicht gibt es einen Weg mit Funktionen. Aber ich weiß nicht wie. Wir verwenden das karaf-maven-plugin, um ein kundenspezifisches Karaf zu bauen. In diesem Fall können Sie einen für Dev und einen für QA erstellen. Here ist eine vollständige Beschreibung.

Also hoffentlich hilft dir das ein bisschen.

0

Ich denke, ich fand die Lösung für das, was ich suche. Karaf-Funktionen unterstützen die Bereitstellung von Konfigurationsdateien. Siehe „Eigenschaften Konfigurationen“ und „Feature-Konfigurationsdateien“ Abschnitt hier:

https://karaf.apache.org/manual/latest/provisioning

Alles, was ich tun musste, ist ein Merkmal für jede Umgebung hinzufügen, wo ich nur die Konfigurationsdateien enthalten für diese Umgebung erforderlich. Anschließend stelle ich für die Bereitstellung sowohl meine Bundles als auch die Funktion mit der Konfiguration für die Umgebung bereit, für die ich die Bereitstellung durchführen möchte.

Beispiel:

<feature name="dev"> 
    <configfile ...> 
</feature> 

<feature name="qa"> 
    <configfile ...> 
</feature> 

Dann in dev zu installieren:

repo-add my-repo 

feature:install some-feature-containing-bundles 

feature:install dev 
Verwandte Themen