-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Herokuからfly.ioへ移行 #518
Herokuからfly.ioへ移行 #518
Conversation
Dockerfile内部で条件分岐するってこと? |
あああああ、heredoc対応してないDockerfileが増やされる~~~~うわーーーん |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
すごい!fly.ioで動くのが見えてきた!
変更依頼です。
PRの中身みたけど、やっぱり統合は厳しそう。 |
1bf8635
to
05eb837
Compare
Codecov ReportBase: 94.94% // Head: 94.94% // No change to project coverage 👍
Additional details and impacted files@@ Coverage Diff @@
## master #518 +/- ##
=======================================
Coverage 94.94% 94.94%
=======================================
Files 16 16
Lines 297 297
=======================================
Hits 282 282
Misses 15 15 Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
f79e91a
to
30446fa
Compare
c8032c2 のあとmasterにrebaseしたら、Github Actionsによるcheckでこけていた。これを解消するため、以下を行った。
note: ref: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
議論に追記しました。
もう少し修正を。
flyにdeployするのに専用のDockerfileを作るため、 開発用のDockerfile名を変えた。
自動生成されたファイルに対しする変更箇所を分かりやすくするため、 この時点でコミットする。
`fly deploy`によるビルドでソースのスキャンか転送かが行われるらしく、 ビルドに入らないフォルダ・ファイルは.dockerignoreに書いておくと時短ができる。 .dockerignoreの中身は.gitignoreを参考にした。
flyで自動生成されたDockerfileの、yarn installが失敗していたため dev.Dockerfileを参考にして修正した。
build taskでassets:precompileすると、credentialsがなくてfailする。 server起動前にassets:precompileすることで解決。 https://fly.io/docs/rails/getting-started/existing/#access-to-environment-variables-at-build-time
デプロイ先は人によりけりなので、開発者用のメモとしてwikiに移動した。 https://github.com/momocus/sakazuki/wiki/Deployment
prettierとrubocopによるエラー箇所をそれぞれ修正
- ファイルのパーミッション修正 - SHELLオプション -o pipefailを設定(hadlint DL4006) - nodeのバージョン修正 - 不要なパッケージを削除 - パッケージのバージョンを指定 - GemfileとGemfile.lockのコピーをわかりやすくした
- DL3048 - LABELにアンダースコアが使われているため警告が出る。 - fly側がこのLABELを何に使っているか不明なため、修正せずにhadolint ignoreする。 - DL3008 - apt-get install するパッケージにバージョン名がないと警告が出る。 - BUILD_PACKAGESのように環境変数を使うとhadolintで解析できず、バージョンを指定していても警告が出る。 - 後述の理由により、修正せずにhadolint ignoreする。 - DL3025 - CMDの引数がJSON arrayではないため、警告が出る。 - 後述の理由により、修正せずにhadolint ignoreする。 `fly lanch`で生成されるDockerfileにはARGが多用されており、 `fly deploy`の引数やfly.tomlでオーバーライドできるようになっている。 今のところオーバーライドは使っていないが、元のDockerfileから大きく変えると不都合が出るかもしれないのでそのままにしておく。 もしかしたらdevとprodで同じDockerfileを使い回すなど、将来使えるかもしれない。 ref: https://fly.io/docs/reference/configuration/#specify-docker-build-arguments
- hadolint-actionは複数ファイルを同時にかけられないので、冗長だがstepを一つ増やした。
不要なコメントを削除 Co-authored-by: SAITOU Keita <[email protected]>
16c37dc
to
16d3815
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great JOB!!!!!!! 👏
Close #500
Note
本来ならば開発用のDockerfileと本番用のDockerfileを分ける必要はないはず。統合したい。