diff --git a/.github/workflows/monthly-issue-metircs.yml b/.github/workflows/monthly-issue-metircs.yml new file mode 100644 index 000000000..a8abad4f4 --- /dev/null +++ b/.github/workflows/monthly-issue-metircs.yml @@ -0,0 +1,58 @@ +name: Monthly Issue Metrics Report +on: + workflow_dispatch: + schedule: + - cron: '0 0 1 * *' + +permissions: + issues: write + pull-requests: read + +jobs: + build: + name: docs issue metrics + runs-on: ubuntu-latest + + 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 for issues last month + uses: github/issue-metrics@v2 + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SEARCH_QUERY: 'repo:ethereum-optimism/docs is:issue created:${{ env.last_month }} -reason:"not planned" -label:monthly-report' + + - name: Create issue for opened issues + uses: peter-evans/create-issue-from-file@v4 + with: + title: ${{ env.last_month }} metrics report for opened issues + token: ${{ secrets.GITHUB_TOKEN }} + content-filepath: ./issue_metrics.md + assignees: sbvegan + + - name: Run issue-metrics tool for issues last month + uses: github/issue-metrics@v2 + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SEARCH_QUERY: 'repo:ethereum-optimism/docs is:issue closed:${{ env.last_month }} -reason:"not planned" -label:monthly-report' + + - name: Create issue for closed issues + uses: peter-evans/create-issue-from-file@v4 + with: + title: ${{ env.last_month }} metrics report for closed issues + content-filepath: ./issue_metrics.md + assignees: sbvegan + labels: | + monthly-report diff --git a/.github/workflows/monthly-pr-metrics.yml b/.github/workflows/monthly-pr-metrics.yml new file mode 100644 index 000000000..efeb11c95 --- /dev/null +++ b/.github/workflows/monthly-pr-metrics.yml @@ -0,0 +1,60 @@ +name: Monthly PR Metrics Report +on: + workflow_dispatch: + schedule: + - cron: '0 0 1 * *' + +permissions: + issues: write + pull-requests: read + +jobs: + build: + name: developer pr metrics + runs-on: ubuntu-latest + + 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 for prs last month + uses: github/issue-metrics@v2 + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SEARCH_QUERY: 'repo:ethereum-optimism/docs is:pr created:${{ env.last_month }}' + + - name: Create issue for opened prs + uses: peter-evans/create-issue-from-file@v4 + with: + title: ${{ env.last_month }} metrics report for opened prs + token: ${{ secrets.GITHUB_TOKEN }} + content-filepath: ./issue_metrics.md + assignees: sbvegan + labels: | + monthly-report + + - name: Run issue-metrics tool for prs closed last month + uses: github/issue-metrics@v2 + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + SEARCH_QUERY: 'repo:ethereum-optimism/docs is:pr closed:${{ env.last_month }}' + + - name: Create issue for closed prs last month + uses: peter-evans/create-issue-from-file@v4 + with: + title: ${{ env.last_month }} metrics report for closed prs + content-filepath: ./issue_metrics.md + assignees: sbvegan + labels: | + monthly-report \ No newline at end of file