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

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

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

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

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

Ruby on Rails

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

Amazon S3

Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

4261閲覧

Heroku、CarrierWaveとAWSを画像投稿機能をつけたいが、[fog]がうまく機能しない

Ryuto.dc

総合スコア1

Ruby

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

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

Ruby on Rails

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

Amazon S3

Amazon S3 (Simple Storage Service)とはアマゾン・ウェブ・サービスが提供するオンラインストレージサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

1クリップ

投稿2020/05/10 05:54

Heroku、CarrierWaveとAWSを画像投稿機能をつけたいが、[fog]がうまく機能しない

現在、漫画家の友人のポートフォリページをrailsを利用して作成しています。
イラストを投稿できるようにするため、CarrierWaveとAWSを利用しようとしてます。
しかし一通り入力、設定が完了したので、herokuにpush しようとするとターミナルに下記の表示が出てき、
最終的にpushをrejectされてしまいます。
fogに関するものが全て読み込めてないようです。

現在の環境、状況として
・mac OS 10.13.6
・ruby2.6.5
・rails 5.2.4.2
・gem fog インストール済み
・AWS、S3アカウント作成済み
・Herokuアカウント作成済み
⇨一度デプロイ済み、投稿機能を追加するために再度プッシュしたのちリジェクトされる
・環境変数(アクセスキー等)も設定済み

発生している問題・エラーメッセージ

エラーメッセージ remote: [fog][DEPRECATION] Unable to load Fog::Atmos::Storage remote: [fog][DEPRECATION] Falling back to deprecated constant Fog::Storage::Atmos. The preferred format of service provider constants has changed from service::provider to provider::service. Please update this service provider to use the preferred format. remote: [fog][DEPRECATION] Unable to load Fog::Clodo::Compute remote: [fog][DEPRECATION] Falling back to deprecated constant Fog::Compute::Clodo. The preferred format of service provider constants has changed from service::provider to provider::service. Please update this service provider to use the preferred format. remote: [fog][DEPRECATION] Unable to load Fog::DigitalOcean::Compute remote: [fog][DEPRECATION] Falling back to deprecated constant Fog::Compute::DigitalOcean. The preferred format of service provider constants has changed from service::provider to provider::service. Please update this service provider to use the preferred format. remote: [fog][DEPRECATION] Unable to load Fog::Dnsimple::DNS remote: [fog][DEPRECATION] Falling back to deprecated constant Fog::DNS::Dnsimple. The preferred format of service provider constants has changed from service::provider to provider::service. Please update this service provider to use the preferred format. ・ ・ 一部省略 ・ remote: [fog][DEPRECATION] Unable to load Fog::Aliyun::Compute remote: [fog][DEPRECATION] Falling back to deprecated constant Fog::Compute::Aliyun. The preferred format of service provider constants has changed from service::provider to provider::service. Please update this service provider to use the preferred format. remote: [fog][DEPRECATION] Unable to load Fog::Aliyun::Storage remote: [fog][DEPRECATION] Falling back to deprecated constant Fog::Storage::Aliyun. The preferred format of service provider constants has changed from service::provider to provider::service. Please update this service provider to use the preferred format. remote: rake aborted! remote: NoMethodError: undefined method `~' for :smtp:Symbol remote: /tmp/build_5342ac7d37b0f1a4dbd2dd2e806a20bc/config/environments/production.rb:66:in `block (2 levels) in <main>' ・ ・一部省略 ・ ・ /tmp/build_5342ac7d37b0f1a4dbd2dd2e806a20bc/vendor/bundle/ruby/2.6.0/gems/railties-5.2.4.2/lib/rails/application.rb:520:in `block in run_tasks_blocks' remote: /tmp/build_5342ac7d37b0f1a4dbd2dd2e806a20bc/vendor/bundle/ruby/2.6.0/gems/sprockets-rails-3.2.1/lib/sprockets/rails/task.rb:62:in `block (2 levels) in define' remote: /tmp/build_5342ac7d37b0f1a4dbd2dd2e806a20bc/vendor/bundle/ruby/2.6.0/gems/rake-13.0.1/exe/rake:27:in `<top (required)>' remote: Tasks: TOP => environment remote: (See full trace by running task with --trace) remote: remote: ! remote: ! Precompiling assets failed. remote: ! remote: ! Push rejected, failed to compile Ruby app. remote: remote: ! Push failed remote: Verifying deploy... remote: remote: ! Push rejected to ●●●●●. remote: To https://git.heroku.com/●●●●●.git ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'https://git.heroku.com/●●●●●git'

該当のソースコード

ソースコード carrierwave.rb unless Rails.env.development? || Rails.env.test? CarrierWave.configure do |config| config.fog_provider = 'fog/●●●●●' config.fog_directory = ENV['mc'] config.fog_credentials = { provider: 'AWS', aws_access_key_id: 'A●●●●●G', aws_secret_access_key: 'xU●●●●●X', region: 'ap-northeast-1' } config.cache_storage = :fog config.fog_public = false end end uploader/image_uploader.rb class ImageUploader < CarrierWave::Uploader::Base if Rails.env.development? storage :file elsif Rails.env.test? storage :file else storage :fog end def store_dir "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}" end

試したこと

db:migrateもしようとしても、同じような表記がターミナル上現れます。
初めてこちらのサイトで質問をするので、その他必要な情報があればお申し付けください。
よろしくお願いします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

私も自作アプリがHerokuでのビルド時に同じような落ち方をしていました。

Gemfileのfogfog-awsに変更したらビルドが成功しましたので、
もしかしたら参考になるかもしれないです。

fogはいろいろなプロバイダーのストレージ機能を持っているので、問題の切り分けが難しいなと感じ、fog-awsを使えばAWSのストレージ機能に限定できるので問題の切り分けが少しは簡単になるかもしれないなと想定したのでした。

参考 【AWS S3 + EC2 + CarrierWave + Fog】RailsからS3へ画像アップロード手順

投稿2020/05/26 23:42

yuki0920

総合スコア31

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

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

Ryuto.dc

2020/05/27 01:26

回答の通り変えてみるとうまくいきました! 参考資料もありがとうごございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問