application.proerpties / application.yaml 上の環境変数で置換されるキーを抽出し、OCIイメージラベルとして出力するbuildpackです。
pack build -b nncdevel/buildpack-application-config-environment-variable-labels:1.0.0| 環境変数 | 説明 |
|---|---|
$BP_APPLICATION_CONFIG_ENVIRONMENT_VARIABLE_LABEL_NAME |
挿入するラベルのキーを指定します。 デフォルトでは io.nncdevel.buildpacks.application-config.environment-variables を利用します。 |
$BP_APP_CONFIG_ENVIRONMENT_VARIABLE_TARGET_PATTERNS |
キーを抽出する対象ファイルパスをカンマ区切りで設定します。デフォルト値は後述。 |
デフォルト値は以下の通り。
各パスは github.com/mattn/go-zglob のパターンを設定できます。
BOOT-INF/classes/application.properties,BOOT-INF/classes/application.ya?ml,WEB-INF/classes/application.properties,WEB-INF/classes/application.ya?ml
以下の3項目を持ったオブジェクト配列のJSON文字列が出力されます。
namestring : 環境変数名requiredboolean : 環境変数が必須(= プレースホルダのデフォルト値がない)の場合trueが設定されます。defaultValuestring : デフォルト値。設定されていない場合は空文字が設定されます。
例:
[
{"name": "JDBC_URL", "required": true, "defaultValue": ""},
{"name": "API_ENDPOINT", "required": false, "defaultValue": "https://github.com"}
]
- docker
golang、pack CLIをローカルにインストールする場合は下記の2つが必要になる。
インストールしない場合は docker-compose をインストールしてください。
まずは docker-compose.yml.example を docker-compose.yml としてコピーします。
コピーしたファイルを開き、http_proxy、https_proxy を各人の環境に合わせて修正してください。
golangのビルド
$ docker-compose run build-golangbuildpackのパッケージング(Dockerイメージ化)
$ docker-compose run package-buildpack-imagegolangのビルド
$ ./scripts/build-golang.shbuildpackのパッケージング(Dockerイメージ化)
$ ./scripts/package-buildpack-image.sh