solidusio-contrib/solidus_social

View on GitHub
.circleci/config.yml

Summary

Maintainability
Test Coverage
version: 2.1

orbs:
  # Always take the latest version of the orb, this allows us to
  # run specs against Solidus supported versions only without the need
  # to change this configuration every time a Solidus version is released
  # or goes EOL.
  solidusio_extensions: solidusio/extensions@volatile

jobs:
  run-specs:
    parameters:
      solidus:
        type: string
        default: main
      db:
        type: string
        default: "postgres"
      ruby:
        type: string
        default: "3.2"
    executor:
      name: solidusio_extensions/<< parameters.db >>
      ruby_version: << parameters.ruby >>
    steps:
      - checkout
      - solidusio_extensions/run-tests-solidus-<< parameters.solidus >>

workflows:
  "Run specs on supported Solidus versions":
    jobs:
      - run-specs:
          name: &name "run-specs-solidus-<< matrix.solidus >>-ruby-<< matrix.ruby >>-db-<< matrix.db >>"
          matrix:
            parameters: { solidus: ["main"], 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 main":
    triggers:
      - schedule:
          cron: "0 0 * * 4" # every Thursday
          filters:
            branches:
              only:
                - main
    jobs:
      - run-specs:
          name: *name
          matrix:
            parameters: { solidus: ["main"], ruby: ["3.2"], db: ["postgres"] }
      - run-specs:
          name: *name
          matrix:
            parameters: { solidus: ["current"], ruby: ["3.1"], db: ["mysql"] }