35 lines
1.2 KiB
YAML
35 lines
1.2 KiB
YAML
include:
|
|
- local: '/.gitlab/ci/rspec/mysql.yml'
|
|
- local: '/.gitlab/ci/rspec/postgresql.yml'
|
|
|
|
.template_rspec: &template_rspec
|
|
extends:
|
|
- .env_base
|
|
- .variables_rspec_slicing
|
|
script:
|
|
- bundle exec rake zammad:db:init
|
|
- echo "RSpec filter:" "$RSPEC_EXAMPLE_MATCHES"
|
|
- bundle exec rspec --require ./spec/rspec_extensions.rb --example-matches "$RSPEC_EXAMPLE_MATCHES" --exclude-pattern "spec/{system,integration}/**/*_spec.rb" -t ~searchindex --profile 10
|
|
|
|
# RSpec 3rd party integration tests are independent of the database
|
|
# therefore we need only one job and choose a random database for each run
|
|
# Optionally pass INTEGRATION_TESTS=enabled to run them in private- branch
|
|
|
|
rspec:integration:
|
|
stage: test
|
|
extends:
|
|
- .env_base
|
|
- .services_mysql_postgresql_redis_memcached
|
|
- .rules_integration_manual_start
|
|
variables:
|
|
RAILS_ENV: "test"
|
|
rules:
|
|
- if: $CI_MERGE_REQUEST_ID
|
|
when: never
|
|
- if: '$CI_COMMIT_BRANCH =~ /^private/ && $INTEGRATION_TESTS != "enabled"'
|
|
when: manual
|
|
allow_failure: true
|
|
- when: always
|
|
script:
|
|
- bundle exec rake zammad:db:init
|
|
- bundle exec rspec -t type:integration --profile 10
|