Red Hat Camel K is deprecated
Red Hat Camel K is deprecated and the End of Life date for this product is June 30, 2025. For help migrating to the current go-to solution, Red Hat build of Apache Camel, see the Migration Guide.4.2.2.4. 引用 ConfigMap 或 Secret 中包含的属性
当您运行集成和使用 --config
选项指定 ConfigMap 或 Secret 时,Camel K operator 会将 ConfigMap 或 Secret 解析为运行时属性文件。在集成中,您可以引用属性,就像引用任何其他运行时属性一样。
前提条件
流程
创建包含属性的文本文件。
例如,创建一个名为
my.properties
的文件,其包含以下属性:Copy to Clipboard Copied! Toggle word wrap Toggle overflow my.key.1=hello my.key.2=world
my.key.1=hello my.key.2=world
根据属性文件创建 ConfigMap 或 Secret。
例如,使用以下命令从 my.properties 文件中创建 secret:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create secret generic my-sec --from-file my.properties
oc create secret generic my-sec --from-file my.properties
在集成中,引用 Secret 中定义的属性。
例如,以下集成(名为
ConfigSecretPropertyRoute.java
)引用my.key.1
和my.key.2
属性:Copy to Clipboard Copied! Toggle word wrap Toggle overflow import org.apache.camel.builder.RouteBuilder; public class ConfigSecretPropertyRoute extends RouteBuilder { @Override public void configure() throws Exception { from("timer:secret") .routeId("secret") .log("{{my.key.1}} {{my.key.2}}"); } }
import org.apache.camel.builder.RouteBuilder; public class ConfigSecretPropertyRoute extends RouteBuilder { @Override public void configure() throws Exception { from("timer:secret") .routeId("secret") .log("{{my.key.1}} {{my.key.2}}"); } }
运行集成并使用
--config
选项指定包含 my.key.1 和
属性的 Secret。my.key
.2例如:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow kamel run --config secret:my-sec ConfigSecretPropertyRoute.java --dev
kamel run --config secret:my-sec ConfigSecretPropertyRoute.java --dev