1
0
Fork 0
mirror of https://github.com/pry/pry.git synced 2022-11-09 12:35:05 -05:00
pry--pry/.circleci/config.yml

168 lines
3.8 KiB
YAML
Raw Normal View History

version: 2
references:
repo_restore_cache: &repo_restore_cache
restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
repo_save_cache: &repo_save_cache
save_cache:
key: repo-{{ .Environment.CIRCLE_SHA1 }}-{{ epoch }}
paths:
- ~/pry
bundle_install: &bundle_install
run:
name: Install Bundler dependencies
command: bundle install --path ~/pry/vendor/bundle --jobs 15
unit: &unit
run:
name: Run unit tests
command: bundle exec rake
install_alpine_nano: &install_alpine_nano
run:
name: Install Nano text editor on Alpine Linux
command: apk add nano
install_ubuntu_nano: &install_ubuntu_nano
run:
name: Install Nano text editor on Ubuntu
command: sudo apt-get install nano
jobs:
rubocop_lint:
docker:
- image: circleci/ruby:2.5
working_directory: ~/pry
steps:
- checkout
- <<: *repo_save_cache
- <<: *bundle_install
- run:
name: Run RuboCop linting
command: bundle exec rubocop --parallel
yard_lint:
docker:
- image: circleci/ruby:2.5
working_directory: ~/pry
steps:
- checkout
- <<: *repo_save_cache
- <<: *bundle_install
- run:
name: Run YARD linting
command: bundle exec yardoc --fail-on-warning --no-progress
"ruby-1.9":
docker:
- image: kyrylo/ruby-1.9.3p551
working_directory: /home/circleci/pry
steps:
- <<: *repo_restore_cache
- <<: *bundle_install
- <<: *install_alpine_nano
- <<: *unit
"ruby-2.0":
docker:
- image: kyrylo/ruby-2.0.0p648
working_directory: /home/circleci/pry
steps:
- <<: *repo_restore_cache
- <<: *bundle_install
- <<: *install_alpine_nano
- <<: *unit
"ruby-2.1":
docker:
- image: circleci/ruby:2.1
working_directory: ~/pry
steps:
- <<: *repo_restore_cache
- <<: *bundle_install
- <<: *install_ubuntu_nano
- <<: *unit
"ruby-2.2":
docker:
- image: circleci/ruby:2.2
working_directory: ~/pry
steps:
- <<: *repo_restore_cache
- <<: *bundle_install
- <<: *install_ubuntu_nano
- <<: *unit
"ruby-2.3":
docker:
- image: circleci/ruby:2.3
working_directory: ~/pry
steps:
- <<: *repo_restore_cache
- <<: *bundle_install
- <<: *install_ubuntu_nano
- <<: *unit
"ruby-2.4":
docker:
- image: circleci/ruby:2.4
working_directory: ~/pry
steps:
- <<: *repo_restore_cache
- <<: *bundle_install
- <<: *install_ubuntu_nano
- <<: *unit
"ruby-2.5":
docker:
- image: circleci/ruby:2.5
working_directory: ~/pry
steps:
- <<: *repo_restore_cache
- <<: *bundle_install
- <<: *install_ubuntu_nano
- <<: *unit
"jruby-9.1-jdk":
docker:
- image: circleci/jruby:9.1-jdk
working_directory: ~/pry
steps:
- <<: *repo_restore_cache
- <<: *bundle_install
- <<: *install_ubuntu_nano
- <<: *unit
workflows:
version: 2
build:
jobs:
- rubocop_lint
- yard_lint
- "ruby-1.9":
requires:
- rubocop_lint
- yard_lint
- "ruby-2.0":
requires:
- rubocop_lint
- yard_lint
- "ruby-2.1":
requires:
- rubocop_lint
- yard_lint
- "ruby-2.2":
requires:
- rubocop_lint
- yard_lint
- "ruby-2.3":
requires:
- rubocop_lint
- yard_lint
- "ruby-2.4":
requires:
- rubocop_lint
- yard_lint
- "ruby-2.5":
requires:
- rubocop_lint
- yard_lint
- "jruby-9.1-jdk":
requires:
- rubocop_lint
- yard_lint