GitHub Actions duration transition
#アイデア
モチベーション
GitHub ActionsでのCI/CDの所要時間 (duration) の推移を観察したい
How
Input
Web APIでworkflow単位、さらにはstep単位での開始・終了時刻を取得できる
https://docs.github.com/en/rest/reference/actions#workflow-jobs
scheduled workflowなどで定期的に取得すると良さそう
プリインストールされてるgh CLIで取得できると便利だと思ったがまだできなさそう
https://cli.github.com/manual/gh_workflow_view
Data store
取得したデータを永続化する
GitHub Actionsにartifactとして保存するのも良いが扱いづらい
いちいちダウンロードしないと処理できない
可視化するソースとして使えない
Google Spreadsheetをデータベースとして使う
Google Apps Scriptでいろいろ活用できそう
BigQueryやDataDogも可
Datadogはすでに事例あった https://github.com/int128/datadog-actions-metrics
Output
Spreadsheetそのままでも良いし定期的にSlackに流したり
BigQueryをソースにしてRedash等で可視化もできる