Esempio n. 1
0
    def _generate_manifests(self, services):
        logger.info("Generating manifest...")
        cmd = [
            "helm",
            "template",
            chart_path,
            # "--debug",
            "--output-dir",
            output_dir,
        ]
        for idx, service in enumerate(services):
            cmd += [
                "--set", f"services[{idx}].name={service['service']['name']}"
            ]
            cmd += [
                "--set", f"services[{idx}].port={service['service']['port']}"
            ]

        run_shell_command(cmd)
Esempio n. 2
0
    def run(self, cmdline, env=None, cwd=None):
        if self.process:
            return

        self.process = run_shell_command(cmdline, env=env, cwd=cwd)
        self.thread = threading.Thread(target=self.__thread, args=(self.process,))
        self.thread.start()

        self.cmdline = cmdline
        self.set_status(shorten_text(cmdline, 60) + "\nRunning (pid %d)" % self.process.pid)
        self.Clear()
        self.output.start()
Esempio n. 3
0
    def run(self, cmdline, env=None, cwd=None, stdin=None, stdout=None, killable=True):
        if self.process:
            return

        self.process = run_shell_command(cmdline, env=env, cwd=cwd, killable=killable)
        self.thread = threading.Thread(target=self.__thread, args=(self.process, stdin, stdout))
        self.thread.start()

        self.cmdline = cmdline
        self.cwd = cwd
        self.set_status("Running (pid %d)" % self.process.pid)
        self.Clear()
        self.output.start()
Esempio n. 4
0
 def _apply_manifests(self):
     logger.info("Applying manifests...")
     manifest_path = f"{output_dir}/service-chart/templates"
     cmd = ["kubectl", "apply", "-f", manifest_path]
     run_shell_command(cmd)
Esempio n. 5
0
 def delete_all_resources(self):
     logger.info("Deleting all resources from namespace '%s'" %
                 self.namespace)
     run_shell_command(
         ["kubectl", "delete", "all", "--all", "-n", self.namespace])
Esempio n. 6
0
 def create_namespace(self):
     logger.info("Creating namespace '%s'" % self.namespace)
     run_shell_command(["kubectl", "create", "namespace", self.namespace],
                       exit_on_error=False)