如何在application.yml中使用quarkus.kubernetes-config.secrets.enabled?

问题描述

我正在努力使用application.yml读取机密。

当我这样做时:

quarkus:
    application:
        name: pi-quarkus-fund-persistence-service
    kubernetes-config:
        enabled: true
        fail-on-missing-config: false
        config-maps: pi-quarkus-fund-persistence-service-configmap
        secrets: pi-quarkus-fund-persistence-service-secrets
            enabled: true

构建失败并显示:

Failed to build quarkus application: mapping values are not allowed here
    in 'reader',line 16,column 20:
                enabled: true
                        ^

何时:

quarkus:
    application:
        name: pi-quarkus-fund-persistence-service
    kubernetes-config:
        enabled: true
        secrets.enabled: true
        fail-on-missing-config: false
        config-maps: pi-quarkus-fund-persistence-service-configmap
        secrets: pi-quarkus-fund-persistence-service-secrets

构建失败并显示:

Unrecognized configuration key "quarkus.kubernetes-config."secrets.enabled"" was provided; it will be ignored; verify that the dependency extension for this configuration is set or you did not make a typo

何时:

quarkus.kubernetes-config.secrets.enabled: true
quarkus:
    application:
        name: pi-quarkus-fund-persistence-service
    kubernetes-config:
        enabled: true
        fail-on-missing-config: false
        config-maps: pi-quarkus-fund-persistence-service-configmap
        secrets: pi-quarkus-fund-persistence-service-secrets

构建成功,但服务在启动时失败:

从Secrets [pi-quarkus-fund-persistence-service-secrets]中读取配置,但 quarkus.kubernetes-config.secrets.enabled为false 。检查您的应用程序的服务帐户是否具有足够的权限来读取机密。

当我查看此提交时:https://github.com/quarkusio/quarkus/commit/93f00af9444deafe950afa1fad60f56fceb81ca3

第48行:// TODO:可能应该在此处使用转换器

可能是因为该属性不是从Yaml转换而来的吗?

解决方法

我认为这只是如何编写正确的YAML。应该是:

quarkus:
    application:
        name: pi-quarkus-fund-persistence-service
    kubernetes-config:
        enabled: true
        fail-on-missing-config: false
        config-maps: pi-quarkus-fund-persistence-service-configmap
        secrets:
            ~: pi-quarkus-fund-persistence-service-secrets
            enabled: true

回想起来,quarkus.kubernetes-config.secrets.enabled不是此配置属性的最佳选择,对此感到抱歉:-(

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...