-
-
Notifications
You must be signed in to change notification settings - Fork 20
90 lines (88 loc) · 2.3 KB
/
ci.yml
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
78
79
80
81
82
83
84
85
86
87
88
89
90
name: Run Bashcov CI
on:
push:
pull_request:
jobs:
audit:
runs-on: ubuntu-latest
container: ruby:latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/set-up-bashcov
- name: Run Bundle audit
id: bundle-audit
run: |
bundle exec rake bundle:audit:update
bundle exec rake bundle:audit:check
build:
runs-on: ubuntu-latest
container: ruby:latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/set-up-bashcov
- name: Build Bashcov
id: build-bashcov
run: |
bundle exec rake build
bundle exec rake build:checksum
cat checksums/*
cucumber:
runs-on: ubuntu-latest
container: ruby:latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/set-up-bashcov
- name: Run Cucumber scenarios
id: cucumber-scenarios
run: bundle exec rake cucumber
spec:
runs-on: ubuntu-latest
container: ruby:latest
strategy:
matrix:
bash-version:
- '5.2'
- '5.1'
- '5.0'
- '4.4'
- '4.3'
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/set-up-bashcov
with:
bash-version: ${{ matrix.bash-version }}
- name: Run RSpec tests against Bash ${{ matrix.bash-version }}
run: |
bundle exec rake spec
rubocop:
runs-on: ubuntu-latest
container: ruby:latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/set-up-bashcov
- name: Lint with RuboCop
id: rubocop
run: |
bundle exec rake rubocop
yard:
runs-on: ubuntu-latest
container: ruby:latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/set-up-bashcov
- name: Generate documentation with YARD
id: yard
run: |
bundle exec yard stats --list-undoc
nix:
runs-on: ubuntu-latest
# Don't fail the build if this job fails
continue-on-error: true
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v22
with:
extra_nix_config: |
system-features = benchmark big-parallel kvm nixos-test uid-range
- name: run flake checks
run: nix flake check -L