diff options
author | John Cai <jcai@gitlab.com> | 2024-01-22 21:47:12 +0300 |
---|---|---|
committer | John Cai <jcai@gitlab.com> | 2024-01-23 00:58:07 +0300 |
commit | f8f9072cf92b3a664060e8d1a00b60f8fa1fa74d (patch) | |
tree | dc6d17fd7d2d668ba8e3b451ee2577fef45918f9 | |
parent | 393446e5fbde1f6ff140e2fd3a525c1abfbe5010 (diff) |
.gitlab-ci.yml: Enable security repo to run rails testsjc/security-rails-pipeline
-rw-r--r-- | .gitlab-ci.yml | 35 |
1 files changed, 29 insertions, 6 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3b4935523..825232feb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -491,15 +491,16 @@ start-rails-specs: needs: [] stage: qa script: + - GITLAB_PROJECT_ID="$([ $CI_MERGE_REQUEST_PROJECT_PATH == 'gitlab-org/security/gitaly' ] && echo 15642544 || echo 278964)" - | curl --fail --request POST --header "PRIVATE-TOKEN: $GITLAB_PROJECT_TOKEN" \ - "https://gitlab.com/api/v4/projects/278964/repository/branches?ref=master&branch=$RAILS_BRANCH_FOR_JOB" + "https://gitlab.com/api/v4/projects/$GITLAB_PROJECT_ID/repository/branches?ref=master&branch=$RAILS_BRANCH_FOR_JOB" - | curl --fail --request PUT --header "PRIVATE-TOKEN: $GITLAB_PROJECT_TOKEN" \ --data "branch=$RAILS_BRANCH_FOR_JOB" \ --data "content=$CI_COMMIT_SHA" \ --data "commit_message=Updating GITALY_SERVER_VERSION to $CI_COMMIT_SHA" \ - "https://gitlab.com/api/v4/projects/278964/repository/files/GITALY_SERVER_VERSION" + "https://gitlab.com/api/v4/projects/$GITLAB_PROJECT_ID/repository/files/GITALY_SERVER_VERSION" environment: name: merge-requests/$RAILS_BRANCH_FOR_JOB on_stop: rails-specs-cleanup @@ -524,20 +525,41 @@ rails-specs: ENABLE_RSPEC_INTEGRATION: "true" ENABLE_RSPEC_SYSTEM: "true" rules: - - if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train" + - if: $CI_MERGE_REQUEST_PROJECT_PATH == 'gitlab-org/gitaly' && $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train" + +rails-specs-security: + needs: ["start-rails-specs"] + stage: qa + trigger: + project: gitlab-org/security/gitlab + branch: "gitaly-ci-jobs-$CI_PIPELINE_IID" # Using $RAILS_BRANCH_FOR_JOB directly fails + strategy: depend + inherit: + variables: false # Otherwise variables will be messed up + variables: + GITALY_TEST: "true" + ENABLE_RSPEC: "true" + ENABLE_RSPEC_UNIT: "true" + ENABLE_RSPEC_INTEGRATION: "true" + ENABLE_RSPEC_SYSTEM: "true" + rules: + - if: $CI_MERGE_REQUEST_PROJECT_PATH == 'gitlab-org/security/gitaly' && $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train" rails-specs-cleanup: stage: qa needs: ["rails-specs"] script: + - GITLAB_PROJECT_ID="$([ $CI_MERGE_REQUEST_PROJECT_PATH == 'gitlab-org/security/gitaly' ] && echo 15642544 || echo 278964)" - | curl --fail --request DELETE --header "PRIVATE-TOKEN: $GITLAB_PROJECT_TOKEN" \ - "https://gitlab.com/api/v4/projects/278964/repository/branches/$RAILS_BRANCH_FOR_JOB" + "https://gitlab.com/api/v4/projects/$GITLAB_PROJECT_ID/repository/branches/$RAILS_BRANCH_FOR_JOB" environment: name: merge-requests/$RAILS_BRANCH_FOR_JOB action: stop rules: - - if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train" + - if: $CI_MERGE_REQUEST_PROJECT_PATH == 'gitlab-org/security/gitaly' && $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train" + when: manual + - if: $CI_MERGE_REQUEST_PROJECT_PATH == 'gitlab-org/gitaly' && $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train" when: manual cleanup-rails-spec-test-env: @@ -551,7 +573,8 @@ cleanup-rails-spec-test-env: ENV_ID=$(curl -s --request GET --header "PRIVATE-TOKEN: $GITALY_PROJECT_TOKEN" "https://gitlab.com/api/v4/projects/2009901/environments" --data-urlencode "name=merge-requests/$RAILS_BRANCH_FOR_JOB" | jq '.[0].id') curl --fail -s --request DELETE --header "PRIVATE-TOKEN: $GITALY_PROJECT_TOKEN" "https://gitlab.com/api/v4/projects/2009901/environments/$ENV_ID" rules: - - if: $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train" + - if: $CI_MERGE_REQUEST_PROJECT_PATH == 'gitlab-org/security/gitaly' && $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train" + - if: $CI_MERGE_REQUEST_PROJECT_PATH == 'gitlab-org/gitaly' && $CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train" build-package-and-qa: needs: [] |