2016-09-23 2 views
1

S3를 설치했으며 영웅에서 잘 작동합니다. 자산을 heroku로 푸시려고 RAILS_ENV=production bundle exec rake assets:precompile을 실행하면 위의 오류가 반환됩니다. heroku config를 실행하면 이미 S3 버킷이 있고 다른 모든 것은 설정됩니다.KeyError : 키를 찾을 수 없음 : "S3_BUCKET_NAME"

무엇을 찾고 있으며 왜 자산을 컴파일하기 위해 S3 이름을 찾을 수 없는가? production.rb

config.paperclip_defaults = { 
    storage: :s3, 
    s3_credentials: { 
     bucket: ENV.fetch('S3_BUCKET_NAME'), 
     access_key_id: ENV.fetch('AWS_ACCESS_KEY_ID'), 
     secret_access_key: ENV.fetch('AWS_SECRET_ACCESS_KEY'), 
     s3_region: 'us-west-2', 
    } 
} 

에서

가 나는 이것에 몇 SO 발견했지만, 아무도 해결책으로 나를 가리키는되지 않습니다. 어떤 도움을 주셔서 감사합니다!

업데이트 : 왜냐하면 내가 로컬로 컴파일해야하는 이유는 heroku가 application.js 파일을 꺼내기 때문입니다.

remote:  Running: rake assets:precompile 
remote:  I, [2016-09-23T15:12:53.753671 #267] INFO -- : Writing /tmp/build_97a8fe2ca07bc4bf090be26f2be2872b/public/assets/application-9c608f99ae2b1980d74ba674b9f9ff7f0ae113d532e2c2ea580960a6a53346bb.js 
remote:  Asset precompilation completed (6.54s) 
remote:  Cleaning assets 
remote:  Running: rake assets:clean 
remote:  I, [2016-09-23T15:12:55.908630 #273] INFO -- : Removed application-489c5647af1ca8b6a56e560e8a83d77a1a070778dabb4f0b40f55c4a4e5b8feb.js 

답변

1

당신에게 Heroku에 S3_BUCKET_NAME 설정 속성이 아무런 효과가없는 경우, 로컬 자산을 컴파일하기 위해 노력하고 있습니다.

응용 프로그램을 로컬로 실행하려면 (Rake 작업 실행 포함) 해당 환경 변수를 정의해야합니다. 말했다

,이 문은 아무 의미 : 당신에게 Heroku에 "자산을 눌러"로컬로 rake assets:precompile를 실행할 필요에

When I try to run RAILS_ENV=production bundle exec rake assets:precompile to push assets to heroku,

은 이유 없다. Heroku는 새로운 커밋을 푸시 할 때마다 자동으로 자산을 컴파일합니다.

+0

이것은 실제로 문제입니다. 내가 영웅에게 가면 application.js가 나옵니다. 그래서 저는 그것을 지역적으로 컴파일하려고 노력 중이므로 heroku로 푸시됩니다. 로그 오류로 오류를 업데이트합니다. 그냥 지식을 위해서, 나는 S3를 설치하기 전에 로컬에서 잘 컴파일하고 있었다. – gwalshington

+0

@ gwalshington 문제를 오진했다. 자산을 로컬에서 컴파일하고 Heroku로 푸시하는 것은 잘못된 대답입니다. Heroku가 application.js 파일을 제거하지 않고 있습니다. 이전 버전 *을 제거하고 있습니다 .js – meagar

+0

사실, application.js는 프로젝트에 전혀 없습니다. 왜 거기에 있지 않을까에 대한 생각? 그리고 거기에 있지 않다는 것을 확인하기 위해, 나는 콘솔에 그냥 묻습니다. 페이지가로드 될 때 뭔가를 로깅하십시오. 그리고 그렇게하지 않습니다. – gwalshington

관련 문제