summaryrefslogtreecommitdiff
path: root/vendor/gems/sidekiq-reliable-fetch/.gitlab-ci.yml
blob: b87a454bccc8af21555ce6a67dd5d35ab9eb5a1f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
workflow:
  rules:
    - if: $CI_MERGE_REQUEST_ID

default:
  image: ruby:3.0

before_script:
  - cd vendor/gems/sidekiq-reliable-fetch
  - ruby -v
  - which ruby
  - gem install bundler
  - bundle config set --local path 'vendor'      # Install dependencies into ./vendor/ruby
  - bundle config set with 'development'         # This is set to 'deployment' otherwise
  - bundle config set --local frozen 'true'      # Disallow Gemfile.lock changes on CI
  - bundle config                                # Show bundler configuration
  - bundle install --jobs $(nproc) "${FLAGS[@]}"

variables:
  REDIS_URL: "redis://redis"

rspec:
  stage: test
  coverage: '/LOC \((\d+\.\d+%)\) covered.$/'
  script:
    - bundle exec rspec
  services:
    - redis:alpine
  artifacts:
    expire_in: 31d
    when: always
    paths:
      - coverage/

.integration:
  stage: test
  script:
    - cd tests/reliability
    - bundle exec ruby reliability_test.rb
  services:
    - redis:alpine

integration_semi:
  extends: .integration
  variables:
    JOB_FETCHER: semi

integration_reliable:
  extends: .integration
  variables:
    JOB_FETCHER: reliable

integration_basic:
  extends: .integration
  allow_failure: yes
  variables:
    JOB_FETCHER: basic

kill_interruption:
  stage: test
  script:
    - cd tests/interruption
    - bundle exec ruby test_kill_signal.rb
  services:
    - redis:alpine

term_interruption:
  stage: test
  script:
    - cd tests/interruption
    - bundle exec ruby test_term_signal.rb
  services:
    - redis:alpine

# rubocop:
#   script:
#     - bundle exec rubocop