# Ruby CircleCI 2.0 configuration file # # Check https://circleci.com/docs/2.0/language-ruby/ for more details # version: 2 jobs: build: docker: # specify the version you desire here - image: circleci/ruby:2.6.2-node-browsers-legacy environment: TEST_DRB: false - image: memcached:latest working_directory: ~/repo steps: - checkout - restore_cache: keys: - v1-dependencies-{{ checksum "Gemfile" }} - run: name: install dependencies command: | bundle install --jobs=4 --retry=3 --path vendor/bundle - save_cache: paths: - ./vendor/bundle key: v1-dependencies-{{ checksum "Gemfile" }} - run: name: install dockerize command: wget https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz && sudo tar -C /usr/local/bin -xzvf dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz && rm dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz environment: DOCKERIZE_VERSION: v0.3.0 - run: name: Wait for the memcached command: dockerize -wait tcp://localhost:11211 -timeout 1m - run: name: RSpecs command: | export PATH=".:$PATH" bundle exec rspec --version bundle exec exe/sym --version # flush memcached printf "flush_all\r\nquit\r\n" | timeout -k 2 -s HUP 10 nc -G 4 127.0.0.1 11211 || true timeout -k 2 -s HUP 30 bundle exec rspec --order random --backtrace - run: name: Rubocop command: | bundle exec rubocop --version bundle exec rubocop