def scale_selenium_pods(self, num):
     """
     Create the desired number of selenium pods
     """
     oc("scale", "dc/selenium", f"--replicas={num}")
     wait_for_ready("dc", "selenium")
     self.expected_num_pods = num
     self.reconcile_pods()
Beispiel #2
0
def set_oc_project(args):
    try:
        oc("project", args.project, _reraise=True)
    except ErrorReturnCode:
        log.error(
            "You should log in to your cluster before upgrading and make sure you can access specified project:"
        )
        log.error("  $ oc login https://api.myopenshift --token=*************")
        log.error("  $ oc project %s", args.project)
        sys.exit(2)
Beispiel #3
0
def wipe(no_confirm, project, label):
    server = get_server_info()
    extra_msg = ""
    if label:
        extra_msg = " with label '{}'".format(label)

    if not no_confirm and prompter.yesno(
        "I'm about to delete everything in project '{}'{} on server {} -- continue?".format(
            project, extra_msg, server
        ),
        default="no",
    ):
        sys.exit(0)

    switch_to_project(project)

    if label:
        args = ["--selector", label]
    else:
        args = ["--all"]

    oc("delete", "all", *args, _exit_on_err=False)
    oc("delete", "configmap", *args, _exit_on_err=False)
    oc("delete", "secret", *args, _exit_on_err=False)
    oc("delete", "pvc", *args, _exit_on_err=False)
Beispiel #4
0
def run_task(args, project_spec):
    task_name = args.task
    if task_name in project_spec["tasks"]:
        required_params = project_spec["tasks"][task_name].get("parameters")
        parsed_params = {}
        if required_params:
            if args.parameters:
                for param in args.parameters.split(","):
                    param_parts = param.split("=")
                    parsed_params[param_parts[0]] = param_parts[1]
                for required_param in required_params:
                    if required_param not in parsed_params:
                        log.error("Required parameters: %s", required_params)
                        sys.exit(6)
            else:
                log.error("Required parameters: %s", required_params)
                sys.exit(6)
        log.info("Executing task: %s", task_name)
        for command in project_spec["tasks"][task_name]["commands"]:
            if command.get("description"):
                log.info(command["description"])
            args = command["args"]
            args = [replace_params(arg, parsed_params) for arg in args]
            output = oc(*args)
            if output:
                log.info("\n%s" % output)
        log.info("Task executed successfuly.")
    else:
        log.error("Task doesn't exist in project spec: '%s'", task_name)
        sys.exit(5)
Beispiel #5
0
def wipe(no_confirm, project, label):
    extra_msg = ""
    if label:
        extra_msg = " with label '{}'".format(label)

    if not no_confirm and prompter.yesno(
        "I'm about to delete everything in project '{}'{}.  Continue?".format(project, extra_msg),
        default="no",
    ):
        sys.exit(0)

    switch_to_project(project)

    if label:
        args = ["--selector", label]
    else:
        args = ["--all"]

    oc("delete", "all", *args, _exit_on_err=False)
    oc("delete", "configmap", *args, _exit_on_err=False)
    oc("delete", "secret", *args, _exit_on_err=False)
    oc("delete", "pvc", *args, _exit_on_err=False)