From fc8a31b2d179e2e487d06a616f37e980cdb35646 Mon Sep 17 00:00:00 2001 From: mbohlool Date: Fri, 24 Feb 2017 14:11:29 -0800 Subject: [PATCH 1/5] Remove channel id from exec response in blocking mode --- kubernetes/client/ws_client.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/kubernetes/client/ws_client.py b/kubernetes/client/ws_client.py index ceaaa72fe..735cb5ff5 100644 --- a/kubernetes/client/ws_client.py +++ b/kubernetes/client/ws_client.py @@ -168,11 +168,13 @@ class WSClient: data = frame.data if six.PY3: data = data.decode("utf-8") - self._all += data if len(data) > 1: channel = ord(data[0]) data = data[1:] if data: + # keeping all messages in the order they received for + # non-blocking call. + self._all += data if channel not in self._channels: self._channels[channel] = data else: From 5d4a5286ed39c3412253aba795f39f5a06598386 Mon Sep 17 00:00:00 2001 From: Mehdy Bohlool Date: Sun, 26 Feb 2017 01:17:29 -0800 Subject: [PATCH 2/5] Update CHANGELOG.md [ci skip] --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b91478536..302da5279 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +# v1.0.1 +- Bugfix: blocking exec call should remove channel metadata #140 + # v1.0.0b3 - Bugfix: Missing websocket-client dependency #131 From 94861c777ee288746f043319ac24e3852edc7eba Mon Sep 17 00:00:00 2001 From: mbohlool Date: Mon, 27 Feb 2017 12:30:15 -0800 Subject: [PATCH 3/5] Add close method to websocket client --- CHANGELOG.md | 1 + examples/exec.py | 1 + kubernetes/client/ws_client.py | 8 ++++++++ 3 files changed, 10 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 302da5279..b0eb1ae07 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,6 @@ # v1.0.1 - Bugfix: blocking exec call should remove channel metadata #140 +- Add close method to websocket api of interactive exec #145 # v1.0.0b3 - Bugfix: Missing websocket-client dependency #131 diff --git a/examples/exec.py b/examples/exec.py index f9b21b634..b5ad04434 100644 --- a/examples/exec.py +++ b/examples/exec.py @@ -92,3 +92,4 @@ print("Server date command returns: %s" % sdate) resp.write_stdin("whoami\n") user = resp.readline_stdout(timeout=3) print("Server user is: %s" % user) +resp.close() diff --git a/kubernetes/client/ws_client.py b/kubernetes/client/ws_client.py index 735cb5ff5..7177e5eb2 100644 --- a/kubernetes/client/ws_client.py +++ b/kubernetes/client/ws_client.py @@ -191,6 +191,14 @@ class WSClient: while self.is_open(): self.update(timeout=None) + def close(self, **kwargs): + """ + close websocket connection. + """ + self._connected = False + if self.sock: + self.sock.close(**kwargs) + WSResponse = collections.namedtuple('WSResponse', ['data']) From 1fb9c6818e354cf68088fd9087f68f7f0a5a85d4 Mon Sep 17 00:00:00 2001 From: Mehdy Bohlool Date: Tue, 28 Feb 2017 11:18:13 -0800 Subject: [PATCH 4/5] Update release.md [skip ci] --- devel/release.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/devel/release.md b/devel/release.md index 4ebf9fdc8..3dde2a5bb 100644 --- a/devel/release.md +++ b/devel/release.md @@ -16,8 +16,9 @@ should be on the same branch. To update an existing branch: ```bash export RELEASE_BRANCH=release-x.x -git checkout RELEASE_BRANCH +git checkout $RELEASE_BRANCH git fetch upstream +git rebase upstream/$RELEASE_BRANCH git pull upstream master ``` @@ -64,7 +65,7 @@ and commit changes (should be only version number changes) to the release branch Name the commit something like "Update version constants for XXX release". ```bash -git push upstream RELEASE_BRANCH +git push upstream $RELEASE_BRANCH ``` ## Make distribution packages From cbca7ab3e25a9ecbfaa140b582254778c11316ce Mon Sep 17 00:00:00 2001 From: mbohlool Date: Wed, 1 Mar 2017 13:35:36 -0800 Subject: [PATCH 5/5] Update CHANGELOG [skip ci] --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b0eb1ae07..698f276d6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -# v1.0.1 +# v1.0.0 - Bugfix: blocking exec call should remove channel metadata #140 - Add close method to websocket api of interactive exec #145