gitlab-org--gitlab-foss/.gitlab-ci.yml

193 lines
3.3 KiB
YAML
Raw Normal View History

image: "ruby:2.2"
2016-01-22 08:45:34 -05:00
services:
- mysql:latest
- postgres:latest
- redis:latest
variables:
MYSQL_ALLOW_EMPTY_PASSWORD: "1"
before_script:
- source ./scripts/prepare_build.sh
2015-06-03 16:05:33 -04:00
- ruby -v
- which ruby
- gem install bundler --no-ri --no-rdoc
2015-06-03 16:05:33 -04:00
- cp config/gitlab.yml.example config/gitlab.yml
- touch log/application.log
- touch log/test.log
- bundle install --without postgres production --jobs $(nproc) "${FLAGS[@]}"
- RAILS_ENV=test bundle exec rake db:drop db:create db:schema:load db:migrate
stages:
- test
- notifications
spec:feature:
stage: test
script:
- RAILS_ENV=test bundle exec rake assets:precompile 2>/dev/null
- RAILS_ENV=test SIMPLECOV=true bundle exec rake spec:feature
tags:
- ruby
- mysql
spec:api:
stage: test
script:
- RAILS_ENV=test SIMPLECOV=true bundle exec rake spec:api
tags:
- ruby
- mysql
2015-12-09 04:51:01 -05:00
spec:models:
stage: test
2015-12-09 04:51:01 -05:00
script:
- RAILS_ENV=test SIMPLECOV=true bundle exec rake spec:models
tags:
- ruby
- mysql
2015-12-09 05:56:23 -05:00
spec:lib:
stage: test
2015-12-09 05:56:23 -05:00
script:
- RAILS_ENV=test SIMPLECOV=true bundle exec rake spec:lib
tags:
- ruby
- mysql
spec:services:
stage: test
2015-12-09 05:56:23 -05:00
script:
- RAILS_ENV=test SIMPLECOV=true bundle exec rake spec:services
tags:
- ruby
- mysql
spec:benchmark:
stage: test
script:
- RAILS_ENV=test bundle exec rake spec:benchmark
tags:
- ruby
- mysql
allow_failure: true
spec:other:
stage: test
script:
- RAILS_ENV=test SIMPLECOV=true bundle exec rake spec:other
tags:
- ruby
- mysql
2015-12-09 04:50:38 -05:00
spinach:project:half:
stage: test
2015-06-15 05:00:13 -04:00
script:
2015-12-09 04:50:38 -05:00
- RAILS_ENV=test SIMPLECOV=true bundle exec rake spinach:project:half
tags:
- ruby
- mysql
spinach:project:rest:
stage: test
2015-06-15 05:00:13 -04:00
script:
2015-12-09 04:50:38 -05:00
- RAILS_ENV=test SIMPLECOV=true bundle exec rake spinach:project:rest
2015-06-15 05:00:13 -04:00
tags:
- ruby
- mysql
spinach:other:
stage: test
2015-06-15 05:00:13 -04:00
script:
- RAILS_ENV=test SIMPLECOV=true bundle exec rake spinach:other
2015-06-15 05:00:13 -04:00
tags:
- ruby
- mysql
teaspoon:
stage: test
2015-06-15 05:00:13 -04:00
script:
- RAILS_ENV=test bundle exec teaspoon
2015-06-15 05:00:13 -04:00
tags:
- ruby
- mysql
rubocop:
stage: test
2015-06-15 05:00:13 -04:00
script:
- bundle exec rubocop
tags:
- ruby
- mysql
brakeman:
stage: test
2015-06-15 05:00:13 -04:00
script:
- bundle exec rake brakeman
tags:
- ruby
- mysql
flog:
stage: test
script:
- bundle exec rake flog
tags:
- ruby
- mysql
flay:
stage: test
script:
- bundle exec rake flay
tags:
- ruby
- mysql
bundler:audit:
stage: test
script:
- "bundle exec bundle-audit update"
- "bundle exec bundle-audit check"
tags:
- ruby
- mysql
allow_failure: true
## Ruby 2.1 jobs
2016-01-27 10:16:03 -05:00
spec:ruby21:
stage: test
image: ruby:2.1
script:
- RAILS_ENV=test bundle exec rake assets:precompile 2>/dev/null
2016-01-27 10:16:03 -05:00
- RAILS_ENV=test SIMPLECOV=true bundle exec rake spec
tags:
- ruby
- mysql
only:
- master
2016-01-27 10:16:03 -05:00
spinach:ruby21:
stage: test
image: ruby:2.1
script:
2016-01-27 10:16:03 -05:00
- RAILS_ENV=test SIMPLECOV=true bundle exec rake spinach
tags:
- ruby
- mysql
only:
- master
notify:slack:
stage: notifications
script:
- source ./scripts/notify_slack.sh "#ci-test" "Build failed for master/tags!"
when: on_failure
# TODO: uncomment these lines.
#only:
# - master@gitlab-org/gitlab-ce
# - tags@gitlab-org/gitlab-ce
# - master@gitlab-org/gitlab-ee
# - tags@gitlab-org/gitlab-ee