Wie kann der Spring Cloud Config-Server zum Auschecken der Konfiguration von bestimmten Zweigstellen aufgefordert werden?

7

Ich habe folgende Spring cloud config application.yml:

%Vor%

Dies ist mein bootstrap.yml des Benutzer-Microservice:

%Vor%

Szenario - 1
Wenn ich den Konfigurationsserver im Browser so drücke:
http://localhost:8881/development/userservice-development.yml
Es dient als Datei richtig. und wenn ich auf basedir z. B. target / config schaue, sehe ich:

%Vor%

Genau das, was ich wollte, Da ich diese beiden Dateien nur im Entwicklungszweig hinzugefügt habe.

Szenario - 2
Wenn ich mein Benutzerservice-Microservice-Projekt mit folgendem Befehl starte:
mvn clean spring-boot:run -Dspring.profiles.active=development

Er ruft die richtige Datei von git ab, aber es geht vom Master-Zweig aus! aber nicht vom Entwicklungszweig , wie ich es erwarte. erwarte ich richtig? (FYI Ich habe beide Entwicklung und Produktion Yml in Master-Zweig)

Die Frage ist also, wie gehen wir bei der Verwendung des Config-Servers vor? Gibt es irgendeine Konfiguration, die wir einstellen können, um nur von diesem bestimmten Zweig yml zu holen? Ich glaube, wir müssen ein Label festlegen, da das Standardlabel laut Dokumentation Master ist. Kann mir jemand wissen, wie wir das Label im obigen Szenario setzen?

    
agpt 10.12.2015, 06:18
quelle

3 Antworten

11

Entsprechend der Dokumentation , die gewünschte Konfiguration in Ihrem Config-Client ist:

%Vor%

Wo mybranch eine existierende Verzweigung in Ihrem Git Repo ist.

    
spencergibb 10.12.2015, 18:02
quelle
5

Konfigurationsserver, der für die Verwendung von Profilen zum Trennen der Umgebung konzipiert wurde. Beispiel:

%Vor%

Die Verzweigung führt zu Konfigurationsinkonsistenz.

Das Konzept des Config-Servers basiert auf der 12-Faktor-Konfiguration ( Ссылка ).

Überprüfen Sie es aus Gründen des Details.

    
Hlex 10.12.2015 13:46
quelle
5

Sie können die Standardverzweigung (allgemeiner Git-Beschriftung) angeben, die ein Konfigurationsserver verwendet, wenn ein Client die Beschriftung nicht über die Eigenschaft spring.cloud.config.server.git.default-label angibt. Vielleicht ist es das, wonach Sie suchen? Natürlich löst das Problem für mich!

    
Matthew Wise 06.01.2017 11:41
quelle