def create_test_release_jobs_enterprise(branch, username, password, sct_branch, sct_repo): add_file_logger() base_job_dir = f'{branch}' server = JenkinsPipelines(username=username, password=password, base_job_dir=base_job_dir, sct_branch_name=sct_branch, sct_repo=sct_repo) server.create_directory('SCT_Enterprise_Features', 'SCT Enterprise Features') for group_name, match, group_desc in [ ('EncryptionAtRest', 'EaR-*', 'Encryption At Rest'), ('ICS', '*ics*', 'ICS'), ('Workload_Prioritization', 'features-sla-*', 'Workload Prioritization') ]: current_dir = f'SCT_Enterprise_Features/{group_name}' server.create_directory(name=current_dir, display_name=group_desc) for jenkins_file in glob.glob( f'{server.base_sct_dir}/jenkins-pipelines/{match}.jenkinsfile' ): server.create_pipeline_job(jenkins_file, current_dir) server.create_pipeline_job( f'{server.base_sct_dir}/jenkins-pipelines/longevity-in-memory-36gb-1d.jenkinsfile', 'SCT_Enterprise_Features')
def create_operator_test_release_jobs(branch, username, password, sct_branch, sct_repo): add_file_logger() base_job_dir = "scylla-operator" server = JenkinsPipelines(username=username, password=password, base_job_dir=base_job_dir, sct_branch_name=sct_branch, sct_repo=sct_repo) server.create_directory(name=branch, display_name=branch) server.base_job_dir = "/".join([server.base_job_dir, branch]) def walk_dirs(path): for dirpath, dirnames, filenames in os.walk(path): for filename in filenames: if filename.endswith('.jenkinsfile'): finalpath = "/".join([dirpath, filename]) server.create_pipeline_job(finalpath, "", job_name_suffix="") for dirname in dirnames: server.create_directory(name=dirname, display_name=dirname) server.base_job_dir = "/".join([server.base_job_dir, dirname]) walk_dirs("/".join([dirpath, dirname])) server.base_job_dir = server.base_job_dir.rsplit("/", 1)[0] break path = "/".join([str(server.base_sct_dir), "jenkins-pipelines/operator"]) walk_dirs(path)
def create_test_release_jobs(branch, username, password, sct_branch, sct_repo): add_file_logger() base_job_dir = f'{branch}' server = JenkinsPipelines(username=username, password=password, base_job_dir=base_job_dir, sct_branch_name=sct_branch, sct_repo=sct_repo) for group_name, group_desc in [ ('longevity', 'SCT Longevity Tests'), ('rolling-upgrade', 'SCT Rolling Upgrades'), ('gemini-', 'SCT Gemini Tests'), ('features-', 'SCT Feature Tests'), ('artifacts', 'SCT Artifacts Tests'), ('load-test', 'SCT Load Tests'), ('k8s', 'SCT Kubernetes Tests'), ]: server.create_directory(name=group_name, display_name=group_desc) for jenkins_file in glob.glob( f'{server.base_sct_dir}/jenkins-pipelines/{group_name}*.jenkinsfile' ): server.create_pipeline_job(jenkins_file, group_name) if group_name == 'load-test': for jenkins_file in glob.glob( f'{server.base_sct_dir}/jenkins-pipelines/admission_control_overload*' ): server.create_pipeline_job(jenkins_file, group_name)
def create_test_release_jobs(branch, username, password, sct_branch, sct_repo): add_file_logger() base_job_dir = f'{branch}' server = JenkinsPipelines(username=username, password=password, base_job_dir=base_job_dir, sct_branch_name=sct_branch, sct_repo=sct_repo) for group_name, group_desc in [ ('longevity', 'SCT Longevity Tests'), ('rolling-upgrade', 'SCT Rolling Upgrades'), ('gemini-', 'SCT Gemini Tests'), ('features-', 'SCT Feature Tests'), ('artifacts', 'SCT Artifacts Tests'), ('load-test', 'SCT Load Tests'), ]: server.create_directory(name=group_name, display_name=group_desc) for jenkins_file in glob.glob( f'{server.base_sct_dir}/jenkins-pipelines/{group_name}*.jenkinsfile' ): server.create_pipeline_job(jenkins_file, group_name) if group_name == 'load-test': for jenkins_file in glob.glob( f'{server.base_sct_dir}/jenkins-pipelines/admission_control_overload*' ): server.create_pipeline_job(jenkins_file, group_name) server.create_directory(name='artifacts-offline-install', display_name='SCT Artifacts Offline Install Tests') for jenkins_file in glob.glob( f'{server.base_sct_dir}/jenkins-pipelines/artifacts-*.jenkinsfile' ): if any([ f'-{i}.jenkinsfile' in jenkins_file for i in ['ami', 'amazon2', 'docker', 'gce-image'] ]): continue server.create_pipeline_job(jenkins_file, 'artifacts-offline-install') for jenkins_file in glob.glob( f'{server.base_sct_dir}/jenkins-pipelines/nonroot-offline-install/*.jenkinsfile' ): server.create_pipeline_job(jenkins_file, 'artifacts-offline-install', job_name=str(Path(jenkins_file).stem) + '-nonroot')