はじめに
Issue Metrics Action は GitHub の Open Source Program Office (OSPO) がメンテナンスしているツールです。
Issue Metrics Action 以外にも様々なツールが提供されています。
Open Source Program Office (OSPO)
設定する
今回は、Issue Metrics Action の README.md に記載されている Yml をベースに一部検索の条件を変更して設定しました。
検索の条件は GitHub Docs に記載されているオプションを指定可能です。
今回は、「私がオーナーである」「Public repository である」等の条件を追加しています。
そのままでは利用できませんが、参考までに作成した Yaml を貼っておきます。
name: Monthly issue metrics
on:
workflow_dispatch:
permissions:
contents: read
jobs:
build:
name: issue metrics
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: read
steps:
- name: Get dates for last month
shell: bash
run: |
# Calculate the first day of the previous month
first_day=$(date -d "last month" +%Y-%m-01)
# Calculate the last day of the previous month
last_day=$(date -d "$first_day +1 month -1 day" +%Y-%m-%d)
#Set an environment variable with the date range
echo "$first_day..$last_day"
echo "last_month=$first_day..$last_day" >> "$GITHUB_ENV"
- name: Run issue-metrics tool
uses: github/issue-metrics@v3
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SEARCH_QUERY: '-reason:"not planned" owner:mziyut is:public created:${{ env.last_month }}'
- name: Create issue
uses: peter-evans/create-issue-from-file@v5
with:
title: Monthly issue metrics report
token: ${{ secrets.GITHUB_TOKEN }}
content-filepath: ./issue_metrics.md
実際に動かしてみた結果はこちらです。
さいごに
今回は記事を作成するために簡単かつわかりやすい条件で Metrics を生成しましたが、 対象を Issue や Pull request だけに絞ったりと活用の幅は広いのではないでしょうか。
Ref