.circleci/config.yml in procon_bypass_man-0.1.18 vs .circleci/config.yml in procon_bypass_man-0.1.19

- old
+ new

@@ -13,37 +13,111 @@ environment: BUNDLE_PATH: vendor/bundle BUNDLE_JOBS: 4 working_directory: ~/app +commands: &commands + bundle_install: + parameters: + ruby-version: + type: string + steps: + - checkout + - restore_cache: + keys: + - gem-cache-v1-<< parameters.ruby-version >>-{{ arch }}-{{ .Branch }}-{{ checksum "Gemfile.lock" }} + - gem-cache-v1-<< parameters.ruby-version >>-{{ arch }}-{{ .Branch }} + - gem-cache-v1 + - run: gem i bundler && bundle install --path vendor/bundle --jobs 100 && bundle clean + - save_cache: + key: gem-cache-v1-<< parameters.ruby-version >>-{{ arch }}-{{ .Branch }}-{{ checksum "Gemfile.lock" }} + paths: + - vendor/bundle + jobs: + bundle_install: + parameters: + ruby-version: + type: string + executor: + name: ruby + tag: << parameters.ruby-version >> + steps: + - bundle_install: + ruby-version: << parameters.ruby-version >> + lint: + parameters: + ruby-version: + type: string + executor: + name: ruby + tag: << parameters.ruby-version >> + steps: + - bundle_install: + ruby-version: << parameters.ruby-version >> + - run: bundle exec rubocop -P + type_check: + parameters: + ruby-version: + type: string + executor: + name: ruby + tag: << parameters.ruby-version >> + steps: + - bundle_install: + ruby-version: << parameters.ruby-version >> + - run: bundle exec steep check rspec: parameters: - version: + ruby-version: type: string executor: name: ruby - tag: << parameters.version >> + tag: << parameters.ruby-version >> steps: - - checkout - - run: ruby --version - - run: bundle --version - - run: gem --version - - run: gem install bundler - - run: bundle install --jobs 4 - - run: bundle exec rubocop + - bundle_install: + ruby-version: << parameters.ruby-version >> - run: bundle exec rspec - - run: bundle exec steep check build_jobs: &build_jobs + - bundle_install: + matrix: + parameters: + ruby-version: + - "2.7" + - "3.0.1" + - "3.0.2" + - "3.1.0" + - lint: + matrix: + parameters: + ruby-version: + - "2.7" + - "3.0.1" + - "3.0.2" + - "3.1.0" + requires: + - bundle_install + - type_check: + matrix: + parameters: + ruby-version: + - "2.7" + # - "3.0.1" # たまにSEGVするので + - "3.0.2" + - "3.1.0" + requires: + - bundle_install - rspec: matrix: parameters: - version: + ruby-version: - "2.7" - "3.0.1" - "3.0.2" - "3.1.0" + requires: + - bundle_install workflows: version: 2 build: jobs: *build_jobs