Skip to content

Commit

Permalink
ci: add ruby version to vendored libs cache key (backport) (#3029)
Browse files Browse the repository at this point in the history
**What problem is this PR intended to solve?**

In CI, add ruby version to vendored libs cache key. The ruby 2.7 and 3.0
base images are old enough to generate binaries that are not compatible
with later base images, and vice versa. CI is failing with libxml 2.12.0
in particular.

Backport of #3028
  • Loading branch information
flavorjones authored Nov 17, 2023
2 parents 32b2c35 + 0f56450 commit da2d908
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 10 deletions.
10 changes: 5 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ jobs:
if: matrix.sys == 'disable'
with:
path: ports
key: ports-ubuntu-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
key: ports-ubuntu-${{matrix.ruby}}-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
- run: bundle install --local || bundle install
- run: bundle exec rake compile -- --${{matrix.sys}}-system-libraries
- run: bundle exec rake test
Expand Down Expand Up @@ -128,7 +128,7 @@ jobs:
if: matrix.sys == 'disable'
with:
path: ports
key: ports-ubuntu-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
key: ports-ubuntu-${{matrix.ruby}}-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
- run: bundle install --local || bundle install
- run: bundle exec rake compile -- --${{matrix.sys}}-system-libraries
- run: bundle exec rake test:valgrind
Expand Down Expand Up @@ -189,7 +189,7 @@ jobs:
if: matrix.sys == 'disable'
with:
path: ports
key: ports-ubuntu-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
key: ports-ubuntu-${{matrix.ruby}}-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
- run: bundle install --local || bundle install
- run: bundle exec rake compile -- --${{matrix.sys}}-system-libraries
- run: bundle exec rake test
Expand All @@ -214,7 +214,7 @@ jobs:
if: matrix.sys == 'disable'
with:
path: ports
key: ports-ubuntu-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
key: ports-ubuntu-${{matrix.ruby}}-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
- run: bundle install --local || bundle install
- run: bundle exec rake compile -- --${{matrix.sys}}-system-libraries
- run: bundle exec rake test:valgrind
Expand Down Expand Up @@ -365,7 +365,7 @@ jobs:
if: matrix.sys == 'disable'
with:
path: ports
key: ports-ubuntu-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
key: ports-ubuntu-${{matrix.ruby}}-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
- run: bundle install --local || bundle install
- run: bundle exec rake compile -- --${{matrix.sys}}-system-libraries
- run: bundle exec rake test:memcheck
Expand Down
12 changes: 10 additions & 2 deletions .github/workflows/downstream.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,42 +27,50 @@ jobs:
- url: https://github.com/flavorjones/loofah
name: loofah
command: "bundle exec rake test"
ruby: "3.2"
- url: https://github.com/rails/rails-html-sanitizer
name: rails-html-sanitizer
command: "bundle exec rake test"
ruby: "3.2"
- url: https://github.com/rgrove/sanitize
name: sanitize
command: "bundle exec rake test"
ruby: "3.2"
- url: https://github.com/ebeigarts/signer
name: signer
command: "bundle exec rake spec"
ruby: "3.2"
- url: https://github.com/WinRb/Viewpoint
name: viewpoint
command: "bundle exec rspec spec"
ruby: "3.1"
- url: https://github.com/rails/rails
name: xmlmini
command: "cd activesupport && bundle exec rake test TESTOPTS=-n/XmlMini/"
ruby: "3.2"
- url: https://github.com/pythonicrubyist/creek
name: creek
command: "bundle exec rake spec"
ruby: "3.2"
- url: https://github.com/SAML-Toolkits/ruby-saml
name: ruby-saml
command: "bundle exec rake test MT_COMPAT=t"
ruby: "3.2"
# - url: https://github.com/instructure/nokogiri-xmlsec-instructure
# name: nokogiri-xmlsec-instructure
# precommand: "apt install -y libxmlsec1-dev"
# command: "bundle exec rake compile rspec"
runs-on: ubuntu-latest
container:
image: ghcr.io/sparklemotion/nokogiri-test:mri-3.1
image: ghcr.io/sparklemotion/nokogiri-test:mri-${{matrix.ruby}}
steps:
- uses: actions/checkout@v3
with:
submodules: true
- uses: actions/cache@v3
with:
path: ports
key: ports-ubuntu-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
key: ports-ubuntu-${{matrix.ruby}}-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
- if: matrix.precommand
run: ${{matrix.precommand}}
- run: gem install bundler -v ">= 2.3.22" # for "add --path"
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/upstream.yml
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ jobs:
if: matrix.sys == 'disable'
with:
path: ports
key: ports-ubuntu-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
key: ports-ubuntu-head-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
- run: bundle exec rake compile -- --${{matrix.sys}}-system-libraries
- run: bundle exec rake test:valgrind
- run: bundle exec rake test:memcheck
Expand All @@ -164,15 +164,15 @@ jobs:
html5lib-tests:
runs-on: ubuntu-latest
container:
image: ghcr.io/sparklemotion/nokogiri-test:mri-3.1
image: ghcr.io/sparklemotion/nokogiri-test:mri-3.2
steps:
- uses: actions/checkout@v3
with:
submodules: true
- uses: actions/cache@v3
with:
path: ports
key: ports-ubuntu-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
key: ports-ubuntu-3.2-${{hashFiles('dependencies.yml', 'patches/**/*.patch')}}
- name: Update html5lib-tests
run: |
cd test/html5lib-tests
Expand Down

0 comments on commit da2d908

Please sign in to comment.