diff --git a/CHANGELOG.md b/CHANGELOG.md index 83d27db13f..e1e3deffa4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,6 +40,7 @@ Usage: * Fix #2110: Add new helm dependency update goal task (`k8s:helm-dependency-update` for maven and `k8sHelmDependencyUpdate` for gradle) * Fix #3122: JKube should also pass project directory in `buildpacks` build strategy * Fix #2467: Add support for specifying imagePullSecrets via resource configuration +* Fix #3220: ImageEnricher#mergeEnvVariables causes error for empty env _**Note**_: - `defaultStorageClass` and `useStorageClassAnnotation` fields have been removed from VolumePermissionEnricher (`jkube-volume-permission`). Users are advised to use these fields from PersistentVolumeClaimStorageClassEnricher (`jkube-persistentvolumeclaim-storageclass`) instead. diff --git a/jkube-kit/enricher/generic/src/main/java/org/eclipse/jkube/enricher/generic/ImageEnricher.java b/jkube-kit/enricher/generic/src/main/java/org/eclipse/jkube/enricher/generic/ImageEnricher.java index 400fb11d1b..d95f7e4da5 100644 --- a/jkube-kit/enricher/generic/src/main/java/org/eclipse/jkube/enricher/generic/ImageEnricher.java +++ b/jkube-kit/enricher/generic/src/main/java/org/eclipse/jkube/enricher/generic/ImageEnricher.java @@ -284,7 +284,7 @@ private void mergeEnvVariables(Container container) { EnvVar newEnvVar = new EnvVarBuilder() .withName(resourceEnvEntry.getKey()) - .withValue(resourceEnvEntry.getValue()) + .withValue(Optional.ofNullable(resourceEnvEntry.getValue()).orElse("")) .build(); EnvVar oldEnvVar = containerEnvVars.stream() diff --git a/kubernetes-maven-plugin/it/src/it/env-metadata/expected/kubernetes.yml b/kubernetes-maven-plugin/it/src/it/env-metadata/expected/kubernetes.yml index 202f788b7f..2fa8f68809 100644 --- a/kubernetes-maven-plugin/it/src/it/env-metadata/expected/kubernetes.yml +++ b/kubernetes-maven-plugin/it/src/it/env-metadata/expected/kubernetes.yml @@ -72,6 +72,7 @@ items: spec: containers: - env: + - name: MY_ENV_empty - name: MY_ENV_key value: MY_ENV_value - name: KUBERNETES_NAMESPACE diff --git a/kubernetes-maven-plugin/it/src/it/env-metadata/pom.xml b/kubernetes-maven-plugin/it/src/it/env-metadata/pom.xml index 608ad233a5..8e05cf4245 100644 --- a/kubernetes-maven-plugin/it/src/it/env-metadata/pom.xml +++ b/kubernetes-maven-plugin/it/src/it/env-metadata/pom.xml @@ -51,6 +51,7 @@ + MY_ENV_value this_will_not_be_overridden