環境
ruby 2.6.3
rails 6.0.0.1
circleciでpushをすると、下記のエラーが表示されます。
調べたのですが、似たようなエラーが出てきません。
config.ymlの設定は下記の通りです。
version: 2 jobs: build: docker: #アプリのバージョンを指定 - image: circleci/ruby:2.6.3-node environment: POSTGRES_USER: postgres PGHOST: 127.0.0.1 RAILS_ENV: test DATABASE_HOST: 127.0.0.1 #使ってるデータベースとバージョンを指定 - image: circleci/postgres:9.6 environment: #それぞれ設定 #PGHOST: 127.0.0.1 POSTGRES_USER: postgres POSTGRES_HOST_AUTH_METHOD: trust #POSTGRES_PASSWPRD: ENV['POSTGRES_PASSWORD'] POSTGRES_DB: portfolio_test #自身のアプリ名にする working_directory: ~/Portfolio steps: - checkout #bundle キャッシュをリストアする - restore_cache: keys: - v1-dependencies-{{ checksum "Gemfile.lock" }} - v1-dependencies- # bundle install で依存関係をインストールする - run: name: install dependencies command: | gem install bundler -v 2.1.4 bundle install --jobs=4 --retry=3 --path vendor/bundle # bundle キャッシュを保存する - save_cache: key: v1-dependencies-{{ checksum "Gemfile.lock" }} paths: - ./vendor/bundle - run: name: DBの起動を待つ command: dockerize -wait tcp://127.0.0.1:5432 -timeout 120s - run: bundle exec rake db:create - run: bundle exec rake db:schema:load # rspecを実行する - run: name: rspecを実行 command: bundle exec rspec # rubocopを実行する - run: name: rubocopを実行 command: bundle exec rubocop
gemfileには下記のように記述をし、bundle installをしています。
省略 group :development, :test do gem 'byebug', '11.0.1', platforms: [:mri, :mingw, :x64_mingw] gem 'rspec-rails' gem "factory_bot_rails" gem 'capistrano' gem 'capistrano-bundler' gem 'capistrano-rails' gem 'capistrano-rbenv' gem 'capistrano-postgresql', '~> 6.2' gem 'rubocop', require: false end 省略
【行ったこと】
bundle doctorコマンドでgemfile内にはエラーが何もないことを確認。
アドバイスをいただければと思います。
実行環境は何になってますか?
確かデフォルトで RAILS_ENV=development だったと思います。
僕はそんなハマり方したことがないので的確な回答はできませんが、以前Rails + PostgreSQL + RSpec + Rubocop でCI回した記事を書いてたので共有します。参考にしてください。
https://gitpress.io/@erysk/circleci_config
実行環境はconfig.yml内でテスト環境を指定しています。
上記URL参考にしてみます、アドバイスありがとうございます。
調べてみましたが、 issueが出ていることもあり解決しませんでした。
他の可能性を探ります。
https://github.com/whitequark/parser/issues/282
あなたの回答
tips
プレビュー