manifest.yml
ファイルは、cf cliにアプリケーションの配備方法を指示します。ここに設定することができますが、manifest.yml
ファイルを使用して環境変数を定義できるため、はのみです。つまり、manifest.yml
ファイルを使用して、アプリケーションが後で構成値を読み取ることができる特定の環境変数を設定することができます。あなたのアプリケーションは直接manifest.yml
を読むことはできません。その後
applications:
- name: rule_runtime
buildpack: java_buildpack
path: target/com.sap.brms.web.app.0.0.1-SNAPSHOT.war
env:
TARGET_RUNTIME: tomcat
destinations: [ {"name":"bpmrulesrepository", "url":"https://example.com"}]
次の2つの環境変数を定義するには、CF CLIを言っている:
は例えば、これはあなたのmanifest.yml
ファイルである場合は、値を持っているとしている
TARGET_RUNTIME
tomcat
destinations
これは値を持つ予定です[ {"name":"bpmrulesrepository", "url":"https://example.com"}]
url
キーを取得する場合は、最初にdestinations
のenv変数の内容を取得し、解析してください(JSONのように見えます)。url
の値を読み取る必要があります。
Scottさんが彼のコメントで述べたように、環境変数をアプリケーションで読みやすくするために、環境変数を定義することで自分の仕事を節約することができます。たとえば、destinations_bpmrulesrepository_url
をhttps://example.com
に設定すると、env変数を1つ読み込むだけでURLを取得できます。
application.properties
またはapplication.yml
の内部に設定することもできます。あなたはSpringBootアプリケーションを持っているので、これは典型的にあなたの設定が行く場所です。さらに、Springブートなので、必要に応じて、環境変数を介してこれらのファイルから簡単に設定を上書きすることができます。します。https:// example.com`代わりに `destinations`ラインの
は
https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html
はちょうどライン' bpmrulesrepositoryを追加することはできません ? CFは、そのjsonを環境内の名前/値のペアに分割する方法を知りません。 –