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 = ""
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)
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)
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)
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)
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")
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])
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))