rails 기존 앱에 CircleCI로 CI/CD를 빌드할 때까지의 과정에서 발생한 오류
하고 싶은 일
기존 앱에 CircleCI를 도입하여 CI/CD 구축
환경
Ruby 2.6.5
rails 6.0
MySQL 5.6
M1 칩 탑재 MacOS
목차
1.CI 구축
2.CD 구축
3. 정리
1.CI 구축
발생한 오류
Failure/Error: <%= javascript_pack_tag 'application'%>
ActionView::Template::Error:
Webpacker can't find application in /home/circleci/sample_app/public/packs-test/manifest.json. Possible causes:
1. You want to set webpacker.yml value of compile to true for your environment
unless you are using the `webpack -w` or the webpack-dev-server.
2. webpack has not yet re-run to reflect updates.
3. You have misconfigured Webpacker's config/webpacker.yml file.
4. Your webpack configuration is not creating a manifest.
Your manifest contains:
{
}
circleci가 준비하는 docker 이미지로 rub계에서 yarn 내지 nodejs계의 커멘드를 이용하고 싶은 경우에는, -node 가 붙어 있는 이미지를 이용할 필요가 있다.
config.yml
docker:
- image: circleci/ruby:2.6.5-node
config.yml
- run:
name: yarn Install
command: yarn install
2. CD 구축
발생한 오류
수정 후
config.yml
name: database setup
command: heroku run bundle exec rails db:migrate RAILS_ENV=production -a $HEROKU_APP_NAME
마침내 config.ym을 작성하고 CircleCI도 build, test, deploy로 실행되고 막상 heroku open하면
heroku logs --tail을 해보면
ActionView::Template::Error (Webpacker can't find application in /fridge_app/public/packs/manifest.json. Possible causes:
1. You want to set webpacker.yml value of compile to true for your environment
unless you are using the `webpack -w` or the webpack-dev-server.
2. webpack has not yet re-run to reflect updates.
3. You have misconfigured Webpacker's config/webpacker.yml file.
4. Your webpack configuration is not creating a manifest.
Your manifest contains:
config.yml
- run:
name: webpacker compile
command: bundle exec rails webpacker:compile
webpacker를 넣지 않아서 읽을 수 없었다.
3. 정리
config.yml을 작성하는 방법이 어려웠습니다. 들여쓰기나 타이포 등 단순 실수도 있었고, 조사하면서 몇번이나 몇번이나 수정하면서 만들었습니다.
Reference
이 문제에 관하여(rails 기존 앱에 CircleCI로 CI/CD를 빌드할 때까지의 과정에서 발생한 오류), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yunyun_engineer/items/cdd3eae7b4daa85d5257텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)