由于GKE上的验证错误“ spec.tasks.image.volumes.secret是必需的类型”,因此无法运行Apache CamelK IntegrationKit

问题描述

我按照说明在给定herehere的情况下在GKE上安装了CamelK。
之后,我尝试运行基本集成hello.groovy,但是遇到了github-issue概述的问题。我可以通过设置标志--build-publish-strategy=Kaniko解决问题。

但是,IntegrationKit仍然停留在提交提交阶段,这次的原因是

验证失败列表:
键入spec.tasks.image.volumes.secret是必需的

GKE上的Kubernetes版本

{
"clientVersion": {
"major": "1","minor": "18","gitVersion": "v1.18.6","gitCommit": "dff82dc0de47299ab66c83c626e08b245ab19037","gitTreeState": "clean","buildDate": "2020-07-15T16:58:53Z","goVersion": "go1.13.9","compiler": "gc","platform": "linux/amd64"
},**"serverVersion": {
"major": "1","minor": "15+",**
"gitVersion": "v1.15.12-gke.2","gitCommit": "fb7add51f767aae42655d39972210dc1c5dbd4b3","buildDate": "2020-06-01T22:20:10Z","goVersion": "go1.12.17b4","platform": "linux/amd64"
}
}

相同的集成也适用于Minikube。

Minikube上的Kubernetes版本

{
"clientVersion": {
"major": "1",**
"gitVersion": "v1.18.3","gitCommit": "2e7996e3e2712684bc73f0dec0200d64eec7fe40","buildDate": "2020-05-20T12:43:34Z","platform": "linux/amd64"
}
}

k describe integrationkits.camel.apache.org kit-bsqdepf9gf15pade1u5g输出中的相关事件是

