手元の HTML / CSS / JavaScript をサクッと確認するためには ローカルWebサーバ を建てる必要があります*1。思いついたローカルWebサーバの簡易比較をしてみます。
比較項目は以下のとおりです。それぞれの項目の内容は、最低限のオプションで起動した場合の内容です。
- 起動方法
- ディレクトリのファイル一覧を表示できるか
- 文字コードを指定しなくても大丈夫か*2
- ポート番号
- 備考
日本語のドキュメントは、例え用意してあったとしても、情報が古いことがあるので気をつけましょう*1。
https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule
cron を設定するための最小限の YAML を書くと次のようになります。
name: FOOBAR on: schedule: - cron: '34 12 * * *' jobs: my_cron_job: name: hogehoge runs-on: ubuntu-latest steps: - name: Hello My Cron Job run: | echo 'Hello, My Cron Job!'
上記を push すると「日本時間で毎日 21:34 に my_cron_job
の内容が実行」されます。
細かい注意点がいくつかあります。
*
は特別な文字なので、cron:
で指定する値はクォートする必要があります冒頭の YAML の書き方ですと、cron でしか job が発動しません。push
でも発動させたい場合は以下の 2つ の方法があります*2。
on:
の値に push:
を追加する発動の契機として push:
を追加します。キーのみの追加で良いです*3。追加したあとの YAML は次のようになります。
name: FOOBAR on: push: schedule: - cron: '34 12 * * *' jobs: my_cron_job: name: hogehoge runs-on: ubuntu-latest steps: - name: Hello My Cron Job run: | echo 'Hello, My Cron Job!'
GitHub Actions では .github/workflows
直下にある YAML ファイル全てを GitHub Actions の設定ファイルとみなします。
したがって、「on:
に push:
のみを設定した YAML ファイル」を一つ書き、さらに「on:
に schedule:
のみを設定した YAML ファイル」を一つ書けば、on:
と push:
の両方を契機にして job を発動させられます。
この方法だと push:
と schedule:
で異なる内容の job を実行させることができます*4。
GitHub Actions の実行ログ一覧では、何を発動契機としたか、が一覧に表示されるので、それにより schedule:
を契機として発動したことを確認することができます。
自嘲気味の記事ですが、その言葉の端々の中から推測するのは、この人は「ゲームが大好き」ということではないでしょうか。
また、「ゲーム翻訳者」を「ゲームテスター」に置き換えても同様な文脈になるのかな、と思いました。
GitHub Actions で bundle install した gem のキャッシュが保存できるようになったので喜んで使っていたのですが、とある日にログを見たところ、以下のような表示が出ていました。キャッシュ容量の上限の 400MB を超えている、との警告です。
[warning]Cache size of ~526 MB (551997667 B) is over the 400MB limit, not saving cache.
gem の総容量が 400MB を超えるなんて普通ではどう考えてもありえません。何がそんなに容量を喰っているのかを以下のように調べました。
続きを読む