Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't mount secrets with binary data #2009

Closed
nicolaferraro opened this issue Feb 9, 2021 · 2 comments
Closed

Can't mount secrets with binary data #2009

nicolaferraro opened this issue Feb 9, 2021 · 2 comments
Labels
kind/bug Something isn't working
Milestone

Comments

@nicolaferraro
Copy link
Member

Trying to get some binary data stored in a secret (without the --resource option), I'm failing:

keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass password -validity 365 -keysize 2048
kubectl create secret generic keystore --from-file keystore.jks
kamel init Hello.java
kamel run Hello.java --secret keystore --logs

It seems the runtime tries to load it as if it was quarkus config.
Is it just a runtime issue? @lburgazzoli , @squakez

Logs:

Condition "IntegrationPlatformAvailable" is "True" for Integration hello: camel-k
Integration hello in phase "Initialization"
Condition "IntegrationKitAvailable" is "False" for Integration hello: creating a new integration kit
Integration hello in phase "Building Kit"
Condition "IntegrationKitAvailable" is "True" for Integration hello: kit-c0h6u858t4svhnrganc0
Integration hello in phase "Deploying"
Integration hello in phase "Running"
Condition "CronJobAvailable" is "False" for Integration hello: different controller strategy used (deployment)
Condition "DeploymentAvailable" is "True" for Integration hello: deployment name is hello
Condition "KnativeServiceAvailable" is "False" for Integration hello: different controller strategy used (deployment)
Condition "Ready" is "False" for Integration hello
[2] Monitoring pod hello-7bdc6746c4-dpqs2
[2] exec java -cp ./resources:/etc/camel/conf:/etc/camel/conf.d/_secrets/keystore:/etc/camel/resources:/etc/camel/sources/i-source-000:dependencies/camel-k-integration-1.3.1-SNAPSHOT-runner.jar:dependencies/io.quarkus.arc.arc-1.10.3.Final.jar:dependencies/io.quarkus.quarkus-arc-1.10.3.Final.jar:dependencies/io.quarkus.quarkus-bootstrap-runner-1.10.3.Final.jar:dependencies/io.quarkus.quarkus-core-1.10.3.Final.jar:dependencies/io.quarkus.quarkus-development-mode-spi-1.10.3.Final.jar:dependencies/io.quarkus.quarkus-ide-launcher-1.10.3.Final.jar:dependencies/io.smallrye.common.smallrye-common-annotation-1.4.1.jar:dependencies/io.smallrye.common.smallrye-common-classloader-1.4.1.jar:dependencies/io.smallrye.common.smallrye-common-constraint-1.4.1.jar:dependencies/io.smallrye.common.smallrye-common-expression-1.4.1.jar:dependencies/io.smallrye.common.smallrye-common-function-1.4.1.jar:dependencies/io.smallrye.common.smallrye-common-io-1.4.1.jar:dependencies/io.smallrye.config.smallrye-config-1.9.3.jar:dependencies/io.smallrye.config.smallrye-config-common-1.9.3.jar:dependencies/jakarta.annotation.jakarta.annotation-api-1.3.5.jar:dependencies/jakarta.el.jakarta.el-api-3.0.3.jar:dependencies/jakarta.enterprise.jakarta.enterprise.cdi-api-2.0.2.jar:dependencies/jakarta.inject.jakarta.inject-api-1.0.jar:dependencies/jakarta.interceptor.jakarta.interceptor-api-1.2.5.jar:dependencies/jakarta.transaction.jakarta.transaction-api-1.3.3.jar:dependencies/org.apache.camel.camel-api-3.7.0.jar:dependencies/org.apache.camel.camel-base-3.7.0.jar:dependencies/org.apache.camel.camel-base-engine-3.7.0.jar:dependencies/org.apache.camel.camel-bean-3.7.0.jar:dependencies/org.apache.camel.camel-componentdsl-3.7.0.jar:dependencies/org.apache.camel.camel-core-catalog-3.7.0.jar:dependencies/org.apache.camel.camel-core-engine-3.7.0.jar:dependencies/org.apache.camel.camel-core-languages-3.7.0.jar:dependencies/org.apache.camel.camel-core-model-3.7.0.jar:dependencies/org.apache.camel.camel-core-processor-3.7.0.jar:dependencies/org.apache.camel.camel-core-reifier-3.7.0.jar:dependencies/org.apache.camel.camel-endpointdsl-3.7.0.jar:dependencies/org.apache.camel.camel-log-3.7.0.jar:dependencies/org.apache.camel.camel-main-3.7.0.jar:dependencies/org.apache.camel.camel-management-api-3.7.0.jar:dependencies/org.apache.camel.camel-microprofile-config-3.7.0.jar:dependencies/org.apache.camel.camel-support-3.7.0.jar:dependencies/org.apache.camel.camel-timer-3.7.0.jar:dependencies/org.apache.camel.camel-tooling-model-3.7.0.jar:dependencies/org.apache.camel.camel-util-3.7.0.jar:dependencies/org.apache.camel.camel-util-json-3.7.0.jar:dependencies/org.apache.camel.k.camel-k-core-1.6.0.jar:dependencies/org.apache.camel.k.camel-k-core-api-1.6.0.jar:dependencies/org.apache.camel.k.camel-k-core-support-1.6.0.jar:dependencies/org.apache.camel.k.camel-k-loader-java-1.6.0.jar:dependencies/org.apache.camel.k.camel-k-loader-java-impl-1.6.0.jar:dependencies/org.apache.camel.k.camel-k-runtime-1.6.0.jar:dependencies/org.apache.camel.quarkus.camel-quarkus-bean-1.5.0.jar:dependencies/org.apache.camel.quarkus.camel-quarkus-core-1.5.0.jar:dependencies/org.apache.camel.quarkus.camel-quarkus-endpointdsl-1.5.0.jar:dependencies/org.apache.camel.quarkus.camel-quarkus-log-1.5.0.jar:dependencies/org.apache.camel.quarkus.camel-quarkus-main-1.5.0.jar:dependencies/org.apache.camel.quarkus.camel-quarkus-support-common-1.5.0.jar:dependencies/org.apache.camel.quarkus.camel-quarkus-timer-1.5.0.jar:dependencies/org.eclipse.microprofile.config.microprofile-config-api-1.4.jar:dependencies/org.eclipse.microprofile.context-propagation.microprofile-context-propagation-api-1.0.1.jar:dependencies/org.graalvm.sdk.graal-sdk-20.2.0.jar:dependencies/org.jboss.logging.jboss-logging-3.4.1.Final.jar:dependencies/org.jboss.logging.jboss-logging-annotations-2.1.0.Final.jar:dependencies/org.jboss.logmanager.jboss-logmanager-embedded-1.0.6.jar:dependencies/org.jboss.slf4j.slf4j-jboss-logmanager-1.1.0.Final.jar:dependencies/org.jboss.threads.jboss-threads-3.1.1.Final.jar:dependencies/org.jooq.joor-0.9.13.jar:dependencies/org.ow2.asm.asm-9.0.jar:dependencies/org.slf4j.slf4j-api-1.7.30.jar:dependencies/org.wildfly.common.wildfly-common-1.5.4.Final-format-001.jar io.quarkus.runner.GeneratedMain
[2] Exception in thread "main" java.lang.ExceptionInInitializerError
[2]     at io.quarkus.runner.ApplicationImpl.<clinit>(ApplicationImpl.zig:47)
[2]     at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
[2]     at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
[2]     at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
[2]     at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
[2]     at java.base/java.lang.Class.newInstance(Class.java:584)
[2]     at io.quarkus.runtime.Quarkus.run(Quarkus.java:61)
[2]     at io.quarkus.runtime.Quarkus.run(Quarkus.java:38)
[2]     at io.quarkus.runtime.Quarkus.run(Quarkus.java:104)
[2]     at io.quarkus.runner.GeneratedMain.main(GeneratedMain.zig:29)
[2] Caused by: java.lang.RuntimeException: java.nio.charset.MalformedInputException: Input length = 1
[2]     at org.apache.camel.k.support.RuntimeSupport.loadUserProperties(RuntimeSupport.java:379)
[2]     at org.apache.camel.k.quarkus.ApplicationConfigSourceProvider.getConfigSources(ApplicationConfigSourceProvider.java:31)
[2]     at io.smallrye.config.SmallRyeConfigBuilder.discoverSources(SmallRyeConfigBuilder.java:97)
[2]     at io.smallrye.config.SmallRyeConfig.buildConfigSources(SmallRyeConfig.java:79)
[2]     at io.smallrye.config.SmallRyeConfig.<init>(SmallRyeConfig.java:62)
[2]     at io.smallrye.config.SmallRyeConfigBuilder.build(SmallRyeConfigBuilder.java:359)
[2]     at io.quarkus.runtime.generated.Config.<clinit>(Config.zig:287)
[2]     ... 10 more
[2] Caused by: java.nio.charset.MalformedInputException: Input length = 1
[2]     at java.base/java.lang.StringCoding.throwMalformed(StringCoding.java:685)
[2]     at java.base/java.lang.StringCoding.decodeUTF8_0(StringCoding.java:872)
[2]     at java.base/java.lang.StringCoding.newStringNoRepl1(StringCoding.java:1005)
[2]     at java.base/java.lang.StringCoding.newStringNoRepl(StringCoding.java:990)
[2]     at java.base/java.lang.System$2.newStringNoRepl(System.java:2197)
[2]     at java.base/java.nio.file.Files.readString(Files.java:3287)
[2]     at org.apache.camel.k.support.RuntimeSupport$1.visitFile(RuntimeSupport.java:366)
[2]     at org.apache.camel.k.support.RuntimeSupport$1.visitFile(RuntimeSupport.java:347)
[2]     at java.base/java.nio.file.Files.walkFileTree(Files.java:2725)
[2]     at java.base/java.nio.file.Files.walkFileTree(Files.java:2797)
[2]     at org.apache.camel.k.support.RuntimeSupport.loadUserProperties(RuntimeSupport.java:377)
[2]     ... 16 more
@nicolaferraro nicolaferraro added the kind/bug Something isn't working label Feb 9, 2021
@nicolaferraro nicolaferraro added this to the 1.3.2 milestone Feb 9, 2021
@squakez
Copy link
Contributor

squakez commented Feb 9, 2021

Yeah, it's the same as apache/camel-k-runtime#593 - I am having a look at it.

@nicolaferraro nicolaferraro modified the milestones: 1.3.2, 1.4.0 Mar 19, 2021
@nicolaferraro nicolaferraro modified the milestones: 1.4.0, 1.5.0 Apr 13, 2021
@nicolaferraro nicolaferraro modified the milestones: 1.5.0, 1.4.0 Apr 22, 2021
@nicolaferraro
Copy link
Member Author

Fixed in 1.4.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants