2016-05-31 80 views
0

我擁有application.properties文件中的所有常用屬性。版本特定的屬性在github中的版本1和版本2文件夾中。spring雲配置版本化

order-service(base folder) 
    application.properties 
    version1 
     app-dev.properties 
    version2 
     app-dev.properties 

如何設置的配置在application.yml文件,以確保雲服務器配置與時VERSION1網址是hit.Below常見的道具一起返回第1級的道具是我現在必須從獲取道具的配置基本文件夾,以及如何修改以實現上述目標。

spring: 
    cloud: 
    config: 
     server: 
     git: 
      uri: https://github.company.com/orders-properties 
      username: orders 
      password: orders 
      search-paths: order-service 
+0

道具文件環境/配置文件特定的版本。都是你的版本網址在同一個jar文件....我不認爲你可以加載基於url的屬性文件...如果V1和V2是分開的罐子然後罐子/服務名稱可以用來有sepearete prop文件爲單獨的版本。 –

+0

@Grinish:如果我有分別具有特定版本的jar文件,我可以使用上面定義的設置嗎?在這種情況下,我希望雲配置服務器在版本1 url請求時返回版本1文件夾下的application.properties + app-dev.properties。 –

回答

2

如果我理解正確,這是你需要的。

比方說你有兩個應用程序稱爲APP-DEV-V1APP-DEV-V2

您需要在資源文件夾中添加一個bootstrap.yml文件,並在這兩個應用程序中添加此屬性。

對於APP-DEV-V1

spring: 
    application: 
    name: app-dev-v1 

對於APP-DEV-V2

spring: 
    application: 
    name: app-dev-v2 

在庫中,你可以有一個.yml或的.properties文件像這裏面的版本1和版本2文件夾。

APP-DEV-v1.ymlAPP-DEV-v2.yml

還爲配置服務器,您需要添加搜索路徑:

spring: 
    cloud: 
    config: 
     server: 
     git: 
      uri: https://github.company.com/orders-properties 
      username: orders 
      password: orders 
      search-paths: order-service,version* 
+0

謝謝@Grinish。如果我正在嘗試使用高級休眠客戶端來測試此功能,那麼我應該使用哪些其他端點?我之前使用過這個端點 - http:// localhost:8080/order-service/dev –

+0

我能夠使用localhost:8080/order-service/dev-version1來訪問它。謝謝。 –

+0

通過url localhost:8080/order-service/dev-version1訪問似乎昨天工作。但是我現在無法看到結果。是否有我需要使用的不同網址? –