diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 290f211737b44a302e5f2a2c703c7c26da2375ac..91bd8eedbed7cfa2aad919bc0be7eb7dc999c8fd 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -27,7 +27,7 @@ before_script: - git checkout -f -q $CI_COMMIT_SHA after_script: - - python3 CI/cdash_handler.py $CI_COMMIT_SHA $CI_PROJECT_ID $CI_PROJECT_DIR $K8S_SECRET_CDASH + - python3 CI/cdash_handler.py $CI_COMMIT_SHA $CI_PROJECT_ID $CI_PROJECT_DIR $K8S_SECRET_API_TOKEN stages: - precheck diff --git a/CI/check_twin_pipelines.py b/CI/check_twin_pipelines.py index d2a6113924677266de8cf30f8d35debc8ee2c3ea..7f05c1809cf02ae3d37b8bfd984a4bbf24756906 100644 --- a/CI/check_twin_pipelines.py +++ b/CI/check_twin_pipelines.py @@ -64,25 +64,29 @@ if __name__ == "__main__": sha1 = env['CI_COMMIT_SHA'] # are we in a merge_request pipeline ? if 'CI_MERGE_REQUEST_IID' in env.keys(): - if not CheckEnvParameters(['K8S_SECRET_TWIN_PIPELINE','CI_PROJECT_ID','CI_PIPELINE_ID']): + if not CheckEnvParameters(['K8S_SECRET_API_TOKEN']): + print("Make sure you have set a valid acces token for Gitlab API") + print("The K8S_SECRET_API_TOKEN environment variable should be set in 'Settings -> CI/CD -> Variables'") sys.exit(1) - mrInfo = GitlabRequest('merge_requests/'+env['CI_MERGE_REQUEST_IID'],token=env['K8S_SECRET_TWIN_PIPELINE']) + if not CheckEnvParameters(['CI_PROJECT_ID','CI_PIPELINE_ID']): + sys.exit(1) + mrInfo = GitlabRequest('merge_requests/'+env['CI_MERGE_REQUEST_IID'],token=env['K8S_SECRET_API_TOKEN']) wip_regex = re.compile("^[Ww][Ii][Pp]:") # is it a "WIP" merge request ? if wip_regex.search(mrInfo["title"]): # Yes: cancel the current pipeline print("Cancel current pipeline "+env['CI_PIPELINE_ID']) GitlabRequest('pipelines/'+env['CI_PIPELINE_ID']+'/cancel', data={}, \ - project=env['CI_PROJECT_ID'], token=env['K8S_SECRET_TWIN_PIPELINE']) + project=env['CI_PROJECT_ID'], token=env['K8S_SECRET_API_TOKEN']) time.sleep(180) print("Error: this pipeline should have been canceled") sys.exit(1) else: # No: cancel any previous "normal" pipeline on the same SHA1 - jres = GitlabRequest('pipelines?sha='+sha1, project=env['CI_PROJECT_ID'], token=env['K8S_SECRET_TWIN_PIPELINE']) + jres = GitlabRequest('pipelines?sha='+sha1, project=env['CI_PROJECT_ID'], token=env['K8S_SECRET_API_TOKEN']) for item in jres: if item["id"] < int(env['CI_PIPELINE_ID']) and item["status"] == "running": print("Cancel pipeline "+str(item["id"])) jres2 = GitlabRequest('pipelines/'+str(item["id"])+'/cancel', data={}, \ - project=env['CI_PROJECT_ID'], token=env['K8S_SECRET_TWIN_PIPELINE']) + project=env['CI_PROJECT_ID'], token=env['K8S_SECRET_API_TOKEN'])