Skip to content
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

perldoc.jp のcron をGitHub Actionに移管する #47

Open
1 of 6 tasks
Tracked by #38
kfly8 opened this issue Aug 30, 2023 · 6 comments
Open
1 of 6 tasks
Tracked by #38

perldoc.jp のcron をGitHub Actionに移管する #47

kfly8 opened this issue Aug 30, 2023 · 6 comments
Assignees

Comments

@kfly8
Copy link
Contributor

kfly8 commented Aug 30, 2023

背景

  • 親issueの通り、サーバーの引越しが背景
  • GitHub Actionに移管する理由を補足
    • 現在、翻訳データは全て、GitHubに移管された。 merge JPRP translation#56
    • そうなると、GitHub Actionを用いて、翻訳データがpushされたタイミングで、サイトを更新といったことがしやすそう
    • また、GitHub Actionは、普及しているので、メンテナンスできる人は多そう。多分。
    • そして、運用する人は限られているので、Cloud Schedulerなど別立てのサーバーを立てる強い理由がない限りしたくない
    • 運用費も減らしたい

TODO

参考情報

現状設定されているcron job
  PLACK_ENV=deployment
# 最新の翻訳の取込みとサイト更新
23  3,4,5,6 * * * nice -n 19 /usr/local/bin/setlock /tmp/perldoc.jp.update /usr/local/bin/cronlog /var/lib/jpa/perldoc.jp/code/script/update_deployment.sh
# 最近翻訳されたモジュールを更新(top page)
5  * * * * (cd /var/lib/jpa/perldoc.jp/code; nice -n 19  /usr/local/bin/setlock /tmp/perldoc.jp.update ./script/carton.sh perl -Ilib ./script/create_recent.pl)
# CPANのカテゴリとその中のモジュールをスクレイピング(NOTE:2021/12/27:ページごと廃止)
# 0  4 * * * (cd /var/lib/jpa/perldoc.jp/code; nice -n 19 ./script/carton.sh perl -Ilib ./script/scrape_cpan.pl)
# 年間で翻訳されたモジュール、著者のデータを作成
5  4 * * * (cd /var/lib/jpa/perldoc.jp/code; nice -n 19 ./script/carton.sh perl -Ilib ./script/create_year_data.pl `date +'\%Y'`)
# diffが重たくてタイムアウトしたものについて、diff の結果を作っておく(あれば、それを利用するように)
30 * * * * (cd /var/lib/jpa/perldoc.jp/code; nice -n 19 ./script/carton.sh perl -Ilib ./script/generate_heavy_diff.pl > /dev/null)
# chrome extension/firefox addon用のJSON作るもの
30 */6 * * * (cd /var/lib/jpa/perldoc.jp/code/; nice -n 19 ./script/create_docs.json.sh)
## https://chrome.google.com/webstore/detail/perldocjp-%E7%BF%BB%E8%A8%B3%E9%80%9A%E7%9F%A5/iedgkpbokcjamkpoglfbefmdmclkljhc?hl=ja
## https://addons.mozilla.org/ja/firefox/addon/perldocjp-firefox-addon/?src=search
```
  
@kfly8
Copy link
Contributor Author

kfly8 commented Aug 31, 2023

@ktat perldoc.jp のcronで、ktatさんが作成されたブラウザ拡張のためのJSONを生成するスクリプトが動いているのですが、こちらGitHub Actionに移行した方が良さそうでしょうか?(試しに Chrome版をインストールしたところ、動いていない?ような感じでしたので、もしかしたら不要かな?と思い、お声がけしました)

# chrome extension/firefox addon用のJSON作るもの
30 */6 * * * (cd /var/lib/jpa/perldoc.jp/code/; nice -n 19 ./script/create_docs.json.sh)
## https://chrome.google.com/webstore/detail/perldocjp-%E7%BF%BB%E8%A8%B3%E9%80%9A%E7%9F%A5/iedgkpbokcjamkpoglfbefmdmclkljhc?hl=ja
## https://addons.mozilla.org/ja/firefox/addon/perldocjp-firefox-addon/?src=search

@kfly8 kfly8 changed the title cron job をGitHub Actionで動かす perldoc.jp のcron をGitHub Actionに移管する Aug 31, 2023
@ktat
Copy link
Contributor

ktat commented Sep 4, 2023

@kfly8 perldoc.jp がhttpsになったタイミングで動いてなかったみたいです。自分では使ってなかったので、気づいてませんでした...。
修正したものを審査に出しているので(もともと、manifest version 3 に対応しようとは思っていたので)、残しておいてもらえるとありがたいです。

@kfly8
Copy link
Contributor Author

kfly8 commented Sep 5, 2023

承知しました!

@kfly8 kfly8 self-assigned this Sep 6, 2023
@kfly8
Copy link
Contributor Author

kfly8 commented Sep 6, 2023

移管方針について、静的サイト化できるんじゃね?とか、一回りしたけど、今のSQLiteに頼って、動かしてく形がさらっと移動できるし、移動してもメンテナンスできそう。多分。

image image

@ktat
Copy link
Contributor

ktat commented Sep 7, 2023

とりあえず、動くバージョンが公開されました。

https://chrome.google.com/webstore/detail/perldocjp-%E7%BF%BB%E8%A8%B3%E9%80%9A%E7%9F%A5/iedgkpbokcjamkpoglfbefmdmclkljhc?hl=ja&authuser=0

ついでにFirefoxも上げましたが、ちょっと問題ありなので、また直すと思います。

https://addons.mozilla.org/en-US/firefox/addon/perldoc-jp-webextension/?utm_source=addons.mozilla.org&utm_medium=referral&utm_content=search

スクショがやる気なくてすみません。

@kfly8
Copy link
Contributor Author

kfly8 commented Jan 4, 2024

GCPのCloud Runにホストするなら、Code Buildのビルドプロセスで、
現在、cronで走らせている処理を走らせれば良いのでは?

つまり、GitHub Actionへの移行は必須ではなさそう。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants