Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Tatuya Kamada
gitlab-ce
Commits
2b9ffbc6
Commit
2b9ffbc6
authored
Nov 21, 2016
by
Kamil Trzcinski
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Revert "Test only migrations"
This reverts commit
23fc7875
.
parent
7c4e425c
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
363 additions
and
0 deletions
+363
-0
.gitlab-ci.yml
.gitlab-ci.yml
+363
-0
No files found.
.gitlab-ci.yml
View file @
2b9ffbc6
...
@@ -30,16 +30,294 @@ stages:
...
@@ -30,16 +30,294 @@ stages:
-
post-test
-
post-test
-
pages
-
pages
# Prepare and merge knapsack tests
.knapsack-state
:
&knapsack-state
services
:
[]
variables
:
SETUP_DB
:
"
false"
USE_BUNDLE_INSTALL
:
"
false"
cache
:
key
:
"
knapsack"
paths
:
-
knapsack/
artifacts
:
expire_in
:
31d
paths
:
-
knapsack/
knapsack
:
<<
:
*knapsack-state
stage
:
prepare
script
:
-
mkdir -p knapsack/
-
'
[[
-f
knapsack/rspec_report.json
]]
||
echo
"{}"
>
knapsack/rspec_report.json'
-
'
[[
-f
knapsack/spinach_report.json
]]
||
echo
"{}"
>
knapsack/spinach_report.json'
update-knapsack
:
<<
:
*knapsack-state
stage
:
post-test
script
:
-
scripts/merge-reports knapsack/rspec_report.json knapsack/rspec_node_*.json
-
scripts/merge-reports knapsack/spinach_report.json knapsack/spinach_node_*.json
-
rm -f knapsack/*_node_*.json
only
:
-
master@gitlab-org/gitlab-ce
-
master@gitlab-org/gitlab-ee
-
master@gitlab/gitlabhq
-
master@gitlab/gitlab-ee
.use-db
:
&use-db
.use-db
:
&use-db
services
:
services
:
-
mysql:latest
-
mysql:latest
-
redis:alpine
-
redis:alpine
setup-test-env
:
<<
:
*use-db
stage
:
prepare
script
:
-
bundle exec rake assets:precompile 2>/dev/null
-
bundle exec ruby -Ispec -e 'require "spec_helper" ; TestEnv.init'
artifacts
:
expire_in
:
7d
paths
:
-
public/assets
-
tmp/tests
.rspec-knapsack
:
&rspec-knapsack
stage
:
test
<<
:
*use-db
script
:
-
JOB_NAME=( $CI_BUILD_NAME )
-
export CI_NODE_INDEX=${JOB_NAME[1]}
-
export CI_NODE_TOTAL=${JOB_NAME[2]}
-
export KNAPSACK_REPORT_PATH=knapsack/rspec_node_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
-
export KNAPSACK_GENERATE_REPORT=true
-
cp knapsack/rspec_report.json ${KNAPSACK_REPORT_PATH}
-
knapsack rspec "--color --format documentation"
artifacts
:
expire_in
:
31d
paths
:
-
knapsack/
-
coverage/
.spinach-knapsack
:
&spinach-knapsack
stage
:
test
<<
:
*use-db
script
:
-
JOB_NAME=( $CI_BUILD_NAME )
-
export CI_NODE_INDEX=${JOB_NAME[1]}
-
export CI_NODE_TOTAL=${JOB_NAME[2]}
-
export KNAPSACK_REPORT_PATH=knapsack/spinach_node_${CI_NODE_INDEX}_${CI_NODE_TOTAL}_report.json
-
export KNAPSACK_GENERATE_REPORT=true
-
cp knapsack/spinach_report.json ${KNAPSACK_REPORT_PATH}
-
knapsack spinach "-r rerun" || retry '[[ -e tmp/spinach-rerun.txt ]] && bundle exec spinach -r rerun $(cat tmp/spinach-rerun.txt)'
artifacts
:
expire_in
:
31d
paths
:
-
knapsack/
-
coverage/
rspec 0 20
:
*rspec-knapsack
rspec 1 20
:
*rspec-knapsack
rspec 2 20
:
*rspec-knapsack
rspec 3 20
:
*rspec-knapsack
rspec 4 20
:
*rspec-knapsack
rspec 5 20
:
*rspec-knapsack
rspec 6 20
:
*rspec-knapsack
rspec 7 20
:
*rspec-knapsack
rspec 8 20
:
*rspec-knapsack
rspec 9 20
:
*rspec-knapsack
rspec 10 20
:
*rspec-knapsack
rspec 11 20
:
*rspec-knapsack
rspec 12 20
:
*rspec-knapsack
rspec 13 20
:
*rspec-knapsack
rspec 14 20
:
*rspec-knapsack
rspec 15 20
:
*rspec-knapsack
rspec 16 20
:
*rspec-knapsack
rspec 17 20
:
*rspec-knapsack
rspec 18 20
:
*rspec-knapsack
rspec 19 20
:
*rspec-knapsack
spinach 0 10
:
*spinach-knapsack
spinach 1 10
:
*spinach-knapsack
spinach 2 10
:
*spinach-knapsack
spinach 3 10
:
*spinach-knapsack
spinach 4 10
:
*spinach-knapsack
spinach 5 10
:
*spinach-knapsack
spinach 6 10
:
*spinach-knapsack
spinach 7 10
:
*spinach-knapsack
spinach 8 10
:
*spinach-knapsack
spinach 9 10
:
*spinach-knapsack
# Execute all testing suites against Ruby 2.1
.ruby-21
:
&ruby-21
image
:
"
dev.gitlab.org:5005/gitlab/gitlab-build-images:ruby-2.1-git-2.7-phantomjs-2.1"
<<
:
*use-db
only
:
-
master@gitlab-org/gitlab-ce
-
master@gitlab-org/gitlab-ee
-
master@gitlab/gitlabhq
-
master@gitlab/gitlab-ee
cache
:
key
:
"
ruby21"
paths
:
-
vendor/ruby
.rspec-knapsack-ruby21
:
&rspec-knapsack-ruby21
<<
:
*rspec-knapsack
<<
:
*ruby-21
.spinach-knapsack-ruby21
:
&spinach-knapsack-ruby21
<<
:
*spinach-knapsack
<<
:
*ruby-21
rspec 0 20 ruby21
:
*rspec-knapsack-ruby21
rspec 1 20 ruby21
:
*rspec-knapsack-ruby21
rspec 2 20 ruby21
:
*rspec-knapsack-ruby21
rspec 3 20 ruby21
:
*rspec-knapsack-ruby21
rspec 4 20 ruby21
:
*rspec-knapsack-ruby21
rspec 5 20 ruby21
:
*rspec-knapsack-ruby21
rspec 6 20 ruby21
:
*rspec-knapsack-ruby21
rspec 7 20 ruby21
:
*rspec-knapsack-ruby21
rspec 8 20 ruby21
:
*rspec-knapsack-ruby21
rspec 9 20 ruby21
:
*rspec-knapsack-ruby21
rspec 10 20 ruby21
:
*rspec-knapsack-ruby21
rspec 11 20 ruby21
:
*rspec-knapsack-ruby21
rspec 12 20 ruby21
:
*rspec-knapsack-ruby21
rspec 13 20 ruby21
:
*rspec-knapsack-ruby21
rspec 14 20 ruby21
:
*rspec-knapsack-ruby21
rspec 15 20 ruby21
:
*rspec-knapsack-ruby21
rspec 16 20 ruby21
:
*rspec-knapsack-ruby21
rspec 17 20 ruby21
:
*rspec-knapsack-ruby21
rspec 18 20 ruby21
:
*rspec-knapsack-ruby21
rspec 19 20 ruby21
:
*rspec-knapsack-ruby21
spinach 0 10 ruby21
:
*spinach-knapsack-ruby21
spinach 1 10 ruby21
:
*spinach-knapsack-ruby21
spinach 2 10 ruby21
:
*spinach-knapsack-ruby21
spinach 3 10 ruby21
:
*spinach-knapsack-ruby21
spinach 4 10 ruby21
:
*spinach-knapsack-ruby21
spinach 5 10 ruby21
:
*spinach-knapsack-ruby21
spinach 6 10 ruby21
:
*spinach-knapsack-ruby21
spinach 7 10 ruby21
:
*spinach-knapsack-ruby21
spinach 8 10 ruby21
:
*spinach-knapsack-ruby21
spinach 9 10 ruby21
:
*spinach-knapsack-ruby21
# Other generic tests
.ruby-static-analysis
:
&ruby-static-analysis
variables
:
SIMPLECOV
:
"
false"
SETUP_DB
:
"
false"
USE_BUNDLE_INSTALL
:
"
true"
.exec
:
&exec
<<
:
*ruby-static-analysis
stage
:
test
script
:
-
bundle exec $CI_BUILD_NAME
rubocop
:
*exec
rake haml_lint
:
*exec
rake scss_lint
:
*exec
rake brakeman
:
*exec
rake flay
:
*exec
license_finder
:
*exec
rake downtime_check
:
*exec
rake ee_compat_check
:
<<
:
*exec
only
:
-
branches@gitlab-org/gitlab-ce
-
branches@gitlab/gitlabhq
except
:
-
master
-
tags
-
/^[\d-]+-stable(-ee)?$/
allow_failure
:
yes
cache
:
key
:
"
ruby231-ee_compat_check_repo"
paths
:
-
ee_compat_check/repo/
-
vendor/ruby
artifacts
:
name
:
"
${CI_BUILD_NAME}_${CI_BUILD_REF_NAME}_${CI_BUILD_REF}"
when
:
on_failure
expire_in
:
10d
paths
:
-
ee_compat_check/patches/*.patch
rake db:migrate:reset:
stage
:
test
<<
:
*use-db
script
:
-
rake db:migrate:reset
rake db:seed_fu:
stage
:
test
<<
:
*use-db
variables
:
SIZE
:
"
1"
SETUP_DB
:
"
false"
RAILS_ENV
:
"
development"
script
:
-
git clone https://gitlab.com/gitlab-org/gitlab-test.git
/home/git/repositories/gitlab-org/gitlab-test.git
-
bundle exec rake db:setup db:seed_fu
artifacts
:
when
:
on_failure
expire_in
:
1d
paths
:
-
log/development.log
teaspoon
:
stage
:
test
<<
:
*use-db
script
:
-
curl --silent --location https://deb.nodesource.com/setup_6.x | bash -
-
apt-get install --assume-yes nodejs
-
npm install --global istanbul
-
rake teaspoon
artifacts
:
name
:
coverage-javascript
expire_in
:
31d
paths
:
-
coverage-javascript/default/
lint-doc
:
stage
:
test
image
:
"
phusion/baseimage:latest"
before_script
:
[]
script
:
-
scripts/lint-doc.sh
bundler:check:
stage
:
test
<<
:
*ruby-static-analysis
script
:
-
bundle check
bundler:audit:
stage
:
test
<<
:
*ruby-static-analysis
only
:
-
master@gitlab-org/gitlab-ce
-
master@gitlab-org/gitlab-ee
-
master@gitlab/gitlabhq
-
master@gitlab/gitlab-ee
script
:
-
"
bundle
exec
bundle-audit
check
--update
--ignore
OSVDB-115941"
migration paths
:
migration paths
:
stage
:
test
stage
:
test
<<
:
*use-db
<<
:
*use-db
variables
:
variables
:
SETUP_DB
:
"
false"
SETUP_DB
:
"
false"
only
:
-
master@gitlab-org/gitlab-ce
-
master@gitlab-org/gitlab-ee
-
master@gitlab/gitlabhq
-
master@gitlab/gitlab-ee
script
:
script
:
-
git fetch origin v8.5.9
-
git fetch origin v8.5.9
-
git checkout -f FETCH_HEAD
-
git checkout -f FETCH_HEAD
...
@@ -50,3 +328,88 @@ migration paths:
...
@@ -50,3 +328,88 @@ migration paths:
-
git checkout $CI_BUILD_REF
-
git checkout $CI_BUILD_REF
-
source scripts/prepare_build.sh
-
source scripts/prepare_build.sh
-
rake db:migrate
-
rake db:migrate
coverage
:
stage
:
post-test
services
:
[]
variables
:
SETUP_DB
:
"
false"
USE_BUNDLE_INSTALL
:
"
true"
script
:
-
bundle exec scripts/merge-simplecov
artifacts
:
name
:
coverage
expire_in
:
31d
paths
:
-
coverage/index.html
-
coverage/assets/
lint-javascript
:
stage
:
test
image
:
"
node:latest"
before_script
:
-
npm install
script
:
-
npm run eslint
# Trigger docs build
# https://gitlab.com/gitlab-com/doc-gitlab-com/blob/master/README.md#deployment-process
trigger_docs
:
stage
:
post-test
image
:
"
alpine"
before_script
:
-
apk update && apk add curl
variables
:
GIT_STRATEGY
:
none
cache
:
{}
artifacts
:
{}
script
:
-
"
curl
-X
POST
-F
token=${DOCS_TRIGGER_TOKEN}
-F
ref=master
-F
variables[PROJECT]=ce
https://gitlab.com/api/v3/projects/1794617/trigger/builds"
only
:
-
master@gitlab-org/gitlab-ce
# Notify slack in the end
notify:slack:
stage
:
post-test
variables
:
SETUP_DB
:
"
false"
USE_BUNDLE_INSTALL
:
"
false"
script
:
-
./scripts/notify_slack.sh "#builds" "Build on \`$CI_BUILD_REF_NAME\` failed! Commit \`$(git log -1 --oneline)\` See <https://gitlab.com/gitlab-org/$(basename "$PWD")/commit/"$CI_BUILD_REF"/builds>"
when
:
on_failure
only
:
-
master@gitlab-org/gitlab-ce
-
tags@gitlab-org/gitlab-ce
-
master@gitlab-org/gitlab-ee
-
tags@gitlab-org/gitlab-ee
pages
:
before_script
:
[]
stage
:
pages
dependencies
:
-
coverage
-
teaspoon
script
:
-
mv public/ .public/
-
mkdir public/
-
mv coverage public/coverage-ruby
-
mv coverage-javascript/default/ public/coverage-javascript/
artifacts
:
paths
:
-
public
only
:
-
master
# Insurance in case a gem needed by one of our releases gets yanked from
# rubygems.org in the future.
cache gems
:
only
:
-
tags
variables
:
SETUP_DB
:
"
false"
script
:
-
bundle package --all --all-platforms
artifacts
:
paths
:
-
vendor/cache
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment