Describe the bug
Generated Kubernetes.yml generates an incorrect type (int instead of string) for prometheus.io/port annotation.
Generated Kubernetes.json generates an incorrect type (string instead of int) for livenessProbe.httpGet.port and readinessProbe.httpGet.port.
Expected behavior
Correct types generated for annotations and ports
Actual behaviorNOTE./gradlew clean quarkusBuild -Dquarkus.kubernetes.deploy=true deploys the manifest correctly.
./gradlew quarkusBuild with Kubernetes, metrics, and healthcheck extensions generates incorrect types as specified above in the generated manifest files
trying to apply with kubectl generates the following errors
kubernetes.yml
unable to decode "build/kubernetes/kubernetes.yml": resource.metadataOnlyObject.ObjectMeta: v1.ObjectMeta.Annotations: ReadString: expects " or n, but found 8, error found in #10 byte of ...|io/port":8080,"prome|..., bigger context ...|metheus.io/path":"/metrics","prometheus.io/port":8080,"prometheus.io/scrape":"true"},"labels":{"app.|...
unable to decode "build/kubernetes/kubernetes.yml": resource.metadataOnlyObject.ObjectMeta: v1.ObjectMeta.Annotations: ReadString: expects " or n, but found 8, error found in #10 byte of ...|io/port":8080,"prome|..., bigger context ...|metheus.io/path":"/metrics","prometheus.io/port":8080,"prometheus.io/scrape":"true"},"labels":{"app.|...
unable to decode "build/kubernetes/kubernetes.yml": resource.metadataOnlyObject.ObjectMeta: v1.ObjectMeta.Annotations: ReadString: expects " or n, but found 8, error found in #10 byte of ...|io/port":8080,"prome|..., bigger context ...|metheus.io/path":"/metrics","prometheus.io/port":8080,"prometheus.io/scrape":"true"},"labels":{"app.|...
unable to decode "build/kubernetes/kubernetes.yml": resource.metadataOnlyObject.ObjectMeta: v1.ObjectMeta.Annotations: ReadString: expects " or n, but found 8, error found in #10 byte of ...|io/port":8080,"prome|..., bigger context ...|metheus.io/path":"/metrics","prometheus.io/port":8080,"prometheus.io/scrape":"true"},"labels":{"app.|...
kubernetes.json
* spec.template.spec.containers[0].livenessProbe.httpGet.port: Invalid value: "8080": must contain at least one letter or number (a-z, 0-9)
* spec.template.spec.containers[0].readinessProbe.httpGet.port: Invalid value: "8080": must contain at least one letter or number (a-z, 0-9)
To Reproduce
Steps to reproduce the behavior:
Add the kubernetes, metrics, and healthcheck extensions
Add a healthcheck
run quarkusBuild
Configuration
# Add your application.properties here, if applicable.
quarkus.kubernetes.readiness-probe.initial-delay=5s
quarkus.kubernetes.readiness-probe.period=30s
quarkus.kubernetes.liveness-probe.initial-delay=5s
quarkus.kubernetes.liveness-probe.period=30s
Screenshots
(If applicable, add screenshots to help explain your problem.)
Environment (please complete the following information):
Output of uname -a or ver: Linux tower 5.8.0-2-MANJARO #1 SMP PREEMPT Sat Aug 8 17:55:27 UTC 2020 x86_64 GNU/Linux
Output of java -version:
openjdk version "11.0.7" 2020-04-14
OpenJDK Runtime Environment GraalVM CE 20.1.0 (build 11.0.7+10-jvmci-20.1-b02)
OpenJDK 64-Bit Server VM GraalVM CE 20.1.0 (build 11.0.7+10-jvmci-20.1-b02, mixed mode, sharing)
GraalVM version (if different from Java): N/A
Quarkus version or git rev: 1.7.0.Final
Build tool (ie. output of mvnw --version or gradlew --version):
./gradlew --version
------------------------------------------------------------
Gradle 6.4.1
------------------------------------------------------------
Build time: 2020-05-15 19:43:40 UTC
Revision: 1a04183c502614b5c80e33d603074e0b4a2777c5
Kotlin: 1.3.71
Groovy: 2.5.10
Ant: Apache Ant(TM) version 1.10.7 compiled on September 1 2019
JVM: 11.0.7 (GraalVM Community 11.0.7+10-jvmci-20.1-b02)
OS: Linux 5.8.0-2-MANJARO amd64
Additional context
The kubernetes.yml file is affected in 1.6.1.Final however kubernetes.json is fine in 1.6.1.Final
Describe the bug Generated Kubernetes.yml generates an incorrect type (int instead of string) for
prometheus.io/port
annotation. Generated Kubernetes.json generates an incorrect type (string instead of int) forlivenessProbe.httpGet.port
andreadinessProbe.httpGet.port
.Expected behavior Correct types generated for annotations and ports
Actual behavior NOTE
./gradlew clean quarkusBuild -Dquarkus.kubernetes.deploy=true
deploys the manifest correctly../gradlew quarkusBuild
with Kubernetes, metrics, and healthcheck extensions generates incorrect types as specified above in the generated manifest filestrying to apply with kubectl generates the following errors
kubernetes.yml
kubernetes.json
To Reproduce Steps to reproduce the behavior:
Configuration
Screenshots (If applicable, add screenshots to help explain your problem.)
Environment (please complete the following information):
uname -a
orver
:Linux tower 5.8.0-2-MANJARO #1 SMP PREEMPT Sat Aug 8 17:55:27 UTC 2020 x86_64 GNU/Linux
java -version
:1.7.0.Final
Build tool (ie. output of
mvnw --version
orgradlew --version
):Additional context The kubernetes.yml file is affected in
1.6.1.Final
however kubernetes.json is fine in1.6.1.Final
https://github.com/quarkusio/quarkus/issues/11431
$upstream:11431$