カラオケは行きたいよな
キャッシュをクリアしなければいけない件はすでにIssueとして記録されていた。リリースノートに書かれますように
https://github.com/tootsuite/mastodon/issues/3505#issuecomment-305884125
Merged master at defe4f9bc3407cde4d5b1918778b0754ef7f4970
Mastodonのrake testしたいんだけどコンテナの外でやるのが一般的なんじゃろか?Dockerのどっかでできないじゃろか?
Dockerfileのbundle installには--without test developmentとか書いてあるしね
やーん。
$ npm install yarn
$ PATH=$PATH:$PWD/bin
$ yarn install
Yarn executable was not detected in the system.
Download Yarn at https://yarnpkg.com/en/docs/install
Dockerビルドマシンで直接rake specが走るようになりました
https://gist.github.com/zunda/aa6870d0f9f68e705d54d1fa882b0cc0
いやー大変w
Streaming APIのかんさつ
- /web/timelines/publicから読み込まれた/api/v1/streaming/?access_token=********&stream=publicを別のタブから読もうとするとerror: "Error: Missing access token"になる
- /web/timelines/publicをリロードしてもaccess_tokenは変化しない
- クッキーを送らなくても読める
- Acceptリクエストヘッダは必要
- Sec-WebSocket-Versionリクエストヘッダは必要
- Upgradeリクエストヘッダは必要
- Sec-WebSocket-Keyヘッダは必要
というわけで最小のcurlラインは下記のような感じ。
curl 'https://<ホスト名>//api/v1/streaming/?access_token=<トークン>&stream=public' -H 'Host: <ホスト名>' -H 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' -H 'Sec-WebSocket-Version: 13' -H 'Sec-WebSocket-Key: <キー>==' -H 'Upgrade: websocket’
ログインしていることを証明する必要はないんだねえ
mstdn.jpではすでにリダイレクトができているとのこと https://github.com/tootsuite/mastodon/issues/2068#issuecomment-305960329 なんだけどソースコードどこよーw
これが、
Jun 05 02:05:24 zundan-mastodon app/web.1: method=GET path=/api/v1/streaming format=html controller=ApplicationController action=raise_not_found status=404
こうなった!
Jun 05 02:09:39 zundan-mastodon app/web.1: method=GET path=/api/v1/streaming format=html controller=Api::V1::StreamingController action=index status=301 location=https://zundan-mastodon-streaming.herokuapp.com/api/v1/streaming?stream=user&access_token=<deadbeef>
コード書けるの幸せだけどRailsとかRSpecとかどう書くべきか調べるのにどんどーん時間を取られる。慣れてないからねえ。
Redisならしょうがない(てか有償版高いんすけど…
method=GET path=/api/v1/timelines/home format=html controller=Api::V1::Timelines::HomeController action=show status=500 error='Redis::CommandError: ERR max number of clients reached'
リモートワークのイベントがあるというので喜んで概要のページを見に行ったらリモート参加できるかどうかはまだわからないってw
このインスタンスのsidekiqはデフォルトでは5スレッド起動するっぽい
$ sidekiq &
$ ps x
:
13 ? Sl 0:03 sidekiq 5.0.0 app [0 of 5 busy]
:
$ sidekiq -c 3 &
$ ps x
:
49 ? Sl 0:03 sidekiq 5.0.0 app [0 of 3 busy]
:
暇そうだし2スレッドまで減らしてみよう
https://github.com/zunda/mastodon/commit/172349ea67ab4ac34075df26be0441ca861f37f4 な感じにして、
$ heroku config:set SIDEKIQ_THREADS=2 -a zundan-mastodon
こんな感じでどうじゃろ
Sidekiqのスレッド数を3個減らしたらRedisのコネクション数が制限に収まるようになった感じがします。ブラウザもうひとつ起動したら破綻するなw
@hatabowyou おおっと、bootsnapがこちらで試してるのより新しくなってますね。みてみます。
masterは壊れてることもあるので、リリース版(今ならv1.4.1)を試してみるのも良いかもしれません。
git checkout v1.4.1
@hatabowyou バージョンは関係なかったようです。RAILS_ENVを指定しないとエラーが出るようです。
$ RAILS_ENV=production bundle exec rake secret
でいかがでしょう?
カラムが「Pin」になっている時に左右に動かせて「Unpin」になっている時に左右に動かせないの、なんだか論理が逆な気がする。あれれ違うかな?操作のしかたがわからないw
@hatabowyou プロダクション用のデータベースに触り始めてる感じなので、もしデータがあるのなら消しちゃわないよう注意しつつ、データベースへの接続のためのホスト名とかポート番号とかユーザー名とかパスワードとか、意図どおりに設定されているか確認するといいかもです。