質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Circle CI

Circle CIは、クラウド上に簡単にCI環境を構築できるWebサービスです。GitHubと連携させ、CIしたいリポジトリーを選択しビルド・テストを行います。チャット等を利用して結果を確認することが可能です。

Q&A

解決済

1回答

2095閲覧

Circle CI ビルドでエラー発生

komati88

総合スコア6

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 6

Ruby on Rails 6は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Circle CI

Circle CIは、クラウド上に簡単にCI環境を構築できるWebサービスです。GitHubと連携させ、CIしたいリポジトリーを選択しビルド・テストを行います。チャット等を利用して結果を確認することが可能です。

0グッド

0クリップ

投稿2021/06/18 14:55

編集2021/06/19 05:33

githubにプッシュする際、circleciで自動テストを行おうとしましたが、bundle install ,restoring cache, Installing Node modules で失敗しました

エラー restoring cache

error computing cache key: template: cacheKey:1:30: executing "cacheKey" at <checksum "~/project/yarn.lock">: error calling checksum: open /home/circleci/project/yarn.lock: no such file or directory

エラー  Installing Node modules

#!/bin/bash -eo pipefail if [ ! -f "package.json" ]; then echo echo "---" echo "Unable to find your package.json file. Did you forget to set the app-dir parameter?" echo "---" echo echo "Current directory: $(pwd)" echo echo echo "List directory: " echo ls exit 1 fi case yarn in npm) if [[ "false" == "true" ]]; then npm install else npm ci fi ;; yarn) if [[ "false" == "true" ]]; then yarn install else yarn install --frozen-lockfile fi ;; esac

.circleci/config.yml

version: 2.1 orbs: ruby: circleci/ruby@1.1.2 node: circleci/node@2 # setup commands: setup: steps: - checkout - ruby/install-deps - node/install-packages: pkg-manager: yarn cache-key: "yarn.lock" jobs: build: docker: - image: circleci/ruby:2.7.1-node working_directory: ~/videoapp steps: - setup test: docker: - image: circleci/ruby:2.7.1-node - image: circleci/postgres:11.6-alpine name: "db" environment: POSTGRES_USER: postgres POSTGRES_DB: myapp_test POSTGRES_PASSWORD: "" environment: BUNDLE_JOBS: "4" BUNDLE_RETRY: "3" PGHOST: 127.0.0.1 PGUSER: postgres PGPASSWORD: "" RAILS_ENV: test working_directory: ~/videoapp steps: - setup - run: name: rails db:migrate command: bundle exec rails db:migrate - run: name: Database setup command: bundle exec rails db:schema:load --trace - run: name: Rspec command: bundle exec rspec workflows: version: 2 test_and_deploy: jobs: - build - test: requires: - build

Dockerfile

FROM ruby:2.7.1 RUN apt-get update -qq && apt-get install -y nodejs postgresql-client RUN apt-get update && apt-get install -y curl apt-transport-https wget && \ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \ echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \ apt-get update && apt-get install -y yarn # Node.jsをインストール RUN curl -sL https://deb.nodesource.com/setup_7.x | bash - && \ apt-get install nodejs RUN mkdir /myapp WORKDIR /myapp COPY Gemfile /myapp/Gemfile COPY Gemfile.lock /myapp/Gemfile.lock RUN bundle install COPY . /myapp # Add a script to be executed every time the container starts. COPY entrypoint.sh /usr/bin/ RUN chmod +x /usr/bin/entrypoint.sh ENTRYPOINT ["entrypoint.sh"] EXPOSE 3000 # Start the main process. CMD ["rails", "server", "-b", "0.0.0.0"]

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Your Ruby version is 2.7.3, but your Gemfile specified 2.7.1

と書かれています。

CIで利用しているRubyのImageは - image: circleci/ruby:2.7-node より、2.7系の最新である2.7.3が使われていると思われます。
が、Gemfileでは ruby '2.7.1'のように書かれていないでしょうか?
これらのRubyのバージョンが異なるために発生しているエラーと思われますので、統一すると解決するかと考えています。

例えば、circleci/ruby:2.7.1-node のImageもあるようです。

https://hub.docker.com/layers/circleci/ruby/2.7.1-node/images/sha256-4ded67fd264134cb8ef6526b61d63df4c64bb503b3d82f4bd96b8cd5ea4c841d?context=explore

投稿2021/06/19 02:13

hatsu

総合スコア1809

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

komati88

2021/06/19 05:31

ご回答ありがとうございます。ご回答いただいた方法でビルド時の bundle installのエラーは解消されました。 しかし、新たなエラーが発生しました。 もし解決方法を知っていたら、ご教授していただけると大変助かります。
hatsu

2021/06/19 05:38

あ、もとの質問をガッツリ変更してしまうと、質問と回答が合わなくなってしまいますので、もし新たにエラーが出たら別の質問にしていただくのが望ましかったりします! 軽微なものならば、書き換えではなく追記とかで新たなエラー文を記載いただけると嬉しいです! なんとなく、CIの cache-key: "yarn.lock" が悪さしているかもとは思っています。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問