diff --git a/.circleci/config.yml b/.circleci/config.yml index e7e2f713..d7bd5d8c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -8,14 +8,23 @@ orbs: solidusio_extensions: solidusio/extensions@volatile jobs: - run-specs-with-postgres: - executor: solidusio_extensions/postgres + run-specs: + parameters: + solidus: + type: string + default: master + db: + type: string + default: "postgres" + ruby: + type: string + default: "3.2" + executor: + name: solidusio_extensions/<< parameters.db >> + ruby_version: << parameters.ruby >> steps: - - solidusio_extensions/run-tests - run-specs-with-mysql: - executor: solidusio_extensions/mysql - steps: - - solidusio_extensions/run-tests + - checkout + - solidusio_extensions/run-tests-solidus-<< parameters.solidus >> lint-code: executor: solidusio_extensions/sqlite-memory steps: @@ -24,9 +33,18 @@ jobs: workflows: "Run specs on supported Solidus versions": jobs: - - run-specs-with-postgres - - run-specs-with-mysql - - lint-code + - run-specs: + name: &name "run-specs-solidus-<< matrix.solidus >>-ruby-<< matrix.ruby >>-db-<< matrix.db >>" + matrix: + parameters: { solidus: ["master"], ruby: ["3.2"], db: ["postgres"] } + - run-specs: + name: *name + matrix: + parameters: { solidus: ["current"], ruby: ["3.1"], db: ["mysql"] } + - run-specs: + name: *name + matrix: + parameters: { solidus: ["older"], ruby: ["3.0"], db: ["sqlite"] } "Weekly run specs against master": triggers: @@ -37,5 +55,11 @@ workflows: only: - master jobs: - - run-specs-with-postgres - - run-specs-with-mysql + - run-specs: + name: *name + matrix: + parameters: { solidus: ["master"], ruby: ["3.2"], db: ["postgres"] } + - run-specs: + name: *name + matrix: + parameters: { solidus: ["current"], ruby: ["3.1"], db: ["mysql"] }