summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
authorGrzegorz Bizon <grzegorz@gitlab.com>2018-05-21 11:03:17 +0000
committerGrzegorz Bizon <grzegorz@gitlab.com>2018-05-21 11:03:17 +0000
commit3834040aa8a9415864c07c8edb86ebb290e08b01 (patch)
treec5cc3725ae53d577317ca0a0ead036029aa56fee /.gitlab-ci.yml
parentd7b3eb3de43e1c12fc8475adf966577f469a1adf (diff)
parentbc57a62a5c8c4c1e08cdf5c4a1656357d885026d (diff)
downloadgitlab-ce-3834040aa8a9415864c07c8edb86ebb290e08b01.tar.gz
Merge branch 'rc/improve-single-script-jobs-ci-config' into 'master'
Improve the single-script jobs CI config See merge request gitlab-org/gitlab-ce!19040
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml59
1 files changed, 30 insertions, 29 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c0c1f3c8ec3..ced51cf8225 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -126,6 +126,23 @@ stages:
<<: *dedicated-no-docs-pull-cache-job
<<: *except-docs-and-qa
+.single-script-job: &single-script-job
+ image: ruby:2.4-alpine
+ before_script: []
+ stage: build
+ cache: {}
+ dependencies: []
+ variables: &single-script-job-variables
+ GIT_STRATEGY: none
+ before_script:
+ # We need to download the script rather than clone the repo since the
+ # package-and-qa job will not be able to run when the branch gets
+ # deleted (when merging the MR).
+ - export SCRIPT_NAME="${SCRIPT_NAME:-$CI_JOB_NAME}"
+ - apk add --update openssl
+ - wget $CI_PROJECT_URL/raw/$CI_COMMIT_SHA/scripts/$SCRIPT_NAME
+ - chmod 755 $SCRIPT_NAME
+
.rake-exec: &rake-exec
<<: *dedicated-no-docs-no-db-pull-cache-job
script:
@@ -207,19 +224,10 @@ stages:
.review-docs: &review-docs
<<: *dedicated-runner
<<: *except-qa
- image: ruby:2.4-alpine
- before_script:
- - gem install gitlab --no-doc
- # We need to download the script rather than clone the repo since the
- # review-docs-cleanup job will not be able to run when the branch gets
- # deleted (when merging the MR).
- - apk add --update openssl
- - wget https://gitlab.com/gitlab-org/gitlab-ce/raw/master/scripts/trigger-build-docs
- - chmod 755 trigger-build-docs
- cache: {}
- dependencies: []
+ <<: *single-script-job
variables:
- GIT_STRATEGY: none
+ <<: *single-script-job-variables
+ SCRIPT_NAME: trigger-build-docs
when: manual
only:
- branches
@@ -253,23 +261,14 @@ stages:
# Trigger a package build in omnibus-gitlab repository
#
package-and-qa:
- image: ruby:2.4-alpine
- before_script: []
- stage: build
- cache: {}
- when: manual
+ <<: *single-script-job
variables:
- GIT_STRATEGY: none
+ <<: *single-script-job-variables
+ SCRIPT_NAME: trigger-build-omnibus
retry: 0
- before_script:
- # We need to download the script rather than clone the repo since the
- # package-and-qa job will not be able to run when the branch gets
- # deleted (when merging the MR).
- - apk add --update openssl
- - wget https://gitlab.com/$CI_PROJECT_PATH/raw/$CI_COMMIT_SHA/scripts/trigger-build-omnibus
- - chmod 755 trigger-build-omnibus
script:
- - ./trigger-build-omnibus
+ - ./$SCRIPT_NAME
+ when: manual
only:
- //@gitlab-org/gitlab-ce
- //@gitlab-org/gitlab-ee
@@ -286,7 +285,8 @@ review-docs-deploy:
url: http://$DOCS_GITLAB_REPO_SUFFIX-$CI_COMMIT_REF_SLUG.$DOCS_REVIEW_APPS_DOMAIN/$DOCS_GITLAB_REPO_SUFFIX
on_stop: review-docs-cleanup
script:
- - ./trigger-build-docs deploy
+ - gem install gitlab --no-ri --no-rdoc
+ - ./$SCRIPT_NAME deploy
# Cleanup remote environment of gitlab-docs
review-docs-cleanup:
@@ -296,7 +296,8 @@ review-docs-cleanup:
name: review-docs/$CI_COMMIT_REF_NAME
action: stop
script:
- - ./trigger-build-docs cleanup
+ - gem install gitlab --no-ri --no-rdoc
+ - ./SCRIPT_NAME cleanup
##
# Trigger a docker image build in CNG (Cloud Native GitLab) repository
@@ -343,7 +344,7 @@ update-tests-metadata:
- rspec_flaky/
policy: push
script:
- - retry gem install fog-aws mime-types activesupport
+ - retry gem install fog-aws mime-types activesupport --no-ri --no-rdoc
- scripts/merge-reports ${KNAPSACK_RSPEC_SUITE_REPORT_PATH} knapsack/${CI_PROJECT_NAME}/rspec-pg_node_*.json
- scripts/merge-reports ${FLAKY_RSPEC_SUITE_REPORT_PATH} rspec_flaky/all_*_*.json
- FLAKY_RSPEC_GENERATE_REPORT=1 scripts/prune-old-flaky-specs ${FLAKY_RSPEC_SUITE_REPORT_PATH}