またまたやってきましたアップデート。
毎回のことだけど、アップデート大変です(笑)
今までも何回かやってきたけど、リリースノートに書いてある通りにやってできないからね!
頼むよオイゲン・ロチコさん。
まったくもう。
今回の1.6.0は今までのものから大幅に変更が加わっている。
今まではOStatusというプロトコルを使っていたのをActivityPubというものに置き換えたバージョンになる。
詳しいことはわかりません(笑)
まあ、配信方式が変わるので、今後のことを考えるとバージョンアップは不可避と。
大規模インスタンスが1.6.0になったらやろうかなと思ったら、早々にみんな1.6.0になってしまったので、仕方ないなと…
今回は前回よりもそういう仕様変更はあるんだけど、リリースノートにはそんなにややこしいことが書いてない。
ということで、リリースノートをよく読んでアップデート開始。
systemctl stop mastodon* #いつものようにMastodonをとめる su - mastodon cd /home/mastodon/live git branch git checkout master git pull git checkout v1.6.0 bundle install --deployment --without development test yarn install RAILS_ENV=production bundle exec rails db:migrate RAILS_ENV=production bundle exec rails assets:precompile RAILS_ENV=production bundle exec rails mastodon:maintenance:remove_deprecated_preview_cards exit systemctl restart mastodon*
やることはこれだけ。
でもね、またやり終わったら案の定エラー出たんだよね。
なんかうまくインストールできていない雰囲気は感じてたし(笑)
確かに上記のやり方でやった時にgit pullした段階で、yarn.lockファイルのエラーが出てた。
でも気にせずやったらできるかなって思ってやったら、できなかったってことなんだよね。
Google先生によるとエラーに書いてあるようにyarn.lockファイルをマージするか隠すかしろということらしい。
なので、yarn.lockファイルを一旦/home/mastodon/liveから別のところに移動させた。
やり方としては以下のように。
systemctl stop mastodon* su - mastodon cd /home/mastodon/live mv yarn.lock ../ #yarn.lockファイルをひとまず一番上の階層へ退避 git branch git checkout master git pull git checkout v1.6.0 bundle install --deployment --without development test yarn install RAILS_ENV=production bundle exec rails db:migrate RAILS_ENV=production bundle exec rails assets:precompile RAILS_ENV=production bundle exec rails mastodon:maintenance:remove_deprecated_preview_cards exit systemctl restart mastodon*
これでやると確かにエラーは出ずにyarnをインストールすると再インストールされるような感じになる。
で、最後のRAILS_ENV=production bundle exec rails mastodon:maintenance:remove_deprecated_preview_cardsをすると、古いものを消すかどうか2つ質問されるので、そのときは「y」を選択して全部消す。
再起動が完了すれば、しばらくしてデータを全部読み込みなおしてくれるとブラウザでちゃんと表示されるようになりました。
リアル脱出ゲーム好きのMastodonインスタンス「リアルエスケープ」
おつかれさまでした。