2016-04-01 4 views
2

私はSpring Cloud Configを使い始めており、クライアントがcofnigサーバから来るプロパティを上書きする方法を提供したいと考えています。ただし、https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.htmlを読んだ後は、クラウド設定が適用されるときはわかりません。クラウドコンフィグレーションサーバを使用している場合、Springブート外部設定の順序?

私はhttp://cloud.spring.io/spring-cloud-config/spring-cloud-config.htmlも読んでおり、上書きについて説明しています。しかし、彼らは私が望むものとは逆のように見えます(これらのオーバーライドは、クライアントが提供するプロパティをオーバーライドするためのものです)。

だから、クラウドコンフィグはどこで注文に適していますか?特定のCloud Configプロパティをオーバーライドするためにローカルパスapplication.propertiesをクラスパスに指定することはできますか?

+3

構成サーバーは最上位に適用されます。アプリケーションが何かを無効にする場合は、アプリケーション固有のconfig in config serverを指定してください。私はちょっとあなたのユースケースが何であるか混乱しています。 – spencergibb

+1

'/ env'アクチュエータエンドポイントを見てください。アプリケーションで使用されているプロパティーソースと、それらが互いにオーバーライドする順序付けが表示されます(以前にリストされたソースは、後でリストされたソースをオーバーライドします)。一般的に、ConfigServerのソースは非常に早く、デフォルトの順序でコマンドラインの-Dプロパティの後ろにしかありません。 –

+0

アプリケーションをテストするとき、gitブランチを通過し、設定の変更のためのプロセスをプッシュし、レビューするにはあまりにもオーバーヘッドです。テスターはgitプロセスを経ることなくローカル変更を行う方法を好んでいます。 –

答えて

3

gitコミット/プッシュプロセスは実際にプロセスの一部です... Spring Cloud Configはgitを使用して設定ファイル、変更、監査などを処理します.Gitは理想的にはそれに適しています。&強さ。

設定変更のテストを迅速化し、トレードオフを受け入れる方法を探している場合は、テスト用の設定リポジトリにローカル(またはローカルネットワーク)レポを使用できます。これはあなたが具体的に求めていることではありませんが、Configサーバーアプリケーションのapplication.propertiesを使用して根底にあるgit repoを指していると仮定すると、役立つオプションです。もしそうなら、コマンドラインでspring.cloud.config.server.git.uriを以下のように無効にすることができます:

java -Dspring.cloud.config.server.git.uri = $ {HOME}/testing/config -repo -jar your_jar_here.jar

これにより、プロダクション設定ファイル(ブランチまで)に影響を与えずに、設定サーバーから設定を取得するクライアントアプリケーション/サービスの設定を調整できます。

こちらがお役に立てば幸いです。そうでない場合、または私があなたの目標や制約を誤解している場合は、明確にしてください(もしユースケースが2つあれば分かち合うことができます)。 :)

乾杯、 マーク

+0

実際、これは参考になり、私が考慮しなかったものです。この一歩をさらに進めていくと、 'staging *'や 'dev *'プロファイルにマッチするためにパターンマッチングを使用して、それらのリクエストを別のgitリポジトリに送信して、通常のgitを使わずにアドホックな変更を加えることができるようですプロセス。これを試してみて、これが私のユースケースでうまくいくと分かったら、この答えを受け入れます。 –

+0

私はこれを受け入れ、私が望むところで私が得られる情報を追加します。私は、Springプロファイルを使用して、Spring Cloud Configのgit URIを、ほとんど空の別のテスト用リポジトリに切り替えます。 git repoはこのプロファイルでは空であるため、ファイルや環境変数からプロパティをオーバーライドすることができます(存在する唯一のプロパティなので)。 –

+0

うまくやって、ビジネスに戻ってうれしいです。アンディ、あなたに最高! –

関連する問題