示例#1
0
 def _jenkins_job(self, name, exec_time, params, script, print_env,
                  create_job, always_load, num_builds_to_keep,
                  final_result_use_cli, set_build_descriptions):
     # Create job in Jenkins
     if self.reload_jobs or always_load:
         context = dict(
             exec_time=exec_time,
             params=params or (),
             script=script,
             pseudo_install_dir=pseudo_install_dir,
             securitytoken=self.securitytoken,
             username=security.username,
             password=security.password,
             direct_url=self.direct_url,
             print_env=print_env,
             create_job=create_job,
             test_file_name=self.file_name,
             test_tmp_dir=test_tmp_dir,
             api_type=self.api_type,
             num_builds_to_keep=num_builds_to_keep,
             final_result_use_cli=final_result_use_cli,
             set_build_descriptions=set_build_descriptions,
         )
         update_job_from_template(self.job_loader_jenkins,
                                  name,
                                  self.job_xml_template,
                                  pre_delete=self.pre_delete_jobs,
                                  context=context)
示例#2
0
def test_job_load__existing_update():
    api = mock_api.api(__file__)
    full_name, short_name = _random_job_name(api)
    api.job(short_name, 1, 1, 1, 1)
    jobload.update_job_from_template(api, full_name, _job_xml_template, pre_delete=True, context=_context)
    _assert_job(api, full_name, cleanup=False)
    jobload.update_job_from_template(api, full_name, _job_xml_template, pre_delete=False, context=_context)
    _assert_job(api, full_name, cleanup=True)
示例#3
0
def test_job_load__existing_update(api_type):
    api = api_select.api(__file__, api_type, login=True)
    full_name, short_name = _random_job_name(api)
    api.job(short_name, 1, 1, 1, exec_time=1)
    jobload.update_job_from_template(api, full_name, api.job_xml_template, pre_delete=True, context=_context)
    _assert_job(api, full_name, cleanup=False)
    jobload.update_job_from_template(api, full_name, api.job_xml_template, pre_delete=False, context=_context)
    _assert_job(api, full_name, cleanup=True)
示例#4
0
def test_job_load_non_existing_pre_delete():
    api = mock_api.api(__file__)
    full_name, short_name = _random_job_name(api)
    if api.is_mocked:
        # TODO: Since the Mock framework is not suited for testing this we just accept the KeyError, it will still test some code that is not otherwise tested
        with raises(KeyError):
            jobload.update_job_from_template(api, full_name, _job_xml_template, pre_delete=True, context=_context)
    else:
        jobload.update_job_from_template(api, full_name, _job_xml_template, pre_delete=True, context=_context)
示例#5
0
 def _jenkins_job(self, name, exec_time, params, script):
     name = self.job_name_prefix + name
     assert not self.test_jobs.get(name)
     # Create job in Jenkins
     if self.reload_jobs:
         context = dict(exec_time=exec_time, params=params or (), script=script, pseudo_install_dir=pseudo_install_dir,
                        securitytoken=self.securitytoken, username=security.username, password=security.password, direct_url=self.direct_url)
         update_job_from_template(self.job_loader_jenkins, name, self.job_xml_template, pre_delete=self.pre_delete_jobs, context=context)
     return name
示例#6
0
def test_job_load_non_existing_pre_delete():
    api = api_select.api(__file__, login=True)
    full_name, _ = _random_job_name(api)
    if api.api_type == ApiType.MOCK:
        # TODO: Since the Mock framework is not suited for testing this we just accept the KeyError, it will still test some code that is not otherwise tested
        with raises(KeyError):
            jobload.update_job_from_template(api, full_name, api.job_xml_template, pre_delete=True, context=_context)
    else:
        jobload.update_job_from_template(api, full_name, api.job_xml_template, pre_delete=True, context=_context)
示例#7
0
def test_job_load_non_existing_pre_delete(api_type):
    api = api_select.api(__file__, api_type, login=True)
    full_name, short_name = _random_job_name(api)
    api.job(short_name, 1, 1, 1, exec_time=1, non_existing=True)
    jobload.update_job_from_template(api,
                                     full_name,
                                     api.job_xml_template,
                                     pre_delete=True,
                                     context=_context)
示例#8
0
 def _jenkins_job(self, name, exec_time, params, script, print_env, create_job, always_load, num_builds_to_keep):
     # Create job in Jenkins
     if self.reload_jobs or always_load:
         context = dict(exec_time=exec_time, params=params or (), script=script, pseudo_install_dir=pseudo_install_dir,
                        securitytoken=self.securitytoken, username=security.username, password=security.password, direct_url=self.direct_url,
                        print_env=print_env,
                        create_job=create_job,
                        test_file_name=self.file_name,
                        test_tmp_dir=test_tmp_dir, api_type=self.api_type,
                        num_builds_to_keep=num_builds_to_keep)
         update_job_from_template(self.job_loader_jenkins, name, self.job_xml_template, pre_delete=self.pre_delete_jobs, context=context)
示例#9
0
def test_job_load_new_pre_delete():
    api = api_select.api(__file__, login=True)
    full_name, short_name = _random_job_name(api)
    api.job(short_name, 1, 1, 1, 1)
    jobload.update_job_from_template(api, full_name, api.job_xml_template, pre_delete=True, context=_context)
    _assert_job(api, full_name, cleanup=True)
示例#10
0
def test_job_load_non_existing_pre_delete():
    api = api_select.api(__file__, login=True)
    full_name, short_name = _random_job_name(api)
    api.job(short_name, 1, 1, 1, 1, non_existing=True)
    jobload.update_job_from_template(api, full_name, api.job_xml_template, pre_delete=True, context=_context)