Closed n0n0x closed 5 years ago
Have you tested this @n0n0x on any cluster yet?
I'm okay with having to manually edit to fix this for existing deployments as upgrading clusters to newer versions is a manual process anyways. :+1:
We're getting reports in slack that this patch has problems when the version is reported as 1.11+
, which happens on some clusters.
api.exceptions.DeisException: Invalid version: '1.11+'
Traceback (most recent call last):
File "/app/api/models/build.py", line 65, in create
self.app.deploy(new_release)
File "/app/api/models/app.py", line 517, in deploy
self._check_deployment_in_progress(deploys, force_deploy)
File "/app/api/models/app.py", line 603, in _check_deployment_in_progress
kwargs.get("replicas"), kwargs.get("tags")
File "/app/scheduler/resources/deployment.py", line 204, in in_progress
ready, _ = self.are_replicas_ready(namespace, name)
File "/app/scheduler/resources/deployment.py", line 264, in are_replicas_ready
deployment = self.get(namespace, name).json()
File "/app/scheduler/resources/deployment.py", line 34, in get
url = self.api(url, *args)
File "/app/scheduler/resources/__resource.py", line 28, in api
return "/{}/{}".format(self.api_prefix, self.api_version) + tmpl.format(*args)
File "/app/scheduler/resources/deployment.py", line 16, in api_version
if self.version() >= parse("1.9.0"):
File "/app/scheduler/__init__.py", line 87, in version
return Version('{}.{}'.format(data['major'], data['minor']))
File "/usr/local/lib/python3.5/dist-packages/packaging/version.py", line 202, in __init__
raise InvalidVersion("Invalid version: '{0}'".format(version))
Thanks @kingdonb! I am facing this problem. I upgraded from v2.20.0 to v2.20.1 and now I am having this issue @kingdonb kindly described here.
Here is the kubectl version
output
BTW, I am using google GKE
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.7", GitCommit:"0c38c362511b20a098d7cd855f1314dad92c2780", GitTreeState:"clean", BuildDate:"2018-08-20T10:09:03Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"11+", GitVersion:"v1.11.6-gke.2", GitCommit:"04ad69a117f331df6272a343b5d8f9e2aee5ab0c", GitTreeState:"clean", BuildDate:"2019-01-04T16:19:46Z", GoVersion:"go1.10.3b4", Compiler:"gc", Platform:"linux/amd64"}
These version numbers are not good, but we've seen this before:
this closes #85 this closes teamhephy/workflow#57
related issue worth reading: teamhephy/workflow#57
To sum this up based on the discussion that took place at issue teamhephy/workflow#57:
I guess this will actually require manual editing of each existing deployment using
kubectl -n <namespace> edit deploy <deployment-name>
and change theapiVersion
toapps/v1
fordeis autoscale
to work properly on old deployments, right?