예제 #1
0
def delete_jobs(arguments, configs_dict) -> None:
    configuration = JenkinsConfigurationPolicy()
    configuration.init_from_dictionary(configs_dict)
    configuration.init_from_file()

    manager = JenkinsManager(configuration)
    manager.delete_jobs_from_file(arguments.input_file)
예제 #2
0
def cleanup(arguments, configs_dict) -> None:
    configuration = JenkinsConfigurationPolicy()
    configuration.init_from_dictionary(configs_dict)
    configuration.init_from_file()

    manager = JenkinsManager(configuration)
    manager.cleanup(arguments.output_file)
예제 #3
0
def find_build(arguments, configs_dict) -> None:
    configuration = JenkinsConfigurationPolicy()
    configuration.init_from_dictionary(configs_dict)
    configuration.init_from_file()

    manager = JenkinsManager(configuration)
    manager.find_build(arguments.jobs_names.split(","),
                       arguments.search_string)
예제 #4
0
def backup_jobs(arguments, configs_dict) -> None:
    configuration = JenkinsConfigurationPolicy()
    configuration.init_from_dictionary(configs_dict)
    configuration.init_from_file()

    manager = JenkinsManager(configuration)
    jobs_names = arguments.jobs_names.split(
        ",") if arguments.jobs_names != "" else None
    manager.backup_jobs(arguments.backups_dir, jobs_names=jobs_names)
예제 #5
0
def create_jobs(arguments, configs_dict) -> None:
    configuration = JenkinsConfigurationPolicy()
    configuration.init_from_dictionary(configs_dict)
    configuration.init_from_file()

    manager = JenkinsManager(configuration)
    manager.create_jobs(arguments.backups_dir,
                        jobs_names=arguments.jobs_names.split(","),
                        overwrite=arguments.overwrite.lower() == "true")
예제 #6
0
def run_job(arguments, configs_dict) -> None:
    configuration = JenkinsConfigurationPolicy()
    configuration.init_from_dictionary(configs_dict)
    configuration.init_from_file()

    manager = JenkinsManager(configuration)
    with open(arguments.build_info_file) as file_handler:
        build_info = json.load(file_handler)
    job = JenkinsJob(build_info["job_name"], build_info.get("parameters"))
    manager.execute_jobs([job])
예제 #7
0
def run_jobs(arguments, configs_dict) -> None:
    configuration = JenkinsConfigurationPolicy()
    configuration.init_from_dictionary(configs_dict)
    configuration.init_from_file()
    manager = JenkinsManager(configuration)

    with open(arguments.cached_jobs_file_path) as file_handler:
        lst_dict_jobs = json.load(file_handler)
    lst_jobs = [
        JenkinsJob(None, None, cache_dict=dict_job)
        for dict_job in lst_dict_jobs
    ]
    print(manager.execute_jobs(lst_jobs))
예제 #8
0
    def __init__(self, configuration):
        aws_api_conf = AWSAPIConfigurationPolicy()
        aws_api_conf.configuration_file_full_path = configuration.aws_api_configuration_values_file_path
        aws_api_conf.init_from_file()
        self.aws_api = AWSAPI(configuration=aws_api_conf)

        jenkins_conf = JenkinsConfigurationPolicy()
        jenkins_conf.configuration_file_full_path = configuration.jenkins_manager_configuration_values_file_path
        jenkins_conf.init_from_file()
        self.jenkins_manager = JenkinsManager(configuration=jenkins_conf)

        self.jenkins_ec2_instance_type = configuration.jenkins_ec2_instance_type
        self.ssh_master_access_key_name = "jenkins-master-access-key"
        self.ssh_agent_access_key_name = "jenkins-agent-access-key"

        self.jenkins_mater_iam_role_name = "role-jenkins-master"
        self.jenkins_mater_iam_role_name = "policy-jenkins-master-spot-fleet-access"
        self.public_subnet_id = ""
        self.private_subnet_id = ""
        self.jenkins_master_security_group_name = ""
        self.ssh_agent_security_group_name = ""