diff --git a/app/kubernetes/services/configMapService.js b/app/kubernetes/services/configMapService.js index be863eaeb..b8ebbe38b 100644 --- a/app/kubernetes/services/configMapService.js +++ b/app/kubernetes/services/configMapService.js @@ -28,8 +28,19 @@ class KubernetesConfigMapService { this.KubernetesConfigMaps(namespace).get(params).$promise, this.KubernetesConfigMaps(namespace).getYaml(params).$promise, ]); - const configMap = KubernetesConfigMapConverter.apiToConfigMap(rawPromise.value, yamlPromise.value); - return configMap; + + if (_.get(rawPromise, 'reason.status') == 404 && _.get(yamlPromise, 'reason.status') == 404) { + return KubernetesConfigMapConverter.defaultConfigMap(namespace, name); + } + + // Saving binary data to 'data' field in configMap Object is not allowed by kubernetes and getYaml() may get + // an error. We should keep binary data to 'binaryData' field instead of 'data'. Before that, we + // use response from get() and ignore 500 error as a workaround. + if (rawPromise.value) { + return KubernetesConfigMapConverter.apiToConfigMap(rawPromise.value, yamlPromise.value); + } + + throw new PortainerError('Unable to retrieve config map ', name); } catch (err) { if (err.status === 404) { return KubernetesConfigMapConverter.defaultConfigMap(namespace, name); diff --git a/app/portainer/views/stacks/edit/stack.html b/app/portainer/views/stacks/edit/stack.html index 47856bb78..bdf3f81f7 100644 --- a/app/portainer/views/stacks/edit/stack.html +++ b/app/portainer/views/stacks/edit/stack.html @@ -89,7 +89,7 @@ - + Editor
diff --git a/build/download_docker_binary.ps1 b/build/download_docker_binary.ps1 index b5d6b6c13..a567ff785 100644 --- a/build/download_docker_binary.ps1 +++ b/build/download_docker_binary.ps1 @@ -3,6 +3,7 @@ param ( ) $ErrorActionPreference = "Stop"; +$ProgressPreference = "SilentlyContinue"; New-Item -Path "docker-binary" -ItemType Directory | Out-Null diff --git a/build/download_kompose_binary.ps1 b/build/download_kompose_binary.ps1 index 4c6246d00..f88b2504e 100644 --- a/build/download_kompose_binary.ps1 +++ b/build/download_kompose_binary.ps1 @@ -3,5 +3,6 @@ param ( ) $ErrorActionPreference = "Stop"; +$ProgressPreference = "SilentlyContinue"; Invoke-WebRequest -O "dist/kompose.exe" "https://github.com/kubernetes/kompose/releases/download/$($kompose_version)/kompose-windows-amd64.exe" diff --git a/build/download_kubectl_binary.ps1 b/build/download_kubectl_binary.ps1 index fe12c8273..d5330762b 100644 --- a/build/download_kubectl_binary.ps1 +++ b/build/download_kubectl_binary.ps1 @@ -3,5 +3,6 @@ param ( ) $ErrorActionPreference = "Stop"; +$ProgressPreference = "SilentlyContinue"; Invoke-WebRequest -O "dist/kubectl.exe" "https://storage.googleapis.com/kubernetes-release/release/$($kubectl_version)/bin/windows/amd64/kubectl.exe"