>     Warning  IntegrationKitError  20s (x6 over 100s)  camel-k-integration-kit-controller  (combined from similar events):
> Cannot reconcile Integration Kit kit-bsqdepf9gf15pade1u5g: cannot
> create build: Build.camel.apache.org "kit-bsqdepf9gf15pade1u5g" is
> invalid: []: Invalid value: map[string]interface
> {}{"apiVersion":"camel.apache.org/v1","kind":"Build",> "Metadata":map[string]interface
> {}{"creationTimestamp":"2020-08-13T06:03:42Z","generation":1,> "labels":map[string]interface
> {}{"camel.apache.org/created.by.kind":"Integration",> "camel.apache.org/created.by.name":"hello",> "camel.apache.org/created.by.version":"9182"},> "name":"kit-bsqdepf9gf15pade1u5g","namespace":"default",> "ownerReferences":[]interface {}{map[string]interface
> {}{"apiVersion":"camel.apache.org/v1","blockOwnerDeletion":true,> "controller":true,"kind":"IntegrationKit",> "uid":"fbd0f7af-8a09-407d-af72-0d4775f1e847"}},> "uid":"f9422c89-2020-4799-ad96-3c248ded857f"},> "spec":map[string]interface {}{"tasks":[]interface
> {}{map[string]interface {}{"builder":map[string]interface
> {}{"baseImage":"adoptopenjdk/openjdk11:slim",> "buildDir":"/builder/kit-bsqdepf9gf15pade1u5g",> "dependencies":[]interface {}{"camel:log","camel:timer",> "mvn:org.apache.camel.k/camel-k-loader-groovy",> "mvn:org.apache.camel.k/camel-k-runtime-main"},> "maven":map[string]interface {}{"localRepository":"/tmp/artifacts/m2",> "settings":map[string]interface
> {}{"configMapKeyRef":map[string]interface {}{"key":"settings.xml",> "name":"camel-k-maven-settings"}},"timeout":"3m45s"},> "Meta":map[string]interface
> {}{"creationTimestamp":"2020-08-13T06:02:13Z",> "camel.apache.org/created.by.version":"9182",> "camel.apache.org/kit.type":"platform",> "camel.apache.org/runtime.provider":"main",> "camel.apache.org/runtime.version":"1.4.1"},> "resourceVersion":"9186",> "selfLink":"/apis/camel.apache.org/v1/namespaces/default/integrationkits/kit-bsqdepf9gf15pade1u5g",> "uid":"fbd0f7af-8a09-407d-af72-0d4775f1e847"},"name":"builder",> "runtime":map[string]interface
> {}{"applicationClass":"org.apache.camel.k.main.Application",> "capabilities":map[string]interface
> {}{"circuit-breaker":map[string]interface
> {}{"dependencies":[]interface {}{map[string]interface
> {}{"artifactId":"camel-microprofile-fault-tolerance",> "groupId":"org.apache.camel"}}},"cron":map[string]interface
> {}{"dependencies":[]interface {}{map[string]interface
> {}{"artifactId":"camel-k-runtime-cron",> "groupId":"org.apache.camel.k"}}},"health":map[string]interface
> {}{"dependencies":[]interface {}{map[string]interface
> {}{"artifactId":"camel-k-runtime-health",> "platform-http":map[string]interface {}{"dependencies":[]interface
> {}{map[string]interface {}{"artifactId":"camel-k-runtime-http","rest":map[string]interface
> {}{"dependencies":[]interface {}{map[string]interface
> {}{"artifactId":"camel-rest","groupId":"org.apache.camel"},> map[string]interface {}{"artifactId":"camel-k-runtime-http","tracing":map[string]interface
> {}{"dependencies":[]interface {}{map[string]interface
> {}{"artifactId":"camel-k-runtime-tracing",> "groupId":"org.apache.camel.k"}}}},"dependencies":[]interface
> {}{map[string]interface {}{"artifactId":"camel-k-runtime-main",> "groupId":"org.apache.camel.k"}},"Metadata":map[string]interface
> {}{"camel-quarkus.version":"1.0.0-CR3","camel.version":"3.4.0",> "quarkus.version":"1.6.0.Final"},"provider":"main",> "version":"1.4.1"},"steps":[]interface
> {}{"github.com/apache/camel-k/pkg/builder/CleanBuildDir",> "github.com/apache/camel-k/pkg/builder/GenerateProjectSettings",> "github.com/apache/camel-k/pkg/builder/InjectDependencies",> "github.com/apache/camel-k/pkg/builder/SanitizeDependencies",> "github.com/apache/camel-k/pkg/builder/IncrementalImageContext",> "github.com/apache/camel-k/pkg/builder/runtime/LoadCamelCatalog",> "github.com/apache/camel-k/pkg/builder/runtime/GenerateProject",> "github.com/apache/camel-k/pkg/builder/runtime/ComputeDependencies"},> "timeout":"5m0s","volumeMounts":[]interface {}{map[string]interface
> {}{"mountPath":"/builder","name":"camel-k-builder"}},> "volumes":[]interface {}{map[string]interface
> {}{"emptyDir":map[string]interface {}{},"name":"camel-k-builder"}}}},> map[string]interface {}{"image":map[string]interface
> {}{"args":[]interface {}{"--dockerfile=Dockerfile",> "--context=/builder/kit-bsqdepf9gf15pade1u5g/context",> "--destination=gcr.io/camk-exploration/camel-k-kit-bsqdepf9gf15pade1u5g:9186",> "--cache=false","--cache-dir=/kaniko/cache"},> "builtimage":"gcr.io/camk-exploration/camel-k-kit-bsqdepf9gf15pade1u5g:9186",> "env":[]interface {}{map[string]interface
> {}{"name":"GOOGLE_APPLICATION_CREDENTIALS",> "value":"/secret/kaniko-secret.json"}},> "image":"gcr.io/kaniko-project/executor:v0.17.1","name":"kaniko",> "volumeMounts":[]interface {}{map[string]interface
> {}{"mountPath":"/secret","name":"registry-secret"},> map[string]interface {}{"mountPath":"/builder",> "name":"camel-k-builder"}},"volumes":[]interface
> {}{map[string]interface {}{"name":"registry-secret",> "secret":map[string]interface {}{"items":[]interface
> {}{map[string]interface {}{"key":"kaniko-secret.json",> "path":"kaniko-secret.json"}},"secretName":"kaniko-secret"}}}}}}}}:
> validation failure list:
>     type in spec.tasks.image.volumes.secret is required
>       Warning  IntegrationKitError  20s (x6 over 100s)  camel-k-integration-kit-controller  (combined from similar events):
> Cannot reconcile Integration Kit kit-bsqdepf9gf15pade1u5g: cannot
> create build: Build.camel.apache.org "kit-bsqdepf9gf15pade1u5g" is
> invalid: []: Invalid value: map[string]interface
> {}{"apiVersion":"camel.apache.org/v1","secretName":"kaniko-secret"}}}}}}}}:
> **validation failure list:
>     type in spec.tasks.image.volumes.secret is required**

解决此问题方面的任何帮助将不胜感激。

谢谢 阿南德

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)