Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@

"features": {
"ghcr.io/devcontainers/features/docker-in-docker:2": {},
"ghcr.io/rails/devcontainer/features/ruby": {
"version": "4.0.1"
},
"ghcr.io/devcontainers/features/github-cli": {}
},

Expand Down
33 changes: 33 additions & 0 deletions .github/ruby-versions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
[
"4.0.0",
"3.4.8",
"3.4.7",
"3.4.6",
"3.4.5",
"3.4.4",
"3.4.3",
"3.4.2",
"3.4.1",
"3.4.0",
"3.3.10",
"3.3.9",
"3.3.8",
"3.3.7",
"3.3.6",
"3.3.5",
"3.3.4",
"3.3.3",
"3.3.2",
"3.3.1",
"3.3.0",
"3.2.9",
"3.2.8",
"3.2.7",
"3.2.6",
"3.2.5",
"3.2.4",
"3.2.3",
"3.2.2",
"3.2.1",
"3.2.0"
]
43 changes: 11 additions & 32 deletions .github/workflows/publish-new-image-version.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,43 +4,22 @@ name: Build and Publish Images
tags:
- ruby-*.*.*
jobs:
setup:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- uses: actions/checkout@v4
- id: set-matrix
run: echo "matrix=$(cat .github/ruby-versions.json | jq -c '.')" >> $GITHUB_OUTPUT

build:
name: Build Images
needs: setup
strategy:
fail-fast: false
matrix:
RUBY_VERSION:
- 4.0.0
- 3.4.8
- 3.4.7
- 3.4.6
- 3.4.5
- 3.4.4
- 3.4.3
- 3.4.2
- 3.4.1
- 3.4.0
- 3.3.10
- 3.3.9
- 3.3.8
- 3.3.7
- 3.3.6
- 3.3.5
- 3.3.4
- 3.3.3
- 3.3.2
- 3.3.1
- 3.3.0
- 3.2.9
- 3.2.8
- 3.2.7
- 3.2.6
- 3.2.5
- 3.2.4
- 3.2.3
- 3.2.2
- 3.2.1
- 3.2.0
RUBY_VERSION: ${{ fromJSON(needs.setup.outputs.matrix) }}
runs-on: ubuntu-latest
permissions:
contents: read
Expand Down
30 changes: 30 additions & 0 deletions .github/workflows/test-features.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -65,3 +65,33 @@ jobs:
- name: "Run shellcheck"
working-directory: features
run: find . -name "*.sh" -type f -exec shellcheck {} +

ruby-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: .ruby-version
bundler-cache: true

- name: Run tests
run: bundle exec rake test

ci:
runs-on: ubuntu-latest
needs: [test-autogenerated, test-scenarios, shellcheck, ruby-tests]
if: always()
steps:
- name: Check CI status
run: |
if [[ "${{ needs.test-autogenerated.result }}" == "failure" ]] || \
[[ "${{ needs.test-scenarios.result }}" == "failure" ]] || \
[[ "${{ needs.shellcheck.result }}" == "failure" ]] || \
[[ "${{ needs.ruby-tests.result }}" == "failure" ]]; then
echo "One or more jobs failed"
exit 1
fi
echo "All jobs passed successfully"
1 change: 1 addition & 0 deletions .ruby-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
4.0.1
6 changes: 6 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# frozen_string_literal: true

source "https://rubygems.org"

gem "minitest"
gem "rake"
23 changes: 23 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
GEM
remote: https://rubygems.org/
specs:
minitest (6.0.1)
prism (~> 1.5)
prism (1.9.0)
rake (13.3.1)

PLATFORMS
aarch64-linux
ruby

DEPENDENCIES
minitest
rake

CHECKSUMS
minitest (6.0.1) sha256=7854c74f48e2e975969062833adc4013f249a4b212f5e7b9d5c040bf838d54bb
prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85
rake (13.3.1) sha256=8c9e89d09f66a26a01264e7e3480ec0607f0c497a861ef16063604b1b08eb19c

BUNDLED WITH
4.0.3
11 changes: 11 additions & 0 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# frozen_string_literal: true

require "rake/testtask"

Rake::TestTask.new(:test) do |t|
t.libs << "test"
t.pattern = "test/**/*_test.rb"
t.verbose = true
end

task default: :test
Loading