コード例 #1
0
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)
コード例 #2
0
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')
コード例 #3
0
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')