lsergio opened a new issue, #5069:
URL: https://github.com/apache/camel-k/issues/5069
### What happened?
I'm not sure if this is a Camel K or Knative issue. This is what happens:
I created an Integration with the following source code:
```
apiVersion: camel.apache.org/v1
kind: Integration
metadata:
name: test
spec:
sources:
- name: main.groovy
content: |-
from('rest://GET:/test')
.to("direct:start")
from("direct:start")
.to("log:info")
traits:
container:
requestCPU: "200m"
requestMemory: 400Mi
limitMemory: 400Mi
quarkus:
buildMode:
- jvm
- native
builder:
properties:
- "quarkus.native.native-image-xmx=13g"
tasksRequestCPU:
- "quarkus-native:8000m"
tasksRequestMemory:
- "quarkus-native:16Gi"
tasksLimitMemory:
- "quarkus-native:16Gi"
nodeSelector:
karpenter: "true"
affinity:
enabled: true
nodeAffinityLabels:
- "karpenter=false"
knative-service:
minScale: 1
```
Right after it is applied, the operator starts both jvm and native builds.
As soon as the jvm build finishes, I have the integration running with the jvm
image. And there's one Knative revision and one pod:
```
k get revision
NAME CONFIG NAME K8S SERVICE NAME GENERATION READY REASON
ACTUAL REPLICAS DESIRED REPLICAS
test-00001 test 1 True
1 1
k get pod
NAME READY STATUS RESTARTS AGE
camel-k-kit-cmin9roc3t7tsqciksu0-builder 0/1 Init:1/3 0 4m
camel-k-operator-6cbc656bbd-wpzk2 1/1 Running 0
4m36s
test-00001-deployment-b84f65c69-fjllp 2/2 Running 0 3m
```
After a few minutes, when the native build is ready, Camel K tries to
replace the running one with the native version, but something goes wrong.
I have 2 revisions/pods running:
```
k get revision
NAME CONFIG NAME K8S SERVICE NAME GENERATION READY REASON
ACTUAL REPLICAS DESIRED REPLICAS
test-00002 test 2 Unknown
Deploying 0
test-00003 test 3 True
1 1
k get pod
NAME READY STATUS RESTARTS
AGE
camel-k-kit-cmin9roc3t7tsqciksu0-builder 0/1 Completed 0
7m27s
camel-k-operator-6cbc656bbd-wpzk2 1/1 Running 0
8m3s
test-00002-deployment-7d9846f9b5-wmb5c 0/2 Error 4 (52s ago)
97s
test-00003-deployment-df97fb85d-7v78t 2/2 Running 0
97s
```
test-0003 replaced test-0001 correctly and uses the native build image.
however, test-0002 was created with the native image, but the startup command
is the jvm one:
```
k logs test-00002-deployment-7d9846f9b5-wmb5c
Defaulted container "integration" out of: integration, queue-proxy
exec java -Xmx210M -cp
./resources:/etc/camel/application.properties:/etc/camel/conf.d/_resources:/etc/camel/resources:/etc/camel/sources/main.groovy:dependencies/app/camel-k-integration-2.2.0.jar:dependencies/lib/boot/io.github.crac.org-crac-0.1.3.jar:dependencies/lib/boot/io.quarkus.quarkus-bootstrap-runner-3.2.9.Final.jar:dependencies/lib/boot/io.quarkus.quarkus-development-mode-spi-3.2.9.Final.jar:dependencies/lib/boot/io.quarkus.quarkus-vertx-latebound-mdc-provider-3.2.9.Final.jar:dependencies/lib/boot/io.smallrye.common.smallrye-common-io-2.1.0.jar:dependencies/lib/boot/jakarta.json.jakarta.json-api-2.1.2.jar:dependencies/lib/boot/org.eclipse.parsson.parsson-1.1.2.jar:dependencies/lib/boot/org.graalvm.sdk.graal-sdk-23.0.1.jar:dependencies/lib/boot/org.jboss.logging.jboss-logging-3.5.1.Final.jar:dependencies/lib/boot/org.jboss.logmanager.jboss-logmanager-embedded-1.1.1.jar:dependencies/lib/boot/org.wildfly.common.wildfly-common-1.5.4.Final-format-001.jar:dependencies/lib/main
/com.aayushatharva.brotli4j.brotli4j-1.12.0.jar:dependencies/lib/main/com.aayushatharva.brotli4j.native-linux-x86_64-1.12.0.jar:dependencies/lib/main/com.aayushatharva.brotli4j.service-1.12.0.jar:dependencies/lib/main/com.fasterxml.jackson.core.jackson-annotations-2.15.2.jar:dependencies/lib/main/com.fasterxml.jackson.core.jackson-core-2.15.2.jar:dependencies/lib/main/com.fasterxml.jackson.core.jackson-databind-2.15.2.jar:dependencies/lib/main/com.fasterxml.jackson.dataformat.jackson-dataformat-yaml-2.15.2.jar:dependencies/lib/main/com.fasterxml.jackson.datatype.jackson-datatype-jdk8-2.15.2.jar:dependencies/lib/main/com.fasterxml.jackson.datatype.jackson-datatype-jsr310-2.15.2.jar:dependencies/lib/main/com.fasterxml.jackson.module.jackson-module-parameter-names-2.15.2.jar:dependencies/lib/main/com.github.mifmif.generex-1.0.2.jar:dependencies/lib/main/dk.brics.automaton.automaton-1.11-8.jar:dependencies/lib/main/io.fabric8.kubernetes-client-6.7.2.jar:dependencies/lib/main/io.fabric8.
kubernetes-client-api-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-httpclient-vertx-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-admissionregistration-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-apiextensions-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-apps-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-autoscaling-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-batch-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-certificates-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-common-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-coordination-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-core-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-discovery-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-events-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-extensions-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model
-flowcontrol-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-gatewayapi-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-metrics-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-networking-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-node-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-policy-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-rbac-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-resource-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-scheduling-6.7.2.jar:dependencies/lib/main/io.fabric8.kubernetes-model-storageclass-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-client-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-client-api-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-clusterautoscaling-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-config-6.7.2.jar:dependencies/lib/main/io.fa
bric8.openshift-model-console-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-hive-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-installer-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-machine-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-machineconfig-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-miscellaneous-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-monitoring-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-operator-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-operatorhub-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-storageversionmigrator-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-tuned-6.7.2.jar:dependencies/lib/main/io.fabric8.openshift-model-whereabouts-6.7.2.jar:dependencies/lib/main/io.fabric8.zjsonpatch-0.3.0.jar:dependencies/lib/main/io.netty.netty-buffer-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-codec-4.1.100.Final.jar:depende
ncies/lib/main/io.netty.netty-codec-dns-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-codec-haproxy-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-codec-http-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-codec-http2-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-codec-socks-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-common-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-handler-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-handler-proxy-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-resolver-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-resolver-dns-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-transport-4.1.100.Final.jar:dependencies/lib/main/io.netty.netty-transport-native-unix-common-4.1.100.Final.jar:dependencies/lib/main/io.quarkiverse.groovy.quarkus-groovy-3.2.2.jar:dependencies/lib/main/io.quarkus.arc.arc-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-arc-3.2.9.Final.jar:dependen
cies/lib/main/io.quarkus.quarkus-core-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-credentials-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-fs-util-0.0.9.jar:dependencies/lib/main/io.quarkus.quarkus-jackson-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-jsonp-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-kubernetes-client-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-kubernetes-client-internal-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-logging-json-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-mutiny-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-netty-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-security-runtime-spi-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-smallrye-context-propagation-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-vertx-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.quarkus-vertx-http-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.qua
rkus-vertx-http-dev-console-runtime-spi-3.2.9.Final.jar:dependencies/lib/main/io.quarkus.security.quarkus-security-2.0.2.Final.jar:dependencies/lib/main/io.smallrye.common.smallrye-common-annotation-2.1.0.jar:dependencies/lib/main/io.smallrye.common.smallrye-common-classloader-2.1.0.jar:dependencies/lib/main/io.smallrye.common.smallrye-common-constraint-2.1.0.jar:dependencies/lib/main/io.smallrye.common.smallrye-common-expression-2.1.0.jar:dependencies/lib/main/io.smallrye.common.smallrye-common-function-2.1.0.jar:dependencies/lib/main/io.smallrye.common.smallrye-common-os-2.1.0.jar:dependencies/lib/main/io.smallrye.common.smallrye-common-vertx-context-2.1.0.jar:dependencies/lib/main/io.smallrye.config.smallrye-config-3.3.2.jar:dependencies/lib/main/io.smallrye.config.smallrye-config-common-3.3.2.jar:dependencies/lib/main/io.smallrye.config.smallrye-config-core-3.3.2.jar:dependencies/lib/main/io.smallrye.config.smallrye-config-source-yaml-3.3.2.jar:dependencies/lib/main/io.smallrye.
reactive.mutiny-2.3.1.jar:dependencies/lib/main/io.smallrye.reactive.mutiny-smallrye-context-propagation-2.3.1.jar:dependencies/lib/main/io.smallrye.reactive.smallrye-mutiny-vertx-auth-common-3.7.2.jar:dependencies/lib/main/io.smallrye.reactive.smallrye-mutiny-vertx-bridge-common-3.7.2.jar:dependencies/lib/main/io.smallrye.reactive.smallrye-mutiny-vertx-core-3.7.2.jar:dependencies/lib/main/io.smallrye.reactive.smallrye-mutiny-vertx-runtime-3.7.2.jar:dependencies/lib/main/io.smallrye.reactive.smallrye-mutiny-vertx-uri-template-3.7.2.jar:dependencies/lib/main/io.smallrye.reactive.smallrye-mutiny-vertx-web-3.7.2.jar:dependencies/lib/main/io.smallrye.reactive.smallrye-mutiny-vertx-web-common-3.7.2.jar:dependencies/lib/main/io.smallrye.reactive.vertx-mutiny-generator-3.7.2.jar:dependencies/lib/main/io.smallrye.smallrye-context-propagation-2.1.0.jar:dependencies/lib/main/io.smallrye.smallrye-context-propagation-api-2.1.0.jar:dependencies/lib/main/io.smallrye.smallrye-context-propagation-s
torage-2.1.0.jar:dependencies/lib/main/io.smallrye.smallrye-fault-tolerance-vertx-6.2.6.jar:dependencies/lib/main/io.vertx.vertx-auth-common-4.4.6.jar:dependencies/lib/main/io.vertx.vertx-bridge-common-4.4.6.jar:dependencies/lib/main/io.vertx.vertx-codegen-4.4.6.jar:dependencies/lib/main/io.vertx.vertx-core-4.4.6.jar:dependencies/lib/main/io.vertx.vertx-uri-template-4.4.6.jar:dependencies/lib/main/io.vertx.vertx-web-4.4.6.jar:dependencies/lib/main/io.vertx.vertx-web-client-4.4.6.jar:dependencies/lib/main/io.vertx.vertx-web-common-4.4.6.jar:dependencies/lib/main/jakarta.activation.jakarta.activation-api-2.1.2.jar:dependencies/lib/main/jakarta.annotation.jakarta.annotation-api-2.1.1.jar:dependencies/lib/main/jakarta.el.jakarta.el-api-5.0.1.jar:dependencies/lib/main/jakarta.enterprise.jakarta.enterprise.cdi-api-4.0.1.jar:dependencies/lib/main/jakarta.enterprise.jakarta.enterprise.lang-model-4.0.1.jar:dependencies/lib/main/jakarta.inject.jakarta.inject-api-2.0.1.jar:dependencies/lib/mai
n/jakarta.interceptor.jakarta.interceptor-api-2.1.0.jar:dependencies/lib/main/jakarta.transaction.jakarta.transaction-api-2.0.1.jar:dependencies/lib/main/jakarta.xml.bind.jakarta.xml.bind-api-4.0.0.jar:dependencies/lib/main/org.apache.camel.camel-api-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-attachments-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-base-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-base-engine-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-bean-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-cloud-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-cloudevents-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-cluster-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-componentdsl-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-core-catalog-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-core-engine-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-core-languages-4.0.2.jar:dependencies/lib/m
ain/org.apache.camel.camel-core-model-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-core-processor-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-core-reifier-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-direct-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-dsl-support-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-endpointdsl-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-endpointdsl-support-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-groovy-dsl-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-groovy-dsl-common-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-knative-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-knative-api-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-knative-http-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-kubernetes-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-log-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-main-4.0.2.jar:dependencies/lib/m
ain/org.apache.camel.camel-management-api-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-microprofile-config-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-platform-http-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-platform-http-vertx-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-rest-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-support-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-tooling-model-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-util-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-util-json-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-vertx-common-4.0.2.jar:dependencies/lib/main/org.apache.camel.camel-xml-jaxp-util-4.0.2.jar:dependencies/lib/main/org.apache.camel.k.camel-k-core-3.2.3.jar:dependencies/lib/main/org.apache.camel.k.camel-k-core-api-3.2.3.jar:dependencies/lib/main/org.apache.camel.k.camel-k-core-support-3.2.3.jar:dependencies/lib/main/org.apache.camel.k.camel-k-knative-impl-3.2.3.
jar:dependencies/lib/main/org.apache.camel.k.camel-k-runtime-3.2.3.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-attachments-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-bean-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-cloudevents-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-core-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-core-cloud-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-direct-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-groovy-dsl-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-knative-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-kubernetes-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-log-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-platform-http-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarku
s.camel-quarkus-rest-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-support-commons-logging-3.2.2.jar:dependencies/lib/main/org.apache.camel.quarkus.camel-quarkus-support-dsl-3.2.2.jar:dependencies/lib/main/org.apache.commons.commons-compress-1.24.0.jar:dependencies/lib/main/org.apache.groovy.groovy-4.0.13.jar:dependencies/lib/main/org.eclipse.angus.angus-activation-2.0.1.jar:dependencies/lib/main/org.eclipse.microprofile.config.microprofile-config-api-3.0.3.jar:dependencies/lib/main/org.eclipse.microprofile.context-propagation.microprofile-context-propagation-api-1.3.jar:dependencies/lib/main/org.jboss.logging.commons-logging-jboss-logging-1.0.0.Final.jar:dependencies/lib/main/org.jboss.logging.jboss-logging-annotations-2.2.1.Final.jar:dependencies/lib/main/org.jboss.slf4j.slf4j-jboss-logmanager-2.0.0.Final.jar:dependencies/lib/main/org.jboss.threads.jboss-threads-3.5.0.Final.jar:dependencies/lib/main/org.slf4j.slf4j-api-2.0.6.jar:dependencies/lib/main/org.s
nakeyaml.snakeyaml-engine-2.6.jar:dependencies/lib/main/org.yaml.snakeyaml-2.0.jar:dependencies/quarkus-app-dependencies.txt:dependencies/quarkus-run.jar:dependencies/quarkus/generated-bytecode.jar:dependencies/quarkus/quarkus-application.dat:dependencies/quarkus/transformed-bytecode.jar
io.quarkus.bootstrap.runner.QuarkusEntryPoint
Error: Could not find or load main class
io.quarkus.bootstrap.runner.QuarkusEntryPoint
Caused by: java.lang.ClassNotFoundException:
io.quarkus.bootstrap.runner.QuarkusEntryPoint
```
The Integration status is Error, and describing it shows the test-00002
ClassNotFoundException error.
After about 10 minutes, the test-0002 pod disappeared and the integration is
running.
So I see 3 possible issues here:
- there was a pod with the correct image, but wrong command
- this pod affected the integration status
- It took too long for it to fix.
### Steps to reproduce
Install Knative 1.12.3 with contout network layer, Camel K 2.2.0
Apply the integration described above, adjusting the Traits for your
environment.
Wait for the native build to finish.
Check the number of pods and their statuses.
### Relevant log output
_No response_
### Camel K version
2.2.0, knative serving v1.12.3 with contour enabled
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]