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

Fré*_*mas 3 client runtime kubernetes kubernetes-secrets quarkus

我正在努力使用 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
Run Code Online (Sandbox Code Playgroud)

构建失败并显示:

Failed to build quarkus application: mapping values are not allowed here
    in 'reader', line 16, column 20:
                enabled: true
                        ^
Run Code Online (Sandbox Code Playgroud)

什么时候:

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
Run Code Online (Sandbox Code Playgroud)

构建失败并显示:

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
Run Code Online (Sandbox Code Playgroud)

什么时候:

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
Run Code Online (Sandbox Code Playgroud)

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

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

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

第 48 行: // TODO:这里应该使用转换器

难道是因为属性不是由yaml转换而来的?

Lad*_*cek 5

我认为这只是关于如何编写正确的 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
Run Code Online (Sandbox Code Playgroud)

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