4.2.3.3. リソースとしてのシークレットの指定
設定情報が含まれる OpenShift シークレットがあり、1 つ以上のインテグレーションが利用できるリソースとしてマテリアル化する必要がある場合は、--resource <secret> 構文を使用します。
前提条件
- Setting up your Camel K development environment
OpenShift クラスター上に 1 つ以上のシークレットファイルがある。たとえば、以下のコマンドを使用してシークレットを作成できます。
oc create secret generic my-sec --from-literal=my-secret-key="very top secret"
oc create secret generic my-sec --from-literal=my-secret-key="very top secret"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
手順
OpenShift クラスターに保存されているシークレットを参照する Camel K インテグレーションを作成します。
たとえば、以下のインテグレーション (名前:
ResourceSecretRoute.java) はmy-secシークレットを参照します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow インテグレーションを実行し、
--resourceオプションを使用してデフォルトの/etc/camel/resources/ディレクトリーのシークレットファイルをマテリアル化し、実行中のインテグレーションで使用できるようにします。以下に例を示します。
kamel run --resource secret:my-sec ResourceSecretRoute.java --dev
kamel run --resource secret:my-sec ResourceSecretRoute.java --devCopy to Clipboard Copied! Toggle word wrap Toggle overflow インテグレーションが起動すると、Camel K Operator はシークレットの内容でボリュームをマウントします (例:
my-sec)。
注記: クラスターでまだ利用できないシークレットを指定した場合、Integration は待機しシークレットが利用可能になって初めて起動します。