daimyo-college / riders_meeting_app

riders_meeting_appを開発します。
2 stars 0 forks source link

9/4 作業ログ 望月 (デプロイテスト) #33

Open mochi5o opened 5 years ago

mochi5o commented 5 years ago

やったこと

加藤さんの手順に従って作業を進める https://hackmd.io/KlWOjnymS2mvZPdIQV5yag

事前に済ませておくこと

簡単な手順まとめ

エラー内容

git push lolipop master
Counting objects: 711, done.
Compressing objects: 100% (569/569), done.
Writing objects: 100% (711/711), 7.11 MiB | 870.00 KiB/s, d
・・・略
emote: bin/rails:3:in `<main>'
remote: 
remote: Caused by:
remote: OpenSSL::Cipher::CipherError: 
remote: /var/app/shared/vendor/bundl
・・・略
remote: Tasks: TOP => db:create => db:load_config => environment
remote: (See full trace by running task with --trace)
remote: Build seems to be failed. Abort
To ssh://ssh-1.mc.lolipop.jp:33021/
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'ssh://polished-tsukumi-9697@ssh-1.mc.lolipop.jp:33021/'

認証のエラー。暗号化された情報の復号化に失敗している。 前述の、『master.keyがなかったので作った』時のコマンドは、たしかに新たなmaster.keyを作成するが、既存のcredentials.yml.encは復号することはできないことが判明。 credentialsの復号化ができないためにエラーでストップしてしまっている。

対応

結論から言うと、credentials.yml.encの中身はsecret_key_baseしかなかったので、下記のどちらの対応でも問題なかった。両方試した上で、最終的に今回は共有する方法で進めた。

Save this in a password manager your team can access.

If you lose the key, no one, including you, can access anything encrypted with it.

  create  config/master.key

New credentials encrypted and saved.

// このあと、実際にデプロイするにはmasterでのコミットとマネクラ環境変数の書き換えが必要



igaigaさんのコメント抜粋
> ちなみに、config/credentials.yml.enc を作り直して紛失するsecret_key_baseですが、これはRailsで使うtoken的なものを作る素になるものです。もしもこれが流出したら、再生成すべきです。再生成すると、既に作られていたRailsが使ってるtoken的なものも合わせて再生成されます。
たとえば、暗号化されて格納されているセッションが再生成されます。これによって、すでにログイン中のユーザーがログアウトされる影響が出ます。(でもたぶん影響はそれぐらいなんじゃないかなー)

- master.keyを正しく設定したら、改めて `git push lolipop master` でデプロイ

https://rider-meeting.lolipop.io/touring_routes

### 参考
https://scrapbox.io/dojineko/Rails_6_%E3%81%8C%E3%83%AA%E3%83%AA%E3%83%BC%E3%82%B9%E3%81%95%E3%82%8C%E3%81%9F%E3%81%AE%E3%81%A7%E3%83%81%E3%83%A5%E3%83%BC%E3%83%88%E3%83%AA%E3%82%A2%E3%83%AB%E3%82%92%E8%AA%AD%E3%81%BE%E3%81%9A%E3%81%AB%E5%A7%8B%E3%82%81%E3%81%A6%E3%81%BF%E3%82%8B#5d584a946f980200008c4531 

### 地図表示
.envでAPIキーを設定したら地図表示されるはずが、エラーが出て表示されない。調べると、私のアカウントのAPIキーは、GCPの12ヶ月無料期間が過ぎていたのでアップグレードしないと使えないことが判明。
アカウントをアップグレードして制限の設定を済ませたら無事表示された!