This is an automated email from the ASF dual-hosted git repository.
gfournier pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-k.git
The following commit(s) were added to refs/heads/main by this push:
new 736910cf4 feat(core): Mount configmap/secret resources in dedicated
resources.d
736910cf4 is described below
commit 736910cf4fd6d6c8f10c5086d2ee6728928c91fc
Author: Gaelle Fournier <[email protected]>
AuthorDate: Fri Jun 7 18:03:51 2024 +0200
feat(core): Mount configmap/secret resources in dedicated resources.d
---
.../pages/configuration/runtime-resources.adoc | 8 +--
.../config/files/resource-configmap-route.yaml | 2 +-
e2e/common/config/files/resource-secret-route.yaml | 2 +-
e2e/common/traits/jvm_test.go | 69 ++++++++++++++++++++--
pkg/trait/jvm.go | 6 +-
pkg/trait/jvm_test.go | 26 ++++----
pkg/trait/trait_types.go | 28 +++++----
pkg/util/camel/camel_util.go | 19 +++---
pkg/util/util.go | 2 +-
9 files changed, 120 insertions(+), 42 deletions(-)
diff --git a/docs/modules/ROOT/pages/configuration/runtime-resources.adoc
b/docs/modules/ROOT/pages/configuration/runtime-resources.adoc
index a5aef8c92..4ed6c9eb4 100644
--- a/docs/modules/ROOT/pages/configuration/runtime-resources.adoc
+++ b/docs/modules/ROOT/pages/configuration/runtime-resources.adoc
@@ -24,14 +24,14 @@ We want to use the materialized file in an integration:
.resource-configmap-route.yaml
----
- from:
- uri:
"file:/etc/camel/resources/my-cm/?fileName=my-configmap-key&noop=true&idempotent=false"
+ uri:
"file:/etc/camel/resources.d/_configmaps/my-cm/?fileName=my-configmap-key&noop=true&idempotent=false"
steps:
- setBody:
simple: "resource file content is: ${body}"
- to: "log:info"
----
-You can see that we're expecting to use a _my-configmap-key_ file stored in
the default resource location (_/etc/camel/resources/_). In order to
materialize the `Configmap` will be as easy as running the `--resource`
_configmap_ syntax:
+You can see that we're expecting to use a _my-configmap-key_ file stored in
the default resource location (_/etc/camel/resources.d/_configmaps/_). In order
to materialize the `Configmap` will be as easy as running the `--resource`
_configmap_ syntax:
----
kamel run --resource configmap:my-cm resource-configmap-route.yaml
@@ -58,14 +58,14 @@ We want to use the materialized secret file in an
integration:
.resource-secret-route.yaml
----
- from:
- uri:
"file:/etc/camel/resources/my-sec/?fileName=my-secret-key&noop=true&idempotent=false"
+ uri:
"file:/etc/camel/resources.d/_secrets/my-sec/?fileName=my-secret-key&noop=true&idempotent=false"
steps:
- setBody:
simple: "secret file content is: ${body}"
- to: "log:info"
----
-You can see that we're expecting to use a _my-secret-key_ file stored in the
default resource location (_/etc/camel/resources/_). In order to materialize
the `Secret` will be as easy as running the `--resource` _secret_ syntax:
+You can see that we're expecting to use a _my-secret-key_ file stored in the
default resource location (_/etc/camel/resources.d/_secrets/_). In order to
materialize the `Secret` will be as easy as running the `--resource` _secret_
syntax:
----
kamel run --resource secret:my-sec resource-secret-route.yaml
diff --git a/e2e/common/config/files/resource-configmap-route.yaml
b/e2e/common/config/files/resource-configmap-route.yaml
index 3c90b8923..7ffbc8e97 100644
--- a/e2e/common/config/files/resource-configmap-route.yaml
+++ b/e2e/common/config/files/resource-configmap-route.yaml
@@ -18,7 +18,7 @@
# ---------------------------------------------------------------------------
- from:
- uri:
"file:/etc/camel/resources/my-cm/?fileName=my-configmap-key&noop=true&idempotent=false"
+ uri:
"file:/etc/camel/resources.d/_configmaps/my-cm/?fileName=my-configmap-key&noop=true&idempotent=false"
steps:
- setBody:
simple: "resource file content is: ${body}"
diff --git a/e2e/common/config/files/resource-secret-route.yaml
b/e2e/common/config/files/resource-secret-route.yaml
index 024a4d7ec..9ce6ac216 100644
--- a/e2e/common/config/files/resource-secret-route.yaml
+++ b/e2e/common/config/files/resource-secret-route.yaml
@@ -18,7 +18,7 @@
# ---------------------------------------------------------------------------
- from:
- uri:
"file:/etc/camel/resources/my-sec/?fileName=my-secret-key&noop=true&idempotent=false"
+ uri:
"file:/etc/camel/resources.d/_secrets/my-sec/?fileName=my-secret-key&noop=true&idempotent=false"
steps:
- setBody:
simple: "resource file content is: ${body}"
diff --git a/e2e/common/traits/jvm_test.go b/e2e/common/traits/jvm_test.go
index 958763f79..904f188a1 100644
--- a/e2e/common/traits/jvm_test.go
+++ b/e2e/common/traits/jvm_test.go
@@ -58,18 +58,75 @@ func TestJVMTrait(t *testing.T) {
require.NoError(t, err)
t.Run("JVM trait classpath", func(t *testing.T) {
- g.Expect(KamelRunWithID(t, ctx, operatorID, ns,
"./files/jvm/Classpath.java", "--resource", "configmap:my-deps", "-t",
"jvm.classpath=/etc/camel/resources/my-deps/sample-1.0.jar").Execute()).To(Succeed())
- g.Eventually(IntegrationPodPhase(t, ctx, ns,
"classpath"), TestTimeoutLong).Should(Equal(corev1.PodRunning))
- g.Eventually(IntegrationConditionStatus(t, ctx, ns,
"classpath", v1.IntegrationConditionReady),
TestTimeoutShort).Should(Equal(corev1.ConditionTrue))
- g.Eventually(IntegrationLogs(t, ctx, ns, "classpath"),
TestTimeoutShort).Should(ContainSubstring("Hello World!"))
+ name := RandomizedSuffixName("classpath")
+ g.Expect(KamelRunWithID(t, ctx, operatorID, ns,
+ "./files/jvm/Classpath.java",
+ "--name", name,
+ "--resource", "configmap:my-deps",
+ "-t",
"jvm.classpath=/etc/camel/resources.d/_configmaps/my-deps/sample-1.0.jar").Execute()).To(Succeed())
+ g.Eventually(IntegrationPodPhase(t, ctx, ns, name),
TestTimeoutLong).Should(Equal(corev1.PodRunning))
+ g.Eventually(IntegrationConditionStatus(t, ctx, ns,
name, v1.IntegrationConditionReady),
TestTimeoutShort).Should(Equal(corev1.ConditionTrue))
+ g.Eventually(IntegrationLogs(t, ctx, ns, name),
TestTimeoutShort).Should(ContainSubstring("Hello World!"))
// check integration schema does not contains unwanted
default trait value.
- g.Eventually(UnstructuredIntegration(t, ctx, ns,
"classpath")).ShouldNot(BeNil())
- unstructuredIntegration := UnstructuredIntegration(t,
ctx, ns, "classpath")()
+ g.Eventually(UnstructuredIntegration(t, ctx, ns,
name)).ShouldNot(BeNil())
+ unstructuredIntegration := UnstructuredIntegration(t,
ctx, ns, name)()
+ jvmTrait, _, _ :=
unstructured.NestedMap(unstructuredIntegration.Object, "spec", "traits", "jvm")
+ g.Expect(jvmTrait).ToNot(BeNil())
+ g.Expect(len(jvmTrait)).To(Equal(1))
+
g.Expect(jvmTrait["classpath"]).To(Equal("/etc/camel/resources.d/_configmaps/my-deps/sample-1.0.jar"))
+ mountTrait, _, _ :=
unstructured.NestedMap(unstructuredIntegration.Object, "spec", "traits",
"mount")
+ g.Expect(mountTrait).ToNot(BeNil())
+ g.Expect(len(mountTrait)).To(Equal(1))
+
+ })
+
+ t.Run("JVM trait classpath on deprecated path", func(t
*testing.T) {
+ name := RandomizedSuffixName("classpath")
+ g.Expect(KamelRunWithID(t, ctx, operatorID, ns,
+ "./files/jvm/Classpath.java",
+ "--name", name,
+ "-t",
"mount.resources=configmap:my-deps/sample-1.0.jar@/etc/camel/resources",
+ "-t",
"jvm.classpath=/etc/camel/resources/my-deps/sample-1.0.jar").Execute()).To(Succeed())
+ g.Eventually(IntegrationPodPhase(t, ctx, ns, name),
TestTimeoutLong).Should(Equal(corev1.PodRunning))
+ g.Eventually(IntegrationConditionStatus(t, ctx, ns,
name, v1.IntegrationConditionReady),
TestTimeoutShort).Should(Equal(corev1.ConditionTrue))
+ g.Eventually(IntegrationLogs(t, ctx, ns, name),
TestTimeoutShort).Should(ContainSubstring("Hello World!"))
+
+ // check integration schema does not contains unwanted
default trait value.
+ g.Eventually(UnstructuredIntegration(t, ctx, ns,
name)).ShouldNot(BeNil())
+ unstructuredIntegration := UnstructuredIntegration(t,
ctx, ns, name)()
jvmTrait, _, _ :=
unstructured.NestedMap(unstructuredIntegration.Object, "spec", "traits", "jvm")
g.Expect(jvmTrait).ToNot(BeNil())
g.Expect(len(jvmTrait)).To(Equal(1))
g.Expect(jvmTrait["classpath"]).To(Equal("/etc/camel/resources/my-deps/sample-1.0.jar"))
+ mountTrait, _, _ :=
unstructured.NestedMap(unstructuredIntegration.Object, "spec", "traits",
"mount")
+ g.Expect(mountTrait).ToNot(BeNil())
+ g.Expect(len(mountTrait)).To(Equal(1))
+
g.Expect(mountTrait["resources"]).To(ContainElements("configmap:my-deps/sample-1.0.jar@/etc/camel/resources"))
+ })
+
+ t.Run("JVM trait classpath on specific classpath", func(t
*testing.T) {
+ name := RandomizedSuffixName("classpath")
+ g.Expect(KamelRunWithID(t, ctx, operatorID, ns,
+ "./files/jvm/Classpath.java",
+ "--name", name,
+ "-t",
"mount.resources=configmap:my-deps/sample-1.0.jar@/etc/other/resources",
+ "-t",
"jvm.classpath=/etc/other/resources/my-deps/sample-1.0.jar").Execute()).To(Succeed())
+ g.Eventually(IntegrationPodPhase(t, ctx, ns, name),
TestTimeoutLong).Should(Equal(corev1.PodRunning))
+ g.Eventually(IntegrationConditionStatus(t, ctx, ns,
name, v1.IntegrationConditionReady),
TestTimeoutShort).Should(Equal(corev1.ConditionTrue))
+ g.Eventually(IntegrationLogs(t, ctx, ns, name),
TestTimeoutShort).Should(ContainSubstring("Hello World!"))
+
+ // check integration schema does not contains unwanted
default trait value.
+ g.Eventually(UnstructuredIntegration(t, ctx, ns,
name)).ShouldNot(BeNil())
+ unstructuredIntegration := UnstructuredIntegration(t,
ctx, ns, name)()
+ jvmTrait, _, _ :=
unstructured.NestedMap(unstructuredIntegration.Object, "spec", "traits", "jvm")
+ g.Expect(jvmTrait).ToNot(BeNil())
+ g.Expect(len(jvmTrait)).To(Equal(1))
+
g.Expect(jvmTrait["classpath"]).To(Equal("/etc/other/resources/my-deps/sample-1.0.jar"))
+ mountTrait, _, _ :=
unstructured.NestedMap(unstructuredIntegration.Object, "spec", "traits",
"mount")
+ g.Expect(mountTrait).ToNot(BeNil())
+ g.Expect(len(mountTrait)).To(Equal(1))
+
g.Expect(mountTrait["resources"]).To(ContainElements("configmap:my-deps/sample-1.0.jar@/etc/other/resources"))
})
g.Expect(Kamel(t, ctx, "delete", "--all", "-n",
ns).Execute()).To(Succeed())
diff --git a/pkg/trait/jvm.go b/pkg/trait/jvm.go
index f79e03b83..7ca44edd4 100644
--- a/pkg/trait/jvm.go
+++ b/pkg/trait/jvm.go
@@ -205,8 +205,12 @@ func (t *jvmTrait) enableDebug(e *Environment) string {
func (t *jvmTrait) prepareClasspathItems(container *corev1.Container) []string
{
classpath := sets.NewSet()
+ // Deprecated: replaced by
/etc/camel/resources.d/[_configmaps/_secrets]
(camel.ResourcesConfigmapsMountPath/camel.ResourcesSecretsMountPath).
classpath.Add("./resources")
- classpath.Add(filepath.ToSlash(camel.ConfigResourcesMountPath))
+ classpath.Add(filepath.ToSlash(camel.ResourcesConfigmapsMountPath))
+ classpath.Add(filepath.ToSlash(camel.ResourcesSecretsMountPath))
+ // Deprecated: replaced by
/etc/camel/resources.d/[_configmaps/_secrets]
(camel.ResourcesConfigmapsMountPath/camel.ResourcesSecretsMountPath).
+ //nolint: staticcheck
classpath.Add(filepath.ToSlash(camel.ResourcesDefaultMountPath))
if t.Classpath != "" {
classpath.Add(strings.Split(t.Classpath, ":")...)
diff --git a/pkg/trait/jvm_test.go b/pkg/trait/jvm_test.go
index 9206e4514..13041de49 100644
--- a/pkg/trait/jvm_test.go
+++ b/pkg/trait/jvm_test.go
@@ -37,7 +37,9 @@ import (
)
var (
- crMountPath = filepath.ToSlash(camel.ConfigResourcesMountPath)
+ cmrMountPath = filepath.ToSlash(camel.ResourcesConfigmapsMountPath)
+ scrMountPath = filepath.ToSlash(camel.ResourcesSecretsMountPath)
+ // Deprecated.
rdMountPath = filepath.ToSlash(camel.ResourcesDefaultMountPath)
)
@@ -131,7 +133,7 @@ func
TestConfigureJvmTraitExecutableSourcelessContainerWithJar(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, []string{
"-cp",
- fmt.Sprintf("./resources:%s:%s", crMountPath, rdMountPath),
+ fmt.Sprintf("./resources:%s:%s:%s", rdMountPath, cmrMountPath,
scrMountPath),
"-jar", "my-path/to/my-app.jar",
}, d.Spec.Template.Spec.Containers[0].Args)
}
@@ -172,7 +174,7 @@ func
TestConfigureJvmTraitExecutableSourcelessContainerWithJarAndOptions(t *test
require.NoError(t, err)
assert.Equal(t, []string{
"-Xmx1234M", "-Dmy-prop=abc",
- "-cp",
"./resources:/etc/camel/conf.d/_resources:/etc/camel/resources:deps/a.jar:deps/b.jar",
+ "-cp",
"./resources:/etc/camel/resources:/etc/camel/resources.d/_configmaps:/etc/camel/resources.d/_secrets:deps/a.jar:deps/b.jar",
"-jar", "my-path/to/my-app.jar",
}, d.Spec.Template.Spec.Containers[0].Args)
}
@@ -206,7 +208,7 @@ func TestConfigureJvmTraitWithJar(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, []string{
"-cp",
- fmt.Sprintf("./resources:%s:%s", crMountPath, rdMountPath),
+ fmt.Sprintf("./resources:%s:%s:%s", rdMountPath, cmrMountPath,
scrMountPath),
"-jar", "my-path/to/my-app.jar",
}, d.Spec.Template.Spec.Containers[0].Args)
}
@@ -246,7 +248,7 @@ func TestConfigureJvmTraitWithJarAndConfigs(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, []string{
"-Xmx1234M", "-Dmy-prop=abc",
- "-cp",
"./resources:/etc/camel/conf.d/_resources:/etc/camel/resources:deps/a.jar:deps/b.jar",
+ "-cp",
"./resources:/etc/camel/resources:/etc/camel/resources.d/_configmaps:/etc/camel/resources.d/_secrets:deps/a.jar:deps/b.jar",
"-jar", "my-path/to/my-app.jar",
}, d.Spec.Template.Spec.Containers[0].Args)
}
@@ -301,9 +303,10 @@ func TestApplyJvmTraitWithDeploymentResource(t *testing.T)
{
assert.Equal(t, []string{
"-cp",
fmt.Sprintf(
- "./resources:%s:%s:/mount/path:dependencies/*",
- crMountPath,
+ "./resources:%s:%s:%s:/mount/path:dependencies/*",
rdMountPath,
+ cmrMountPath,
+ scrMountPath,
),
"io.quarkus.bootstrap.runner.QuarkusEntryPoint",
}, d.Spec.Template.Spec.Containers[0].Args)
@@ -335,7 +338,8 @@ func TestApplyJvmTraitWithKnativeResource(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, []string{
"-cp",
- fmt.Sprintf("./resources:%s:%s:/mount/path:dependencies/*",
crMountPath, rdMountPath),
+ fmt.Sprintf("./resources:%s:%s:%s:/mount/path:dependencies/*",
+ rdMountPath, cmrMountPath, scrMountPath),
"io.quarkus.bootstrap.runner.QuarkusEntryPoint",
}, s.Spec.Template.Spec.Containers[0].Args)
}
@@ -402,7 +406,7 @@ func TestApplyJvmTraitWithExternalKitType(t *testing.T) {
assert.Equal(t, []string{
"-cp",
- fmt.Sprintf("./resources:%s:%s:dependencies/*", crMountPath,
rdMountPath),
+ fmt.Sprintf("./resources:%s:%s:%s:dependencies/*", rdMountPath,
cmrMountPath, scrMountPath),
"io.quarkus.bootstrap.runner.QuarkusEntryPoint",
}, d.Spec.Template.Spec.Containers[0].Args)
}
@@ -439,7 +443,9 @@ func TestApplyJvmTraitWithClasspath(t *testing.T) {
require.NoError(t, err)
assert.Equal(t, []string{
"-cp",
-
fmt.Sprintf("./resources:%s:%s:/mount/path:%s:%s:dependencies/*", crMountPath,
rdMountPath, "/path/to/another/dep.jar", "/path/to/my-dep.jar"),
+
fmt.Sprintf("./resources:%s:%s:%s:/mount/path:%s:%s:dependencies/*",
+ rdMountPath, cmrMountPath, scrMountPath,
+ "/path/to/another/dep.jar", "/path/to/my-dep.jar"),
"io.quarkus.bootstrap.runner.QuarkusEntryPoint",
}, d.Spec.Template.Spec.Containers[0].Args)
}
diff --git a/pkg/trait/trait_types.go b/pkg/trait/trait_types.go
index bc9737f64..b05e405ce 100644
--- a/pkg/trait/trait_types.go
+++ b/pkg/trait/trait_types.go
@@ -53,6 +53,10 @@ const (
// Knative does not want name=http, it only supports http1 (HTTP/1) and
h2c (HTTP/2)
//
https://github.com/knative/specs/blob/main/specs/serving/runtime-contract.md#protocols-and-ports
defaultKnativeContainerPortName = "h2c"
+
+ secretStorageType = "secret"
+ configmapStorageType = "configmap"
+ pvcStorageType = "pvc"
)
var capabilityDynamicProperty = regexp.MustCompile(`(\$\{([^}]*)\})`)
@@ -569,8 +573,8 @@ func (e *Environment) configureVolumesAndMounts(vols
*[]corev1.Volume, mnts *[]c
// User provided configmaps
for _, configmaps := range e.collectConfigurations("configmap") {
refName := kubernetes.SanitizeLabel(configmaps["value"])
- mountPath := getMountPoint(configmaps["value"],
configmaps["resourceMountPoint"], "configmap", configmaps["resourceType"])
- vol := getVolume(refName, "configmap", configmaps["value"],
configmaps["resourceKey"], configmaps["resourceKey"])
+ mountPath := getMountPoint(configmaps["value"],
configmaps["resourceMountPoint"], configmapStorageType,
configmaps["resourceType"])
+ vol := getVolume(refName, configmapStorageType,
configmaps["value"], configmaps["resourceKey"], configmaps["resourceKey"])
mnt := getMount(refName, mountPath, "", true)
*vols = append(*vols, *vol)
@@ -581,8 +585,8 @@ func (e *Environment) configureVolumesAndMounts(vols
*[]corev1.Volume, mnts *[]c
// User provided secrets
for _, secret := range e.collectConfigurations("secret") {
refName := kubernetes.SanitizeLabel(secret["value"])
- mountPath := getMountPoint(secret["value"],
secret["resourceMountPoint"], "secret", secret["resourceType"])
- vol := getVolume(refName, "secret", secret["value"],
secret["resourceKey"], secret["resourceKey"])
+ mountPath := getMountPoint(secret["value"],
secret["resourceMountPoint"], secretStorageType, secret["resourceType"])
+ vol := getVolume(refName, secretStorageType, secret["value"],
secret["resourceKey"], secret["resourceKey"])
mnt := getMount(refName, mountPath, "", true)
*vols = append(*vols, *vol)
@@ -601,7 +605,7 @@ func (e *Environment) configureVolumesAndMounts(vols
*[]corev1.Volume, mnts *[]c
mountPath := configParts[1]
volumeName := pvcName + "-data"
- vol := getVolume(volumeName, "pvc", pvcName, "", "")
+ vol := getVolume(volumeName, pvcStorageType, pvcName, "", "")
mnt := getMount(volumeName, mountPath, "", false)
*vols = append(*vols, *vol)
*mnts = append(*mnts, *mnt)
@@ -615,19 +619,19 @@ func getVolume(volName, storageType, storageName,
filterKey, filterValue string)
VolumeSource: corev1.VolumeSource{},
}
switch storageType {
- case "configmap":
+ case configmapStorageType:
volume.VolumeSource.ConfigMap = &corev1.ConfigMapVolumeSource{
LocalObjectReference: corev1.LocalObjectReference{
Name: storageName,
},
Items: items,
}
- case "secret":
+ case secretStorageType:
volume.VolumeSource.Secret = &corev1.SecretVolumeSource{
SecretName: storageName,
Items: items,
}
- case "pvc":
+ case pvcStorageType:
volume.VolumeSource.PersistentVolumeClaim =
&corev1.PersistentVolumeClaimVolumeSource{
ClaimName: storageName,
}
@@ -671,10 +675,14 @@ func getMountPoint(resourceName string, mountPoint
string, storagetype, resource
return mountPoint
}
if resourceType == "data" {
- return filepath.Join(camel.ResourcesDefaultMountPath,
resourceName)
+ defaultResourceMountPoint := camel.ResourcesConfigmapsMountPath
+ if storagetype == secretStorageType {
+ defaultResourceMountPoint =
camel.ResourcesSecretsMountPath
+ }
+ return filepath.Join(defaultResourceMountPoint, resourceName)
}
defaultMountPoint := camel.ConfigConfigmapsMountPath
- if storagetype == "secret" {
+ if storagetype == secretStorageType {
defaultMountPoint = camel.ConfigSecretsMountPath
}
diff --git a/pkg/util/camel/camel_util.go b/pkg/util/camel/camel_util.go
index b5ef592e3..321ab9ad1 100644
--- a/pkg/util/camel/camel_util.go
+++ b/pkg/util/camel/camel_util.go
@@ -29,14 +29,17 @@ import (
)
var (
- BasePath = "/etc/camel"
- ConfDPath = filepath.Join(BasePath, "conf.d")
- SourcesMountPath = filepath.Join(BasePath, "sources")
- ResourcesDefaultMountPath = filepath.Join(BasePath, "resources")
- ConfigResourcesMountPath = filepath.Join(ConfDPath, "_resources")
- ConfigConfigmapsMountPath = filepath.Join(ConfDPath, "_configmaps")
- ConfigSecretsMountPath = filepath.Join(ConfDPath, "_secrets")
- ServiceBindingsMountPath = filepath.Join(ConfDPath, "_servicebindings")
+ BasePath = "/etc/camel"
+ ConfDPath = filepath.Join(BasePath, "conf.d")
+ ResourcesDPath = filepath.Join(BasePath, "resources.d")
+ SourcesMountPath = filepath.Join(BasePath, "sources")
+ // Deprecated: replaced by
/etc/camel/resources.d/[_configmaps/_secrets]
(ResourcesConfigmapsMountPath/ResourcesSecretsMountPath).
+ ResourcesDefaultMountPath = filepath.Join(BasePath, "resources")
+ ResourcesConfigmapsMountPath = filepath.Join(ResourcesDPath,
"_configmaps")
+ ResourcesSecretsMountPath = filepath.Join(ResourcesDPath, "_secrets")
+ ConfigConfigmapsMountPath = filepath.Join(ConfDPath, "_configmaps")
+ ConfigSecretsMountPath = filepath.Join(ConfDPath, "_secrets")
+ ServiceBindingsMountPath = filepath.Join(ConfDPath,
"_servicebindings")
)
func findBestMatch(catalogs []v1.CamelCatalog, runtime v1.RuntimeSpec)
(*RuntimeCatalog, error) {
diff --git a/pkg/util/util.go b/pkg/util/util.go
index 4ad0304c8..2d72de0d1 100644
--- a/pkg/util/util.go
+++ b/pkg/util/util.go
@@ -76,7 +76,7 @@ var ContainerPropertiesDirectory = "/etc/camel/conf.d"
var ContainerRoutesDirectory = "/etc/camel/sources"
// ContainerResourcesDirectory --.
-var ContainerResourcesDirectory = "/etc/camel/resources"
+var ContainerResourcesDirectory = "/etc/camel/resources.d"
// ContainerQuarkusDirectoryName --.
const ContainerQuarkusDirectoryName = "/quarkus"