4.2.2.2. ConfigMap の指定

設定値が含まれる OpenShift ConfigMap があり、Camel K インテグレーションで使用できるように ConfigMap をマテリアル化する必要がある場合には、--config configmap:<configmap-name> 構文を使用します。

前提条件

  • Setting up your Camel K development environment
  • OpenShift クラスター上に 1 つ以上の ConfigMap ファイルがある。

    たとえば、以下のコマンドを使用して ConfigMap を作成できます。

    oc create configmap my-cm --from-literal=my-configmap-key="configmap content"

手順

  1. ConfigMap を参照する Camel K インテグレーションを作成します。

    たとえば、以下のインテグレーション (名前: ConfigConfigmapRoute.java) は、my-cm という名前の ConfigMap の my-configmap-key という名前の設定値を参照します。

    import org.apache.camel.builder.RouteBuilder;
    
    public class ConfigConfigmapRoute extends RouteBuilder {
      @Override
      public void configure() throws Exception {
    
        from("timer:configmap")
            .setBody()
                 .simple("resource:classpath:my-configmap-key")
            .log("configmap content is: ${body}");
    
      }
    }
  2. インテグレーションを実行し、--config オプションを使用して ConfigMap ファイルをマテリアル化し、実行中のインテグレーションで使用できるようにします。以下は例になります。

    kamel run --config configmap:my-cm ConfigConfigmapRoute.java --dev

    インテグレーションが起動すると、Camel K Operator は ConfigMap の内容で OpenShift ボリュームをマウントします。

注記: クラスターでまだ利用できない ConfigMap を指定した場合、Integration は待機し ConfigMap が利用可能になって初めて起動します。