kettle-dev 1.2.3 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/CHANGELOG.md +176 -3
- data/CITATION.cff +2 -2
- data/CONTRIBUTING.md +11 -17
- data/README.md +390 -319
- data/exe/kettle-dev-setup +12 -63
- data/exe/kettle-gh-release +82 -0
- data/lib/kettle/dev/gem_spec_reader.rb +2 -2
- data/lib/kettle/dev/open_collective_config.rb +12 -0
- data/lib/kettle/dev/rakelib/yard.rake +15 -0
- data/lib/kettle/dev/tasks/ci_task.rb +4 -4
- data/lib/kettle/dev/version.rb +1 -1
- data/lib/kettle/dev.rb +4 -12
- data/sig/kettle/dev/source_merger.rbs +40 -56
- data.tar.gz.sig +0 -0
- metadata +15 -144
- metadata.gz.sig +0 -0
- data/.aiignore.example +0 -19
- data/.devcontainer/apt-install/devcontainer-feature.json +0 -9
- data/.devcontainer/apt-install/install.sh +0 -11
- data/.devcontainer/devcontainer.json +0 -28
- data/.env.local.example +0 -31
- data/.envrc +0 -47
- data/.envrc.example +0 -51
- data/.envrc.no-osc.example +0 -51
- data/.git-hooks/commit-msg +0 -54
- data/.git-hooks/commit-subjects-goalie.txt +0 -8
- data/.git-hooks/footer-template.erb.txt +0 -16
- data/.git-hooks/prepare-commit-msg +0 -8
- data/.github/.codecov.yml.example +0 -14
- data/.github/FUNDING.yml +0 -13
- data/.github/FUNDING.yml.no-osc.example +0 -13
- data/.github/dependabot.yml +0 -13
- data/.github/workflows/ancient.yml +0 -83
- data/.github/workflows/ancient.yml.example +0 -81
- data/.github/workflows/auto-assign.yml +0 -21
- data/.github/workflows/codeql-analysis.yml +0 -70
- data/.github/workflows/coverage.yml +0 -127
- data/.github/workflows/coverage.yml.example +0 -127
- data/.github/workflows/current.yml +0 -116
- data/.github/workflows/current.yml.example +0 -115
- data/.github/workflows/dep-heads.yml +0 -117
- data/.github/workflows/dependency-review.yml +0 -20
- data/.github/workflows/discord-notifier.yml.example +0 -39
- data/.github/workflows/heads.yml +0 -117
- data/.github/workflows/heads.yml.example +0 -116
- data/.github/workflows/jruby.yml +0 -82
- data/.github/workflows/jruby.yml.example +0 -72
- data/.github/workflows/legacy.yml +0 -76
- data/.github/workflows/license-eye.yml +0 -40
- data/.github/workflows/locked_deps.yml +0 -85
- data/.github/workflows/opencollective.yml +0 -40
- data/.github/workflows/style.yml +0 -67
- data/.github/workflows/supported.yml +0 -75
- data/.github/workflows/truffle.yml +0 -99
- data/.github/workflows/unlocked_deps.yml +0 -84
- data/.github/workflows/unsupported.yml +0 -76
- data/.gitignore +0 -50
- data/.gitlab-ci.yml.example +0 -134
- data/.idea/.gitignore +0 -45
- data/.junie/guidelines-rbs.md +0 -49
- data/.junie/guidelines.md +0 -141
- data/.junie/guidelines.md.example +0 -140
- data/.licenserc.yaml +0 -7
- data/.opencollective.yml +0 -3
- data/.opencollective.yml.example +0 -3
- data/.qlty/qlty.toml +0 -79
- data/.rspec +0 -9
- data/.rubocop.yml +0 -13
- data/.rubocop_rspec.yml +0 -33
- data/.simplecov +0 -16
- data/.simplecov.example +0 -11
- data/.tool-versions +0 -1
- data/.yardignore +0 -13
- data/.yardopts +0 -14
- data/Appraisal.root.gemfile +0 -10
- data/Appraisals +0 -151
- data/Appraisals.example +0 -102
- data/CHANGELOG.md.example +0 -47
- data/CONTRIBUTING.md.example +0 -227
- data/FUNDING.md.no-osc.example +0 -63
- data/Gemfile +0 -40
- data/Gemfile.example +0 -34
- data/README.md.example +0 -570
- data/README.md.no-osc.example +0 -536
- data/Rakefile.example +0 -68
- data/gemfiles/modular/coverage.gemfile +0 -6
- data/gemfiles/modular/debug.gemfile +0 -13
- data/gemfiles/modular/documentation.gemfile +0 -14
- data/gemfiles/modular/erb/r2/v3.0.gemfile +0 -1
- data/gemfiles/modular/erb/r2.3/default.gemfile +0 -6
- data/gemfiles/modular/erb/r2.6/v2.2.gemfile +0 -3
- data/gemfiles/modular/erb/r3/v5.0.gemfile +0 -1
- data/gemfiles/modular/erb/r3.1/v4.0.gemfile +0 -2
- data/gemfiles/modular/erb/vHEAD.gemfile +0 -2
- data/gemfiles/modular/injected.gemfile +0 -60
- data/gemfiles/modular/mutex_m/r2/v0.3.gemfile +0 -2
- data/gemfiles/modular/mutex_m/r2.4/v0.1.gemfile +0 -3
- data/gemfiles/modular/mutex_m/r3/v0.3.gemfile +0 -2
- data/gemfiles/modular/mutex_m/vHEAD.gemfile +0 -2
- data/gemfiles/modular/optional.gemfile +0 -8
- data/gemfiles/modular/optional.gemfile.example +0 -5
- data/gemfiles/modular/runtime_heads.gemfile +0 -10
- data/gemfiles/modular/runtime_heads.gemfile.example +0 -8
- data/gemfiles/modular/stringio/r2/v3.0.gemfile +0 -5
- data/gemfiles/modular/stringio/r2.4/v0.0.2.gemfile +0 -4
- data/gemfiles/modular/stringio/r3/v3.0.gemfile +0 -5
- data/gemfiles/modular/stringio/vHEAD.gemfile +0 -2
- data/gemfiles/modular/style.gemfile +0 -25
- data/gemfiles/modular/style.gemfile.example +0 -25
- data/gemfiles/modular/templating.gemfile +0 -3
- data/gemfiles/modular/x_std_libs/r2/libs.gemfile +0 -3
- data/gemfiles/modular/x_std_libs/r2.3/libs.gemfile +0 -3
- data/gemfiles/modular/x_std_libs/r2.4/libs.gemfile +0 -3
- data/gemfiles/modular/x_std_libs/r2.6/libs.gemfile +0 -3
- data/gemfiles/modular/x_std_libs/r3/libs.gemfile +0 -3
- data/gemfiles/modular/x_std_libs/r3.1/libs.gemfile +0 -3
- data/gemfiles/modular/x_std_libs/vHEAD.gemfile +0 -3
- data/gemfiles/modular/x_std_libs.gemfile +0 -2
- data/kettle-dev.gemspec.example +0 -154
- data/lib/kettle/dev/modular_gemfiles.rb +0 -119
- data/lib/kettle/dev/prism_appraisals.rb +0 -351
- data/lib/kettle/dev/prism_gemfile.rb +0 -177
- data/lib/kettle/dev/prism_gemspec.rb +0 -284
- data/lib/kettle/dev/prism_utils.rb +0 -201
- data/lib/kettle/dev/rakelib/install.rake +0 -10
- data/lib/kettle/dev/rakelib/template.rake +0 -10
- data/lib/kettle/dev/setup_cli.rb +0 -403
- data/lib/kettle/dev/source_merger.rb +0 -622
- data/lib/kettle/dev/tasks/install_task.rb +0 -553
- data/lib/kettle/dev/tasks/template_task.rb +0 -975
- data/lib/kettle/dev/template_helpers.rb +0 -685
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
# Targets the evergreen latest release of ruby, truffleruby, and jruby
|
|
2
|
-
name: Current
|
|
3
|
-
|
|
4
|
-
permissions:
|
|
5
|
-
contents: read
|
|
6
|
-
|
|
7
|
-
env:
|
|
8
|
-
K_SOUP_COV_DO: false
|
|
9
|
-
|
|
10
|
-
on:
|
|
11
|
-
push:
|
|
12
|
-
branches:
|
|
13
|
-
- 'main'
|
|
14
|
-
- '*-stable'
|
|
15
|
-
tags:
|
|
16
|
-
- '!*' # Do not execute on tags
|
|
17
|
-
pull_request:
|
|
18
|
-
branches:
|
|
19
|
-
- '*'
|
|
20
|
-
# Allow manually triggering the workflow.
|
|
21
|
-
workflow_dispatch:
|
|
22
|
-
|
|
23
|
-
# Cancels all previous workflow runs for the same branch that have not yet completed.
|
|
24
|
-
concurrency:
|
|
25
|
-
# The concurrency group contains the workflow name and the branch name.
|
|
26
|
-
group: "${{ github.workflow }}-${{ github.ref }}"
|
|
27
|
-
cancel-in-progress: true
|
|
28
|
-
|
|
29
|
-
jobs:
|
|
30
|
-
test:
|
|
31
|
-
if: "!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]')"
|
|
32
|
-
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}
|
|
33
|
-
runs-on: ubuntu-latest
|
|
34
|
-
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
35
|
-
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
36
|
-
BUNDLE_GEMFILE: ${{ github.workspace }}/${{ matrix.gemfile }}.gemfile
|
|
37
|
-
strategy:
|
|
38
|
-
matrix:
|
|
39
|
-
include:
|
|
40
|
-
# Ruby 3.4
|
|
41
|
-
- ruby: "ruby"
|
|
42
|
-
appraisal: "current"
|
|
43
|
-
exec_cmd: "rake test"
|
|
44
|
-
gemfile: "Appraisal.root"
|
|
45
|
-
rubygems: latest
|
|
46
|
-
bundler: latest
|
|
47
|
-
|
|
48
|
-
# truffleruby-24.1 (targets Ruby 3.3 compatibility)
|
|
49
|
-
- ruby: "truffleruby"
|
|
50
|
-
appraisal: "current"
|
|
51
|
-
exec_cmd: "rake test"
|
|
52
|
-
gemfile: "Appraisal.root"
|
|
53
|
-
rubygems: default
|
|
54
|
-
bundler: default
|
|
55
|
-
|
|
56
|
-
# jruby-10.0 (targets Ruby 3.4 compatibility)
|
|
57
|
-
- ruby: "jruby"
|
|
58
|
-
appraisal: "current"
|
|
59
|
-
exec_cmd: "rake test"
|
|
60
|
-
gemfile: "Appraisal.root"
|
|
61
|
-
rubygems: default
|
|
62
|
-
bundler: default
|
|
63
|
-
|
|
64
|
-
steps:
|
|
65
|
-
- name: Checkout
|
|
66
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
67
|
-
uses: actions/checkout@v6
|
|
68
|
-
|
|
69
|
-
- name: Setup Ruby & RubyGems
|
|
70
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
71
|
-
uses: ruby/setup-ruby@v1
|
|
72
|
-
with:
|
|
73
|
-
ruby-version: ${{ matrix.ruby }}
|
|
74
|
-
rubygems: ${{ matrix.rubygems }}
|
|
75
|
-
bundler: ${{ matrix.bundler }}
|
|
76
|
-
bundler-cache: false
|
|
77
|
-
|
|
78
|
-
# Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
|
|
79
|
-
# We need to do this first to get appraisal installed.
|
|
80
|
-
# NOTE: This does not use the primary Gemfile at all.
|
|
81
|
-
- name: Install Root Appraisal
|
|
82
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
83
|
-
run: bundle
|
|
84
|
-
|
|
85
|
-
- name: "[Attempt 1] Install Root Appraisal"
|
|
86
|
-
id: bundleAttempt1
|
|
87
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
88
|
-
run: bundle
|
|
89
|
-
# Continue to the next step on failure
|
|
90
|
-
continue-on-error: true
|
|
91
|
-
|
|
92
|
-
# Effectively an automatic retry of the previous step.
|
|
93
|
-
- name: "[Attempt 2] Install Root Appraisal"
|
|
94
|
-
id: bundleAttempt2
|
|
95
|
-
# If bundleAttempt1 failed, try again here; Otherwise skip.
|
|
96
|
-
if: ${{ steps.bundleAttempt1.outcome == 'failure' && (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
97
|
-
run: bundle
|
|
98
|
-
|
|
99
|
-
- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
100
|
-
id: bundleAppraisalAttempt1
|
|
101
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
102
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
|
|
103
|
-
# Continue to the next step on failure
|
|
104
|
-
continue-on-error: true
|
|
105
|
-
|
|
106
|
-
# Effectively an automatic retry of the previous step.
|
|
107
|
-
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
108
|
-
id: bundleAppraisalAttempt2
|
|
109
|
-
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
110
|
-
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
111
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
|
|
112
|
-
|
|
113
|
-
- name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
|
|
114
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
115
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
# Targets the evergreen latest release of ruby, truffleruby, and jruby
|
|
2
|
-
# and tests against the HEAD of runtime dependencies
|
|
3
|
-
name: Runtime Deps @ HEAD
|
|
4
|
-
|
|
5
|
-
permissions:
|
|
6
|
-
contents: read
|
|
7
|
-
|
|
8
|
-
env:
|
|
9
|
-
K_SOUP_COV_DO: false
|
|
10
|
-
|
|
11
|
-
on:
|
|
12
|
-
push:
|
|
13
|
-
branches:
|
|
14
|
-
- 'main'
|
|
15
|
-
- '*-stable'
|
|
16
|
-
tags:
|
|
17
|
-
- '!*' # Do not execute on tags
|
|
18
|
-
pull_request:
|
|
19
|
-
branches:
|
|
20
|
-
- '*'
|
|
21
|
-
# Allow manually triggering the workflow.
|
|
22
|
-
workflow_dispatch:
|
|
23
|
-
|
|
24
|
-
# Cancels all previous workflow runs for the same branch that have not yet completed.
|
|
25
|
-
concurrency:
|
|
26
|
-
# The concurrency group contains the workflow name and the branch name.
|
|
27
|
-
group: "${{ github.workflow }}-${{ github.ref }}"
|
|
28
|
-
cancel-in-progress: true
|
|
29
|
-
|
|
30
|
-
jobs:
|
|
31
|
-
test:
|
|
32
|
-
if: "!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]')"
|
|
33
|
-
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}${{ matrix.name_extra || '' }}
|
|
34
|
-
runs-on: ubuntu-latest
|
|
35
|
-
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
36
|
-
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
37
|
-
BUNDLE_GEMFILE: ${{ github.workspace }}/${{ matrix.gemfile }}.gemfile
|
|
38
|
-
strategy:
|
|
39
|
-
fail-fast: true
|
|
40
|
-
matrix:
|
|
41
|
-
include:
|
|
42
|
-
# Ruby 3.4
|
|
43
|
-
- ruby: "ruby"
|
|
44
|
-
appraisal: "dep-heads"
|
|
45
|
-
exec_cmd: "rake test"
|
|
46
|
-
gemfile: "Appraisal.root"
|
|
47
|
-
rubygems: latest
|
|
48
|
-
bundler: latest
|
|
49
|
-
|
|
50
|
-
# truffleruby-24.1 (targets Ruby 3.3 compatibility)
|
|
51
|
-
- ruby: "truffleruby"
|
|
52
|
-
appraisal: "dep-heads"
|
|
53
|
-
exec_cmd: "rake test"
|
|
54
|
-
gemfile: "Appraisal.root"
|
|
55
|
-
rubygems: default
|
|
56
|
-
bundler: default
|
|
57
|
-
|
|
58
|
-
# jruby-10.0 (targets Ruby 3.4 compatibility)
|
|
59
|
-
- ruby: "jruby"
|
|
60
|
-
appraisal: "dep-heads"
|
|
61
|
-
exec_cmd: "rake test"
|
|
62
|
-
gemfile: "Appraisal.root"
|
|
63
|
-
rubygems: default
|
|
64
|
-
bundler: default
|
|
65
|
-
|
|
66
|
-
steps:
|
|
67
|
-
- name: Checkout
|
|
68
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
69
|
-
uses: actions/checkout@v6
|
|
70
|
-
|
|
71
|
-
- name: Setup Ruby & RubyGems
|
|
72
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
73
|
-
uses: ruby/setup-ruby@v1
|
|
74
|
-
with:
|
|
75
|
-
ruby-version: ${{ matrix.ruby }}
|
|
76
|
-
rubygems: ${{ matrix.rubygems }}
|
|
77
|
-
bundler: ${{ matrix.bundler }}
|
|
78
|
-
bundler-cache: false
|
|
79
|
-
|
|
80
|
-
# Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
|
|
81
|
-
# We need to do this first to get appraisal installed.
|
|
82
|
-
# NOTE: This does not use the primary Gemfile at all.
|
|
83
|
-
- name: Install Root Appraisal
|
|
84
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
85
|
-
run: bundle
|
|
86
|
-
|
|
87
|
-
- name: "[Attempt 1] Install Root Appraisal"
|
|
88
|
-
id: bundleAttempt1
|
|
89
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
90
|
-
run: bundle
|
|
91
|
-
# Continue to the next step on failure
|
|
92
|
-
continue-on-error: true
|
|
93
|
-
|
|
94
|
-
# Effectively an automatic retry of the previous step.
|
|
95
|
-
- name: "[Attempt 2] Install Root Appraisal"
|
|
96
|
-
id: bundleAttempt2
|
|
97
|
-
# If bundleAttempt1 failed, try again here; Otherwise skip.
|
|
98
|
-
if: ${{ steps.bundleAttempt1.outcome == 'failure' && (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
99
|
-
run: bundle
|
|
100
|
-
|
|
101
|
-
- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
102
|
-
id: bundleAppraisalAttempt1
|
|
103
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
104
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
|
|
105
|
-
# Continue to the next step on failure
|
|
106
|
-
continue-on-error: true
|
|
107
|
-
|
|
108
|
-
# Effectively an automatic retry of the previous step.
|
|
109
|
-
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
110
|
-
id: bundleAppraisalAttempt2
|
|
111
|
-
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
112
|
-
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
113
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
|
|
114
|
-
|
|
115
|
-
- name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
|
|
116
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
117
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
# Dependency Review Action
|
|
2
|
-
#
|
|
3
|
-
# This Action will scan dependency manifest files that change as part of a Pull Request, surfacing known-vulnerable versions of the packages declared or updated in the PR. Once installed, if the workflow run is marked as required, PRs introducing known-vulnerable packages will be blocked from merging.
|
|
4
|
-
#
|
|
5
|
-
# Source repository: https://github.com/actions/dependency-review-action
|
|
6
|
-
# Public documentation: https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review#dependency-review-enforcement
|
|
7
|
-
name: 'Dependency Review'
|
|
8
|
-
on: [pull_request]
|
|
9
|
-
|
|
10
|
-
permissions:
|
|
11
|
-
contents: read
|
|
12
|
-
|
|
13
|
-
jobs:
|
|
14
|
-
dependency-review:
|
|
15
|
-
runs-on: ubuntu-latest
|
|
16
|
-
steps:
|
|
17
|
-
- name: 'Checkout Repository'
|
|
18
|
-
uses: actions/checkout@v6
|
|
19
|
-
- name: 'Dependency Review'
|
|
20
|
-
uses: actions/dependency-review-action@v4
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
name: Discord Notify
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
check_run:
|
|
5
|
-
types: [completed]
|
|
6
|
-
discussion:
|
|
7
|
-
types: [ created ]
|
|
8
|
-
discussion_comment:
|
|
9
|
-
types: [ created ]
|
|
10
|
-
fork:
|
|
11
|
-
gollum:
|
|
12
|
-
issues:
|
|
13
|
-
types: [ opened ]
|
|
14
|
-
issue_comment:
|
|
15
|
-
types: [ created ]
|
|
16
|
-
pull_request:
|
|
17
|
-
types: [ opened, reopened, closed ]
|
|
18
|
-
release:
|
|
19
|
-
types: [ published ]
|
|
20
|
-
watch:
|
|
21
|
-
types: [ started ]
|
|
22
|
-
|
|
23
|
-
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
|
|
24
|
-
jobs:
|
|
25
|
-
# This workflow contains a single job called "build"
|
|
26
|
-
notify:
|
|
27
|
-
if: false
|
|
28
|
-
# The type of runner that the job will run on
|
|
29
|
-
runs-on: ubuntu-latest
|
|
30
|
-
|
|
31
|
-
# Steps represent a sequence of tasks that will be executed as part of the job
|
|
32
|
-
steps:
|
|
33
|
-
- name: Actions Status Discord
|
|
34
|
-
uses: sarisia/actions-status-discord@v1
|
|
35
|
-
if: always()
|
|
36
|
-
with:
|
|
37
|
-
webhook: ${{ secrets.DISCORD_WEBHOOK }}
|
|
38
|
-
status: ${{ job.status }}
|
|
39
|
-
username: GitHub Actions
|
data/.github/workflows/heads.yml
DELETED
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
name: Heads
|
|
2
|
-
|
|
3
|
-
permissions:
|
|
4
|
-
contents: read
|
|
5
|
-
|
|
6
|
-
env:
|
|
7
|
-
K_SOUP_COV_DO: false
|
|
8
|
-
|
|
9
|
-
on:
|
|
10
|
-
push:
|
|
11
|
-
branches:
|
|
12
|
-
- 'main'
|
|
13
|
-
- '*-stable'
|
|
14
|
-
tags:
|
|
15
|
-
- '!*' # Do not execute on tags
|
|
16
|
-
pull_request:
|
|
17
|
-
branches:
|
|
18
|
-
- '*'
|
|
19
|
-
# Allow manually triggering the workflow.
|
|
20
|
-
workflow_dispatch:
|
|
21
|
-
|
|
22
|
-
# Cancels all previous workflow runs for the same branch that have not yet completed.
|
|
23
|
-
concurrency:
|
|
24
|
-
# The concurrency group contains the workflow name and the branch name.
|
|
25
|
-
group: "${{ github.workflow }}-${{ github.ref }}"
|
|
26
|
-
cancel-in-progress: true
|
|
27
|
-
|
|
28
|
-
jobs:
|
|
29
|
-
test:
|
|
30
|
-
if: "!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]')"
|
|
31
|
-
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}${{ matrix.name_extra || '' }}
|
|
32
|
-
runs-on: ubuntu-latest
|
|
33
|
-
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
|
-
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
|
-
BUNDLE_GEMFILE: ${{ github.workspace }}/${{ matrix.gemfile }}.gemfile
|
|
36
|
-
strategy:
|
|
37
|
-
fail-fast: true
|
|
38
|
-
matrix:
|
|
39
|
-
include:
|
|
40
|
-
# NOTE: Heads use default rubygems / bundler; their defaults are custom, unreleased, and from the future!
|
|
41
|
-
# ruby-head
|
|
42
|
-
- ruby: "ruby-head"
|
|
43
|
-
appraisal: "head"
|
|
44
|
-
exec_cmd: "rake test"
|
|
45
|
-
gemfile: "Appraisal.root"
|
|
46
|
-
rubygems: default
|
|
47
|
-
bundler: default
|
|
48
|
-
|
|
49
|
-
# # Turn back on once allow-failures is a feature of GHA.
|
|
50
|
-
# # truffleruby-head
|
|
51
|
-
# - ruby: "truffleruby-head"
|
|
52
|
-
# appraisal: "head"
|
|
53
|
-
# exec_cmd: "rake test"
|
|
54
|
-
# gemfile: "Appraisal.root"
|
|
55
|
-
# rubygems: default
|
|
56
|
-
# bundler: default
|
|
57
|
-
|
|
58
|
-
# jruby-head
|
|
59
|
-
- ruby: "jruby-head"
|
|
60
|
-
appraisal: "head"
|
|
61
|
-
exec_cmd: "rake test"
|
|
62
|
-
gemfile: "Appraisal.root"
|
|
63
|
-
rubygems: default
|
|
64
|
-
bundler: default
|
|
65
|
-
|
|
66
|
-
steps:
|
|
67
|
-
- name: Checkout
|
|
68
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
69
|
-
uses: actions/checkout@v6
|
|
70
|
-
|
|
71
|
-
- name: Setup Ruby & RubyGems
|
|
72
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
73
|
-
uses: ruby/setup-ruby@v1
|
|
74
|
-
with:
|
|
75
|
-
ruby-version: ${{ matrix.ruby }}
|
|
76
|
-
rubygems: ${{ matrix.rubygems }}
|
|
77
|
-
bundler: ${{ matrix.bundler }}
|
|
78
|
-
bundler-cache: false
|
|
79
|
-
|
|
80
|
-
# Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
|
|
81
|
-
# We need to do this first to get appraisal installed.
|
|
82
|
-
# NOTE: This does not use the primary Gemfile at all.
|
|
83
|
-
- name: Install Root Appraisal
|
|
84
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
85
|
-
run: bundle
|
|
86
|
-
|
|
87
|
-
- name: "[Attempt 1] Install Root Appraisal"
|
|
88
|
-
id: bundleAttempt1
|
|
89
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
90
|
-
run: bundle
|
|
91
|
-
# Continue to the next step on failure
|
|
92
|
-
continue-on-error: true
|
|
93
|
-
|
|
94
|
-
# Effectively an automatic retry of the previous step.
|
|
95
|
-
- name: "[Attempt 2] Install Root Appraisal"
|
|
96
|
-
id: bundleAttempt2
|
|
97
|
-
# If bundleAttempt1 failed, try again here; Otherwise skip.
|
|
98
|
-
if: ${{ steps.bundleAttempt1.outcome == 'failure' && (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
99
|
-
run: bundle
|
|
100
|
-
|
|
101
|
-
- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
102
|
-
id: bundleAppraisalAttempt1
|
|
103
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
104
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
|
|
105
|
-
# Continue to the next step on failure
|
|
106
|
-
continue-on-error: true
|
|
107
|
-
|
|
108
|
-
# Effectively an automatic retry of the previous step.
|
|
109
|
-
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
110
|
-
id: bundleAppraisalAttempt2
|
|
111
|
-
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
112
|
-
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
113
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
|
|
114
|
-
|
|
115
|
-
- name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
|
|
116
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
117
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
name: Heads
|
|
2
|
-
|
|
3
|
-
permissions:
|
|
4
|
-
contents: read
|
|
5
|
-
|
|
6
|
-
env:
|
|
7
|
-
K_SOUP_COV_DO: false
|
|
8
|
-
|
|
9
|
-
on:
|
|
10
|
-
push:
|
|
11
|
-
branches:
|
|
12
|
-
- 'main'
|
|
13
|
-
- '*-stable'
|
|
14
|
-
tags:
|
|
15
|
-
- '!*' # Do not execute on tags
|
|
16
|
-
pull_request:
|
|
17
|
-
branches:
|
|
18
|
-
- '*'
|
|
19
|
-
# Allow manually triggering the workflow.
|
|
20
|
-
workflow_dispatch:
|
|
21
|
-
|
|
22
|
-
# Cancels all previous workflow runs for the same branch that have not yet completed.
|
|
23
|
-
concurrency:
|
|
24
|
-
# The concurrency group contains the workflow name and the branch name.
|
|
25
|
-
group: "${{ github.workflow }}-${{ github.ref }}"
|
|
26
|
-
cancel-in-progress: true
|
|
27
|
-
|
|
28
|
-
jobs:
|
|
29
|
-
test:
|
|
30
|
-
if: "!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]')"
|
|
31
|
-
name: Specs ${{ matrix.ruby }}@${{ matrix.appraisal }}${{ matrix.name_extra || '' }}
|
|
32
|
-
runs-on: ubuntu-latest
|
|
33
|
-
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
|
-
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
|
-
BUNDLE_GEMFILE: ${{ github.workspace }}/${{ matrix.gemfile }}.gemfile
|
|
36
|
-
strategy:
|
|
37
|
-
fail-fast: true
|
|
38
|
-
matrix:
|
|
39
|
-
include:
|
|
40
|
-
# NOTE: Heads use default rubygems / bundler; their defaults are custom, unreleased, and from the future!
|
|
41
|
-
# ruby-head
|
|
42
|
-
- ruby: "ruby-head"
|
|
43
|
-
appraisal: "head"
|
|
44
|
-
exec_cmd: "rake test"
|
|
45
|
-
gemfile: "Appraisal.root"
|
|
46
|
-
rubygems: default
|
|
47
|
-
bundler: default
|
|
48
|
-
|
|
49
|
-
# truffleruby-head
|
|
50
|
-
- ruby: "truffleruby-head"
|
|
51
|
-
appraisal: "head"
|
|
52
|
-
exec_cmd: "rake test"
|
|
53
|
-
gemfile: "Appraisal.root"
|
|
54
|
-
rubygems: default
|
|
55
|
-
bundler: default
|
|
56
|
-
|
|
57
|
-
# jruby-head
|
|
58
|
-
- ruby: "jruby-head"
|
|
59
|
-
appraisal: "head"
|
|
60
|
-
exec_cmd: "rake test"
|
|
61
|
-
gemfile: "Appraisal.root"
|
|
62
|
-
rubygems: default
|
|
63
|
-
bundler: default
|
|
64
|
-
|
|
65
|
-
steps:
|
|
66
|
-
- name: Checkout
|
|
67
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
68
|
-
uses: actions/checkout@v6
|
|
69
|
-
|
|
70
|
-
- name: Setup Ruby & RubyGems
|
|
71
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
72
|
-
uses: ruby/setup-ruby@v1
|
|
73
|
-
with:
|
|
74
|
-
ruby-version: ${{ matrix.ruby }}
|
|
75
|
-
rubygems: ${{ matrix.rubygems }}
|
|
76
|
-
bundler: ${{ matrix.bundler }}
|
|
77
|
-
bundler-cache: false
|
|
78
|
-
|
|
79
|
-
# Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
|
|
80
|
-
# We need to do this first to get appraisal installed.
|
|
81
|
-
# NOTE: This does not use the primary Gemfile at all.
|
|
82
|
-
- name: Install Root Appraisal
|
|
83
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
84
|
-
run: bundle
|
|
85
|
-
|
|
86
|
-
- name: "[Attempt 1] Install Root Appraisal"
|
|
87
|
-
id: bundleAttempt1
|
|
88
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
89
|
-
run: bundle
|
|
90
|
-
# Continue to the next step on failure
|
|
91
|
-
continue-on-error: true
|
|
92
|
-
|
|
93
|
-
# Effectively an automatic retry of the previous step.
|
|
94
|
-
- name: "[Attempt 2] Install Root Appraisal"
|
|
95
|
-
id: bundleAttempt2
|
|
96
|
-
# If bundleAttempt1 failed, try again here; Otherwise skip.
|
|
97
|
-
if: ${{ steps.bundleAttempt1.outcome == 'failure' && (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
98
|
-
run: bundle
|
|
99
|
-
|
|
100
|
-
- name: "[Attempt 1] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
101
|
-
id: bundleAppraisalAttempt1
|
|
102
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
103
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
|
|
104
|
-
# Continue to the next step on failure
|
|
105
|
-
continue-on-error: true
|
|
106
|
-
|
|
107
|
-
# Effectively an automatic retry of the previous step.
|
|
108
|
-
- name: "[Attempt 2] Appraisal for ${{ matrix.ruby }}@${{ matrix.appraisal }}"
|
|
109
|
-
id: bundleAppraisalAttempt2
|
|
110
|
-
# If bundleAppraisalAttempt1 failed, try again here; Otherwise skip.
|
|
111
|
-
if: ${{ steps.bundleAppraisalAttempt1.outcome == 'failure' && (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
112
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
|
|
113
|
-
|
|
114
|
-
- name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
|
|
115
|
-
if: ${{ (env.ACT && !(startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) || (!env.ACT && (startsWith(matrix.ruby, 'jruby')) || startsWith(matrix.ruby, 'truffleruby')) }}
|
|
116
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
|
data/.github/workflows/jruby.yml
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
name: JRuby
|
|
2
|
-
|
|
3
|
-
permissions:
|
|
4
|
-
contents: read
|
|
5
|
-
|
|
6
|
-
env:
|
|
7
|
-
K_SOUP_COV_DO: false
|
|
8
|
-
|
|
9
|
-
on:
|
|
10
|
-
push:
|
|
11
|
-
branches:
|
|
12
|
-
- 'main'
|
|
13
|
-
- '*-stable'
|
|
14
|
-
tags:
|
|
15
|
-
- '!*' # Do not execute on tags
|
|
16
|
-
pull_request:
|
|
17
|
-
branches:
|
|
18
|
-
- '*'
|
|
19
|
-
# Allow manually triggering the workflow.
|
|
20
|
-
workflow_dispatch:
|
|
21
|
-
|
|
22
|
-
# Cancels all previous workflow runs for the same branch that have not yet completed.
|
|
23
|
-
concurrency:
|
|
24
|
-
# The concurrency group contains the workflow name and the branch name.
|
|
25
|
-
group: "${{ github.workflow }}-${{ github.ref }}"
|
|
26
|
-
cancel-in-progress: true
|
|
27
|
-
|
|
28
|
-
jobs:
|
|
29
|
-
test:
|
|
30
|
-
if: "!contains(github.event.commits[0].message, '[ci skip]') && !contains(github.event.commits[0].message, '[skip ci]')"
|
|
31
|
-
name: Specs ${{ matrix.ruby }} ${{ matrix.appraisal }}${{ matrix.name_extra || '' }}
|
|
32
|
-
runs-on: ubuntu-22.04
|
|
33
|
-
continue-on-error: ${{ matrix.experimental || endsWith(matrix.ruby, 'head') }}
|
|
34
|
-
env: # $BUNDLE_GEMFILE must be set at job level, so it is set for all steps
|
|
35
|
-
BUNDLE_GEMFILE: ${{ github.workspace }}/${{ matrix.gemfile }}.gemfile
|
|
36
|
-
strategy:
|
|
37
|
-
matrix:
|
|
38
|
-
include:
|
|
39
|
-
# # NoMethodError: undefined method `resolve_feature_path' for #<Array:0x566f4659>
|
|
40
|
-
# # <main> at /home/runner/.rubies/jruby-9.3.15.0/lib/ruby/gems/shared/gems/erb-4.0.4-java/lib/erb/util.rb:9
|
|
41
|
-
# # jruby-9.3 (targets Ruby 2.6 compatibility)
|
|
42
|
-
# - ruby: "jruby-9.3"
|
|
43
|
-
# appraisal: "ruby-2-6"
|
|
44
|
-
# exec_cmd: "rake test"
|
|
45
|
-
# gemfile: "Appraisal.root"
|
|
46
|
-
# rubygems: default
|
|
47
|
-
# bundler: default
|
|
48
|
-
|
|
49
|
-
# jruby-9.4 (targets Ruby 3.1 compatibility)
|
|
50
|
-
- ruby: "jruby-9.4"
|
|
51
|
-
appraisal: "ruby-3-1"
|
|
52
|
-
exec_cmd: "rake test"
|
|
53
|
-
gemfile: "Appraisal.root"
|
|
54
|
-
rubygems: default
|
|
55
|
-
bundler: default
|
|
56
|
-
|
|
57
|
-
steps:
|
|
58
|
-
- name: Checkout
|
|
59
|
-
if: ${{ !env.ACT }}
|
|
60
|
-
uses: actions/checkout@v6
|
|
61
|
-
|
|
62
|
-
- name: Setup Ruby & RubyGems
|
|
63
|
-
if: ${{ !env.ACT }}
|
|
64
|
-
uses: ruby/setup-ruby@v1
|
|
65
|
-
with:
|
|
66
|
-
ruby-version: ${{ matrix.ruby }}
|
|
67
|
-
rubygems: ${{ matrix.rubygems }}
|
|
68
|
-
bundler: ${{ matrix.bundler }}
|
|
69
|
-
bundler-cache: false
|
|
70
|
-
|
|
71
|
-
# Raw `bundle` will use the BUNDLE_GEMFILE set to matrix.gemfile (i.e. Appraisal.root)
|
|
72
|
-
# We need to do this first to get appraisal installed.
|
|
73
|
-
# NOTE: This does not use the primary Gemfile at all.
|
|
74
|
-
- name: Install Root Appraisal
|
|
75
|
-
if: ${{ !env.ACT }}
|
|
76
|
-
run: bundle
|
|
77
|
-
- name: Appraisal for ${{ matrix.appraisal }}
|
|
78
|
-
if: ${{ !env.ACT }}
|
|
79
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle
|
|
80
|
-
- name: Tests for ${{ matrix.ruby }} via ${{ matrix.exec_cmd }}
|
|
81
|
-
if: ${{ !env.ACT }}
|
|
82
|
-
run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }}
|