]> git-server-git.apps.pok.os.sepia.ceph.com Git - remoto.git/commitdiff
backends: allow passing --context to kubernetes/oc connections
authorAlfredo Deza <alfredo@deza.pe>
Tue, 26 Feb 2019 14:56:09 +0000 (09:56 -0500)
committerAlfredo Deza <alfredo@deza.pe>
Tue, 26 Feb 2019 14:56:09 +0000 (09:56 -0500)
Signed-off-by: Alfredo Deza <alfredo@deza.pe>
remoto/backends/kubernetes.py

index e524012a7549baa96ba0d6f78efd7490dc3cc10c..610bbd84fa90872a1016c82800c49f818a0f4232 100644 (file)
@@ -6,23 +6,29 @@ class KubernetesConnection(BaseConnection):
     executable = 'kubectl'
     remote_import_system = 'json'
 
-    def __init__(self, pod_name, namespace=None, **kw):
+    def __init__(self, pod_name, namespace=None, context=None, **kw):
         self.namespace = namespace
+        self.context = context
         self.pod_name = pod_name
         super(KubernetesConnection, self).__init__(hostname='localhost', **kw)
 
     def command_template(self):
+        base_command = [self.executable]
+        if self.context:
+            base_command.extend(['--context', self.context])
+
+        base_command.extend(['exec', '-i'])
+
         if self.namespace:
-            prefix = [
-                self.executable, 'exec', '-i', '-n',
-                self.namespace, self.pod_name, '--', '/bin/sh', '-c'
-            ]
-        else:
-            prefix = [
-                self.executable, 'exec', '-i',
-                self.pod_name, '--', '/bin/sh', '-c'
-            ]
-        return prefix
+            base_command.extend(['-n', self.namespace])
+
+        base_command.extend([
+            self.pod_name,
+            '--',
+            '/bin/sh',
+            '-c'
+        ])
+        return base_command
 
     def cmd(self, cmd):
         tmpl = self.command_template()