From 96a2fccd19431c2afc3a82da9bf53728af0304e5 Mon Sep 17 00:00:00 2001 From: Olle Jonsson Date: Mon, 23 Sep 2024 12:02:27 +0200 Subject: [PATCH 1/6] CI: Trust ruby/setup-ruby to install gems --- .github/workflows/ci.yml | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b5b5015..4db6b62 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,22 +14,19 @@ env: jobs: linting: runs-on: ubuntu-latest - + env: + BUNDLE_WITHOUT: 'development test' + BUNDLE_WITH: 'lint' steps: - - uses: actions/checkout@v3 - + - uses: actions/checkout@v4 - name: Set up Ruby 2.6 uses: ruby/setup-ruby@v1 with: ruby-version: 2.6 + bundler-cache: true # 'bundle install' and cache gems - name: Rubocop - run: | - gem install bundler - bundle config set without 'development test' - bundle config set with 'lint' - bundle install - bundle exec rubocop --format progress + run: bundle exec rubocop --format progress - name: Yard-Junk run: | @@ -44,13 +41,12 @@ jobs: ruby: ['2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2'] steps: - - uses: actions/checkout@v3 + - name: Install system dependencies + run: sudo apt install libcurl4-openssl-dev + - uses: actions/checkout@v4 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} - - name: Install system dependencies - run: sudo apt install libcurl4-openssl-dev - - name: Install Ruby dependencies - run: bundle install --jobs 4 --retry 3 + bundler-cache: true # 'bundle install' and then cache gems - name: Test run: bundle exec rake From 2b0f77c6cf8c3993af9be367885deacffbadb8fd Mon Sep 17 00:00:00 2001 From: Olle Jonsson Date: Mon, 23 Sep 2024 12:05:28 +0200 Subject: [PATCH 2/6] CI: use yard-junk supported by our Ruby Deal with "yard-junk now requires Ruby version >= 2.7.0. The current ruby version is 2.6.10.210." --- .github/workflows/ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4db6b62..2344a12 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,9 +28,10 @@ jobs: - name: Rubocop run: bundle exec rubocop --format progress + # Deal with "yard-junk now requires Ruby version >= 2.7.0. The current ruby version is 2.6.10.210." - name: Yard-Junk run: | - gem install yard-junk --no-document + gem install yard-junk -v 0.0.9 --no-document yard-junk --path lib build: From f986ab1377b0c5c98d790790d077e6615ebec3c4 Mon Sep 17 00:00:00 2001 From: Olle Jonsson Date: Mon, 23 Sep 2024 12:07:12 +0200 Subject: [PATCH 3/6] CI: Install ostruct --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2344a12..1730350 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -31,6 +31,7 @@ jobs: # Deal with "yard-junk now requires Ruby version >= 2.7.0. The current ruby version is 2.6.10.210." - name: Yard-Junk run: | + gem install ostruct gem install yard-junk -v 0.0.9 --no-document yard-junk --path lib From f26b0797c11d64be0001e10709d7ac5c3839a517 Mon Sep 17 00:00:00 2001 From: Olle Jonsson Date: Mon, 23 Sep 2024 12:11:44 +0200 Subject: [PATCH 4/6] CI: Add RUBYOPT -r ostruct for linting --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1730350..d9c3e60 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -33,7 +33,7 @@ jobs: run: | gem install ostruct gem install yard-junk -v 0.0.9 --no-document - yard-junk --path lib + RUBYOPT='-r ostruct' yard-junk --path lib build: needs: [linting] From fc81f7e6f5adbae8caa5354a19cac4e9a0cd783f Mon Sep 17 00:00:00 2001 From: Olle Jonsson Date: Mon, 23 Sep 2024 12:14:18 +0200 Subject: [PATCH 5/6] CI: apt-get update first --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d9c3e60..cf53d02 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -44,7 +44,7 @@ jobs: steps: - name: Install system dependencies - run: sudo apt install libcurl4-openssl-dev + run: sudo apt-get update && sudo apt install libcurl4-openssl-dev - uses: actions/checkout@v4 - uses: ruby/setup-ruby@v1 with: From 60ca92f2a78318244b42b5d342f6fb0a1f5324db Mon Sep 17 00:00:00 2001 From: Olle Jonsson Date: Mon, 23 Sep 2024 12:19:27 +0200 Subject: [PATCH 6/6] CI: Keep publish.yml up to date --- .github/workflows/publish.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 1d82021..a720e9f 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -10,12 +10,12 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Set up Ruby 2.6 uses: ruby/setup-ruby@v1 with: - ruby-version: 2.6.x + ruby-version: 2.6 - name: Publish to RubyGems run: |