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

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

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

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

Circle CI

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

受付中

rails rakeコマンド実行時のエラー libicudata.so.63: cannot open shared object file

k.nakazono
k.nakazono

総合スコア4

Ruby

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

Circle CI

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

0回答

-1評価

0クリップ

137閲覧

投稿2022/05/19 06:20

編集2022/05/19 06:55

ruby2.7.2 -> 2.7.6のバージョンアップに伴い、CircleCIの実行環境も次世代のimageを使用するようにしました。
すると Database setup のrunコマンドでエラーが発生してしまい。どのように調査・解決すればよいか八方塞がりになり投稿させて頂きました。

原因の切り分けや、どのように対応すすめるのがよいかヒントを頂けると大変助かります。

下記はCircleCIのconfig.ymlの中身と修正内容です。docker image を circleci/ruby:2.7.2-node-browsers -> cimg/ruby:2.7.6-browsers に変えています。

circleci/config.yml

# Ruby CircleCI 2.0 configuration file # # Check https://circleci.com/docs/2.0/language-ruby/ for more details # version: 2 jobs: build: docker: # - image: circleci/ruby:2.7.2-node-browsers <- この部分を修正 - image: cimg/ruby:2.7.6-browsers environment: PGHOST: localhost PGUSER: postgres RAILS_ENV: test TZ: /usr/share/zoneinfo/Asia/Tokyo PARALLEL_TESTS_CONCURRENCY: 2 - image: redis:3.2.11 - image: postgres:10.4 environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: "" POSTGRES_DB: db_test BUNDLER_VERSION: 2.3.11 parallelism: 2 working_directory: ~/repo steps: - checkout # Download and cache dependencies - restore_cache: keys: - v1-dependencies-{{ checksum "Gemfile.lock" }} # fallback to using the latest cache if no exact match is found - v1-dependencies- - bootsnap-cache-{{ .Branch }}-{{ .Revision }} - bootsnap-cache-{{ .Branch }} - bootsnap-cache - run: name: setup bundler command: | gem update --system gem install bundler -v 2.3.11 - run: name: install dependencies command: | bundle install --jobs=4 --retry=3 --path vendor/bundle - save_cache: paths: - ./vendor/bundle key: v1-dependencies-{{ checksum "Gemfile.lock" }} - save_cache: key: bootsnap-cache-{{ .Branch }}-{{ .Revision }} paths: - tmp/cache/bootsnap-load-path-cache - tmp/cache/bootsnap-compile-cache - save_cache: key: bootsnap-cache-{{ .Branch }} paths: - tmp/cache/bootsnap-load-path-cache - tmp/cache/bootsnap-compile-cache - save_cache: key: bootsnap-cache paths: - tmp/cache/bootsnap-load-path-cache - tmp/cache/bootsnap-compile-cache # Database setup - run: name: Database setup command: | bundle exec rake db:migrate RAILS_ENV=test bundle exec rake parallel:create[$PARALLEL_TESTS_CONCURRENCY] bundle exec rake parallel:migrate[$PARALLEL_TESTS_CONCURRENCY] # run tests! - run: name: Run rspec in parallel command: | mkdir /tmp/test-results bundle exec parallel_rspec -n $PARALLEL_TESTS_CONCURRENCY $(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=timings) # collect reports - store_test_results: path: /tmp/test-results - store_artifacts: path: /tmp/test-results destination: test-results

CircleCIで出力されるエラーです

#!/bin/bash -eo pipefail bundle exec rake db:migrate RAILS_ENV=test bundle exec rake parallel:create[$PARALLEL_TESTS_CONCURRENCY] bundle exec rake parallel:migrate[$PARALLEL_TESTS_CONCURRENCY] rake aborted! LoadError: libicudata.so.63: cannot open shared object file: No such file or directory - /home/circleci/repo/vendor/bundle/ruby/2.7.0/gems/charlock_holmes-0.7.7/lib/charlock_holmes/charlock_holmes.so /home/circleci/repo/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.11.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require' /home/circleci/repo/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.11.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require' /home/circleci/repo/vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:291:in `block in require' /home/circleci/repo/vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:257:in `load_dependency' /home/circleci/repo/vendor/bundle/ruby/2.7.0/gems/activesupport-5.2.2/lib/active_support/dependencies.rb:291:in `require' /home/circleci/repo/vendor/bundle/ruby/2.7.0/gems/charlock_holmes-0.7.7/lib/charlock_holmes.rb:1:in `<main>' /home/circleci/repo/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.11.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require' /home/circleci/repo/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.11.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/runtime.rb:60:in `block (2 levels) in require' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/runtime.rb:55:in `each' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/runtime.rb:55:in `block in require' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/runtime.rb:44:in `each' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/runtime.rb:44:in `require' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler.rb:176:in `require' /home/circleci/repo/config/application.rb:18:in `<top (required)>' /home/circleci/repo/Rakefile:4:in `require_relative' /home/circleci/repo/Rakefile:4:in `<top (required)>' /home/circleci/repo/vendor/bundle/ruby/2.7.0/gems/rake-12.3.3/exe/rake:27:in `<top (required)>' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/cli/exec.rb:58:in `load' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/cli/exec.rb:58:in `kernel_load' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/cli/exec.rb:23:in `run' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/cli.rb:483:in `exec' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/vendor/thor/lib/thor.rb:392:in `dispatch' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/cli.rb:31:in `dispatch' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/vendor/thor/lib/thor/base.rb:485:in `start' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/cli.rb:25:in `start' /home/circleci/.rubygems/gems/bundler-2.3.11/exe/bundle:48:in `block in <top (required)>' /home/circleci/.rubygems/gems/bundler-2.3.11/lib/bundler/friendly_errors.rb:103:in `with_friendly_errors' /home/circleci/.rubygems/gems/bundler-2.3.11/exe/bundle:36:in `<top (required)>' /home/circleci/.rubygems/bin/bundle:25:in `load' /home/circleci/.rubygems/bin/bundle:25:in `<main>' (See full trace by running task with --trace) Exited with code exit status 1 CircleCI received exit code 1

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Ruby

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

Circle CI

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