From 4f5051175d74c1767dcf8708a61805f886e02bc1 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 25 Jul 2025 01:18:27 +0100 Subject: [PATCH 01/10] Update CircleCI orbs, Ruby versions, and add VSCode settings - Upgrade `sonarcloud` to version 3.0 - Upgrade `codecov` to version 5.4 - Update Ruby versions to 3.4.5, 3.3.8, 3.2.9, and 3.1.7 --- .circleci/config.yml | 8 ++++---- .tool-versions | 2 +- .vscode/settings.json | 6 ++++++ 3 files changed, 11 insertions(+), 5 deletions(-) create mode 100644 .vscode/settings.json diff --git a/.circleci/config.yml b/.circleci/config.yml index bc6c34c..d865296 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -5,9 +5,9 @@ version: 2.1 orbs: ruby: circleci/ruby@2.5 node: circleci/node@7.1 - sonarcloud: sonarsource/sonarcloud@2.0 + sonarcloud: sonarsource/sonarcloud@3.0 asdf: rynkowsg/asdf@0.2 - codecov: codecov/codecov@5.2 + codecov: codecov/codecov@5.4 github: circleci/github-cli@2.7 # Pipeline parameters @@ -18,7 +18,7 @@ parameters: default: main default-ruby: type: string - default: "3.3.7" + default: 3.4.5 # Define common YAML anchors x-common-auth: &common-auth @@ -299,7 +299,7 @@ workflows: matrix: parameters: os: ["docker", "macos"] - ruby-version: ["3.3.7", "3.2.3", "3.1.6"] + ruby-version: ["3.4.5", "3.3.8", "3.2.9", "3.1.7"] filters: tags: only: /^\d+\.\d+\.\d+$/ diff --git a/.tool-versions b/.tool-versions index 2ba566b..1855168 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1 +1 @@ -ruby 3.3.7 3.2.3 3.1.6 +ruby 3.4.5 3.3.8 3.2.9 3.1.7 diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..bf5458c --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,6 @@ +{ + "sonarlint.connectedMode.project": { + "connectionId": "remove-bg", + "projectKey": "remove-bg_ruby" + } +} From 164257dda20a71dc0992bdd6912d64d4dc21d133 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 25 Jul 2025 01:30:51 +0100 Subject: [PATCH 02/10] Update Ruby version from 3.3.8 to 3.3.9 in config files - Change in `.circleci/config.yml` - Update in `.tool-versions` --- .circleci/config.yml | 2 +- .tool-versions | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index d865296..5d3375e 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -299,7 +299,7 @@ workflows: matrix: parameters: os: ["docker", "macos"] - ruby-version: ["3.4.5", "3.3.8", "3.2.9", "3.1.7"] + ruby-version: ["3.4.5", "3.3.9", "3.2.9", "3.1.7"] filters: tags: only: /^\d+\.\d+\.\d+$/ diff --git a/.tool-versions b/.tool-versions index 1855168..b395ac1 100644 --- a/.tool-versions +++ b/.tool-versions @@ -1 +1 @@ -ruby 3.4.5 3.3.8 3.2.9 3.1.7 +ruby 3.4.5 3.3.9 3.2.9 3.1.7 From 06e0b731458c1d83b8d6e23d67581f62c87cb817 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 25 Jul 2025 01:42:43 +0100 Subject: [PATCH 03/10] Add Faraday versions 2.10, 2.11, 2.12, 2.13 to Appraisals - Update Appraisals to include Faraday 2.10, 2.11, 2.12, 2.13 - Add corresponding gemfiles for each Faraday version --- Appraisals | 20 ++++++++++++++++++++ gemfiles/faraday_2_10.gemfile | 7 +++++++ gemfiles/faraday_2_11.gemfile | 7 +++++++ gemfiles/faraday_2_12.gemfile | 7 +++++++ gemfiles/faraday_2_13.gemfile | 7 +++++++ 5 files changed, 48 insertions(+) create mode 100644 gemfiles/faraday_2_10.gemfile create mode 100644 gemfiles/faraday_2_11.gemfile create mode 100644 gemfiles/faraday_2_12.gemfile create mode 100644 gemfiles/faraday_2_13.gemfile diff --git a/Appraisals b/Appraisals index 73306af..bb7cef2 100644 --- a/Appraisals +++ b/Appraisals @@ -50,6 +50,26 @@ appraise "faraday-2-9" do gem "faraday", "~> 2.9.0" end +# Faraday 2.10 +appraise "faraday-2-10" do + gem "faraday", "~> 2.10.0" +end + +# Faraday 2.11 +appraise "faraday-2-11" do + gem "faraday", "~> 2.11.0" +end + +# Faraday 2.12 +appraise "faraday-2-12" do + gem "faraday", "~> 2.12.0" +end + +# Faraday 2.13 +appraise "faraday-2-13" do + gem "faraday", "~> 2.13.0" +end + # Latest in Faraday 2.x series appraise "faraday-2-x" do gem "faraday", "~> 2", "< 3" diff --git a/gemfiles/faraday_2_10.gemfile b/gemfiles/faraday_2_10.gemfile new file mode 100644 index 0000000..269bce2 --- /dev/null +++ b/gemfiles/faraday_2_10.gemfile @@ -0,0 +1,7 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "faraday", "~> 2.10.0" + +gemspec path: "../" diff --git a/gemfiles/faraday_2_11.gemfile b/gemfiles/faraday_2_11.gemfile new file mode 100644 index 0000000..863f076 --- /dev/null +++ b/gemfiles/faraday_2_11.gemfile @@ -0,0 +1,7 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "faraday", "~> 2.11.0" + +gemspec path: "../" diff --git a/gemfiles/faraday_2_12.gemfile b/gemfiles/faraday_2_12.gemfile new file mode 100644 index 0000000..1dc2a2c --- /dev/null +++ b/gemfiles/faraday_2_12.gemfile @@ -0,0 +1,7 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "faraday", "~> 2.12.0" + +gemspec path: "../" diff --git a/gemfiles/faraday_2_13.gemfile b/gemfiles/faraday_2_13.gemfile new file mode 100644 index 0000000..f690631 --- /dev/null +++ b/gemfiles/faraday_2_13.gemfile @@ -0,0 +1,7 @@ +# This file was generated by Appraisal + +source "https://rubygems.org" + +gem "faraday", "~> 2.13.0" + +gemspec path: "../" From 50b6eb3828acef325cb892c55cc2bb898ea5a2b4 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 25 Jul 2025 08:51:01 +0100 Subject: [PATCH 04/10] Update CircleCI config and add YAML linting configuration - Update macOS executor Xcode version to 16.4.0 - Add ASDF caching steps for Ruby installations - Switch Docker image in Sonarcloud job from `cimg/openjdk:21.0-node` to `cimg/base:stable` - Add `.yamllint.yml` with YAML linting rules and ignore list --- .circleci/config.yml | 65 ++++++++++++++++++++++++++++++++++++-------- .yamllint.yml | 19 +++++++++++++ 2 files changed, 73 insertions(+), 11 deletions(-) create mode 100644 .yamllint.yml diff --git a/.circleci/config.yml b/.circleci/config.yml index 5d3375e..4edec6a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -35,7 +35,7 @@ executors: macos: # macOS executor running Xcode macos: # https://circleci.com/developer/machine/image/xcode - xcode: 16.2.0 + xcode: 16.4.0 jobs: # Lint Job @@ -54,17 +54,32 @@ jobs: imagemagick libvips42 libffi-dev libreadline-dev \ libyaml-dev openssl libtool - asdf/install + - run: + name: Set default Ruby to << pipeline.parameters.default-ruby >> + command: echo "ruby << pipeline.parameters.default-ruby >>" > ~/.tool-versions + # Restore ASDF cache + - restore_cache: + name: Restore ASDF cache + keys: + - asdf-{{ checksum ".tool-versions" }} # Install requested Ruby version - run: name: Install Ruby << pipeline.parameters.default-ruby >> command: | asdf plugin add ruby - asdf install ruby << pipeline.parameters.default-ruby >> - echo "ruby << pipeline.parameters.default-ruby >>" > ~/.tool-versions + ASDF_RUBY_BUILD_VERSION=master asdf install ruby << pipeline.parameters.default-ruby >> gem install --user-install executable-hooks + # Save ASDF cache + - save_cache: + name: Save ASDF cache + key: asdf-{{ checksum ".tool-versions" }} + paths: + - ~/.asdf/installs + - ~/.asdf/plugins + - ~/.asdf/shims # Install dependencies using bundler - ruby/install-deps: - key: gems-v{{ .Environment.CACHE_VERSION }} + key: gems-v{{ .Environment.CACHE_VERSION }}-{{ checksum ".tool-versions" }} # Run Rubocop - run: name: Run Rubocop @@ -113,19 +128,32 @@ jobs: name: Install ImageMagick, libvips and libffi command: | brew install openssl@3 imagemagick vips asdf libffi + - run: echo "ruby << parameters.ruby-version >>" > ~/.tool-versions + # Restore ASDF cache + - restore_cache: + name: Restore ASDF cache + keys: + - asdf-{{ checksum ".tool-versions" }} # Install requested Ruby version - run: name: Install Ruby << parameters.ruby-version >> command: | asdf plugin add ruby - asdf install ruby << parameters.ruby-version >> - echo "ruby << parameters.ruby-version >>" > ~/.tool-versions + ASDF_RUBY_BUILD_VERSION=master asdf install ruby << parameters.ruby-version >> gem install --user-install executable-hooks + # Save ASDF cache + - save_cache: + name: Save ASDF cache + key: asdf-{{ checksum ".tool-versions" }} + paths: + - ~/.asdf/installs + - ~/.asdf/plugins + - ~/.asdf/shims # Check out code - checkout # Install dependencies using bundler - ruby/install-deps: - key: gems-v{{ .Environment.CACHE_VERSION }} + key: gems-v{{ .Environment.CACHE_VERSION }}-{{ checksum ".tool-versions" }} # Run RSpec tests - run: name: Run tests @@ -162,7 +190,7 @@ jobs: # Sonarcloud Job sonarcloud: docker: - - image: cimg/openjdk:21.0-node + - image: cimg/base:stable <<: *common-auth resource_class: small steps: @@ -205,21 +233,36 @@ jobs: libyaml-dev openssl libtool libz-dev libjemalloc-dev \ libgmp-dev build-essential ruby-dev libssl-dev zlib1g-dev - asdf/install + - run: + name: Set default Ruby to << pipeline.parameters.default-ruby >> + command: echo "ruby << pipeline.parameters.default-ruby >>" > ~/.tool-versions + # Restore ASDF cache + - restore_cache: + name: Restore ASDF cache + keys: + - asdf-{{ checksum ".tool-versions" }} # Install requested Ruby version - run: name: Install Ruby << pipeline.parameters.default-ruby >> command: | asdf plugin add ruby - asdf install ruby << pipeline.parameters.default-ruby >> - echo "ruby << pipeline.parameters.default-ruby >>" > ~/.tool-versions + ASDF_RUBY_BUILD_VERSION=master asdf install ruby << pipeline.parameters.default-ruby >> gem install --user-install executable-hooks + # Save ASDF cache + - save_cache: + name: Save ASDF cache + key: asdf-{{ checksum ".tool-versions" }} + paths: + - ~/.asdf/installs + - ~/.asdf/plugins + - ~/.asdf/shims - checkout - run: name: Check out main branch command: git checkout --force "${GIT_MAIN_BRANCH}" # Install dependencies using bundler - ruby/install-deps: - key: gems-v{{ .Environment.CACHE_VERSION }} + key: gems-v{{ .Environment.CACHE_VERSION }}-{{ checksum ".tool-versions" }} - run: name: Build and push gem command: | diff --git a/.yamllint.yml b/.yamllint.yml new file mode 100644 index 0000000..7c87527 --- /dev/null +++ b/.yamllint.yml @@ -0,0 +1,19 @@ +--- + +extends: default + +yaml-files: + - '*.yaml' + - '*.yml' + +rules: + line-length: + max: 250 + level: warning + +ignore: | + rspec + resources + gemfiles + examples + .git From 81ba074a9da0a1d2fb5d6f67afec8ca8aabd1466 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 25 Jul 2025 08:54:46 +0100 Subject: [PATCH 05/10] Update CircleCI cache keys for parameterized environments --- .circleci/config.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 4edec6a..c11be3a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -61,7 +61,7 @@ jobs: - restore_cache: name: Restore ASDF cache keys: - - asdf-{{ checksum ".tool-versions" }} + - asdf-docker-{{ checksum ".tool-versions" }} # Install requested Ruby version - run: name: Install Ruby << pipeline.parameters.default-ruby >> @@ -72,7 +72,7 @@ jobs: # Save ASDF cache - save_cache: name: Save ASDF cache - key: asdf-{{ checksum ".tool-versions" }} + key: asdf-docker-{{ checksum ".tool-versions" }} paths: - ~/.asdf/installs - ~/.asdf/plugins @@ -133,7 +133,7 @@ jobs: - restore_cache: name: Restore ASDF cache keys: - - asdf-{{ checksum ".tool-versions" }} + - asdf-{{ parameters.os }}-{{ checksum ".tool-versions" }} # Install requested Ruby version - run: name: Install Ruby << parameters.ruby-version >> @@ -144,7 +144,7 @@ jobs: # Save ASDF cache - save_cache: name: Save ASDF cache - key: asdf-{{ checksum ".tool-versions" }} + key: asdf-{{ parameters.os }}-{{ checksum ".tool-versions" }} paths: - ~/.asdf/installs - ~/.asdf/plugins @@ -240,7 +240,7 @@ jobs: - restore_cache: name: Restore ASDF cache keys: - - asdf-{{ checksum ".tool-versions" }} + - asdf-docker-{{ checksum ".tool-versions" }} # Install requested Ruby version - run: name: Install Ruby << pipeline.parameters.default-ruby >> @@ -251,7 +251,7 @@ jobs: # Save ASDF cache - save_cache: name: Save ASDF cache - key: asdf-{{ checksum ".tool-versions" }} + key: asdf-docker-{{ checksum ".tool-versions" }} paths: - ~/.asdf/installs - ~/.asdf/plugins From dfea7092a80c12501cefafd42a9ac0bcb41d3794 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 25 Jul 2025 08:57:02 +0100 Subject: [PATCH 06/10] Update CircleCI config to use user home .tool-versions path --- .circleci/config.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index c11be3a..2b4c75f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -61,7 +61,7 @@ jobs: - restore_cache: name: Restore ASDF cache keys: - - asdf-docker-{{ checksum ".tool-versions" }} + - asdf-docker-{{ checksum "~/.tool-versions" }} # Install requested Ruby version - run: name: Install Ruby << pipeline.parameters.default-ruby >> @@ -72,14 +72,14 @@ jobs: # Save ASDF cache - save_cache: name: Save ASDF cache - key: asdf-docker-{{ checksum ".tool-versions" }} + key: asdf-docker-{{ checksum "~/.tool-versions" }} paths: - ~/.asdf/installs - ~/.asdf/plugins - ~/.asdf/shims # Install dependencies using bundler - ruby/install-deps: - key: gems-v{{ .Environment.CACHE_VERSION }}-{{ checksum ".tool-versions" }} + key: gems-v{{ .Environment.CACHE_VERSION }}-{{ checksum "~/.tool-versions" }} # Run Rubocop - run: name: Run Rubocop @@ -133,7 +133,7 @@ jobs: - restore_cache: name: Restore ASDF cache keys: - - asdf-{{ parameters.os }}-{{ checksum ".tool-versions" }} + - asdf-{{ parameters.os }}-{{ checksum "~/.tool-versions" }} # Install requested Ruby version - run: name: Install Ruby << parameters.ruby-version >> @@ -144,7 +144,7 @@ jobs: # Save ASDF cache - save_cache: name: Save ASDF cache - key: asdf-{{ parameters.os }}-{{ checksum ".tool-versions" }} + key: asdf-{{ parameters.os }}-{{ checksum "~/.tool-versions" }} paths: - ~/.asdf/installs - ~/.asdf/plugins @@ -153,7 +153,7 @@ jobs: - checkout # Install dependencies using bundler - ruby/install-deps: - key: gems-v{{ .Environment.CACHE_VERSION }}-{{ checksum ".tool-versions" }} + key: gems-v{{ .Environment.CACHE_VERSION }}-{{ checksum "~/.tool-versions" }} # Run RSpec tests - run: name: Run tests @@ -240,7 +240,7 @@ jobs: - restore_cache: name: Restore ASDF cache keys: - - asdf-docker-{{ checksum ".tool-versions" }} + - asdf-docker-{{ checksum "~/.tool-versions" }} # Install requested Ruby version - run: name: Install Ruby << pipeline.parameters.default-ruby >> @@ -251,7 +251,7 @@ jobs: # Save ASDF cache - save_cache: name: Save ASDF cache - key: asdf-docker-{{ checksum ".tool-versions" }} + key: asdf-docker-{{ checksum "~/.tool-versions" }} paths: - ~/.asdf/installs - ~/.asdf/plugins @@ -262,7 +262,7 @@ jobs: command: git checkout --force "${GIT_MAIN_BRANCH}" # Install dependencies using bundler - ruby/install-deps: - key: gems-v{{ .Environment.CACHE_VERSION }}-{{ checksum ".tool-versions" }} + key: gems-v{{ .Environment.CACHE_VERSION }}-{{ checksum "~/.tool-versions" }} - run: name: Build and push gem command: | From 9089c43de8785ff63e2baf2402931af9e84829d0 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 25 Jul 2025 09:01:41 +0100 Subject: [PATCH 07/10] Modify `.circleci/config.yml` to update ASDF cache key parameters --- .circleci/config.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 2b4c75f..fe8f1e8 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -133,7 +133,7 @@ jobs: - restore_cache: name: Restore ASDF cache keys: - - asdf-{{ parameters.os }}-{{ checksum "~/.tool-versions" }} + - asdf-{{ pipeline.parameters.os }}-{{ checksum "~/.tool-versions" }} # Install requested Ruby version - run: name: Install Ruby << parameters.ruby-version >> @@ -144,7 +144,7 @@ jobs: # Save ASDF cache - save_cache: name: Save ASDF cache - key: asdf-{{ parameters.os }}-{{ checksum "~/.tool-versions" }} + key: asdf-{{ pipeline.parameters.os }}-{{ checksum "~/.tool-versions" }} paths: - ~/.asdf/installs - ~/.asdf/plugins From 2a4348f56e2ae97840a7231d30ec0d747d74191d Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 25 Jul 2025 09:16:10 +0100 Subject: [PATCH 08/10] Update CircleCI configuration for docker image and parameter syntax --- .circleci/config.yml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index fe8f1e8..33deef1 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -30,7 +30,7 @@ x-common-auth: &common-auth executors: docker: # Docker using the Base Convenience Image docker: - - image: cimg/base:stable + - image: cimg/base:current <<: *common-auth macos: # macOS executor running Xcode macos: @@ -128,12 +128,14 @@ jobs: name: Install ImageMagick, libvips and libffi command: | brew install openssl@3 imagemagick vips asdf libffi - - run: echo "ruby << parameters.ruby-version >>" > ~/.tool-versions + - run: + name: Install Ruby << parameters.ruby-version >> + command: echo "ruby << parameters.ruby-version >>" > ~/.tool-versions # Restore ASDF cache - restore_cache: name: Restore ASDF cache keys: - - asdf-{{ pipeline.parameters.os }}-{{ checksum "~/.tool-versions" }} + - asdf-<< parameters.os >>-{{ checksum "~/.tool-versions" }} # Install requested Ruby version - run: name: Install Ruby << parameters.ruby-version >> @@ -144,7 +146,7 @@ jobs: # Save ASDF cache - save_cache: name: Save ASDF cache - key: asdf-{{ pipeline.parameters.os }}-{{ checksum "~/.tool-versions" }} + key: asdf-<< parameters.os >>-{{ checksum "~/.tool-versions" }} paths: - ~/.asdf/installs - ~/.asdf/plugins @@ -190,7 +192,7 @@ jobs: # Sonarcloud Job sonarcloud: docker: - - image: cimg/base:stable + - image: cimg/base:current <<: *common-auth resource_class: small steps: @@ -214,7 +216,7 @@ jobs: # Release Job release: docker: - - image: cimg/base:stable + - image: cimg/base:current <<: *common-auth resource_class: medium+ environment: From f85f55faa99b29a6381189c97b29ffc93f8d6e0b Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 25 Jul 2025 09:26:39 +0100 Subject: [PATCH 09/10] Remove test requirement from CircleCI deploy workflow in config.yml --- .circleci/config.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 33deef1..180b8ed 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -366,7 +366,6 @@ workflows: - SonarCloud requires: - lint - - test filters: tags: only: /^\d+\.\d+\.\d+$/ From 135a5cf9bbb7e15634d0a5d2040ad4a35981edc6 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 25 Jul 2025 09:31:30 +0100 Subject: [PATCH 10/10] Update Ruby version handling in CircleCI config for cache keys --- .circleci/config.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 180b8ed..a998cfd 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -56,12 +56,12 @@ jobs: - asdf/install - run: name: Set default Ruby to << pipeline.parameters.default-ruby >> - command: echo "ruby << pipeline.parameters.default-ruby >>" > ~/.tool-versions + command: echo "ruby << pipeline.parameters.default-ruby >>" > ~/.tool-versions # Restore ASDF cache - restore_cache: name: Restore ASDF cache keys: - - asdf-docker-{{ checksum "~/.tool-versions" }} + - asdf-docker-<< pipeline.parameters.default-ruby >> # Install requested Ruby version - run: name: Install Ruby << pipeline.parameters.default-ruby >> @@ -72,7 +72,7 @@ jobs: # Save ASDF cache - save_cache: name: Save ASDF cache - key: asdf-docker-{{ checksum "~/.tool-versions" }} + key: asdf-docker-<< pipeline.parameters.default-ruby >> paths: - ~/.asdf/installs - ~/.asdf/plugins @@ -135,7 +135,7 @@ jobs: - restore_cache: name: Restore ASDF cache keys: - - asdf-<< parameters.os >>-{{ checksum "~/.tool-versions" }} + - asdf-<< parameters.os >>-<< parameters.ruby-version >> # Install requested Ruby version - run: name: Install Ruby << parameters.ruby-version >> @@ -146,7 +146,7 @@ jobs: # Save ASDF cache - save_cache: name: Save ASDF cache - key: asdf-<< parameters.os >>-{{ checksum "~/.tool-versions" }} + key: asdf-<< parameters.os >>-<< parameters.ruby-version >> paths: - ~/.asdf/installs - ~/.asdf/plugins @@ -237,12 +237,12 @@ jobs: - asdf/install - run: name: Set default Ruby to << pipeline.parameters.default-ruby >> - command: echo "ruby << pipeline.parameters.default-ruby >>" > ~/.tool-versions + command: echo "ruby << pipeline.parameters.default-ruby >>" > ~/.tool-versions # Restore ASDF cache - restore_cache: name: Restore ASDF cache keys: - - asdf-docker-{{ checksum "~/.tool-versions" }} + - asdf-docker-<< pipeline.parameters.default-ruby >> # Install requested Ruby version - run: name: Install Ruby << pipeline.parameters.default-ruby >> @@ -253,7 +253,7 @@ jobs: # Save ASDF cache - save_cache: name: Save ASDF cache - key: asdf-docker-{{ checksum "~/.tool-versions" }} + key: asdf-docker-<< pipeline.parameters.default-ruby >> paths: - ~/.asdf/installs - ~/.asdf/plugins