Testing basic velocity report action
This commit is contained in:
parent
2778c7d851
commit
d421fa9e64
|
@ -0,0 +1,23 @@
|
|||
#!/bin/bash
|
||||
|
||||
# --- Configuration ---
|
||||
USERNAMES=("davideast" "hugomurillomtz" "jakemac53" "richieforeman" "shishu314" "shrutip90" "i14h" "hritan")
|
||||
|
||||
# --- Date Calculation ---
|
||||
START_DATE=$(date -d "last Friday" +%Y-%m-%d)
|
||||
END_DATE=$(date -d "last Thursday" +%Y-%m-%d)
|
||||
DATE_RANGE="${START_DATE}..${END_DATE}"
|
||||
|
||||
# --- Report Generation ---
|
||||
# Print a header row for the CSV
|
||||
echo "Date Range,Username,PRs Submitted,Issues Closed"
|
||||
|
||||
# Loop through each user and generate a data row
|
||||
for USER in "${USERNAMES[@]}"; do
|
||||
# Get metrics using the GitHub CLI
|
||||
PRS_SUBMITTED=$(gh pr list --author "${USER}" --search "created:${DATE_RANGE}" --repo "${GITHUB_REPO}" --json number --jq 'length')
|
||||
ISSUES_CLOSED=$(gh issue list --search 'closer:"${USER}" closed:${DATE_RANGE}' --repo "${GITHUB_REPO}" --json number --jq 'length')
|
||||
|
||||
# Print the data as a CSV row
|
||||
echo "${START_DATE} to ${END_DATE},${USER},${PRS_SUBMITTED},${ISSUES_CLOSED}"
|
||||
done
|
|
@ -0,0 +1,39 @@
|
|||
# .github/workflows/weekly-velocity-report.yml
|
||||
|
||||
name: Weekly Velocity Report
|
||||
|
||||
on:
|
||||
schedule:
|
||||
#- cron: "0 13 * * 1" # Runs every Monday at 9:00 AM UTC
|
||||
- cron: "*/5 * * * *" # Test by running every 5 minutes
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
generate_report:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Generate Weekly Report as CSV
|
||||
id: report
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GH_PAT }}
|
||||
GITHUB_REPO: ${{ github.repository }}
|
||||
run: |
|
||||
chmod +x ./.github/workflows/scripts/generate-report.sh
|
||||
REPORT_CSV=$(./.github/workflows/scripts/generate-report.sh)
|
||||
echo "csv_data<<EOF" >> $GITHUB_OUTPUT
|
||||
echo "$REPORT_CSV" >> $GITHUB_OUTPUT
|
||||
echo "EOF" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Append data to Google Sheet
|
||||
if: success()
|
||||
uses: jroehl/gcp-google-sheets-action@v2.0.0
|
||||
with:
|
||||
gcp_sa_key: ${{ secrets.GCP_SA_KEY }}
|
||||
spreadsheet_id: ${{ secrets.SPREADSHEET_ID }}
|
||||
sheet_name: "Weekly Reports" # The name of the tab in your sheet
|
||||
data: ${{ steps.report.outputs.csv_data }}
|
||||
major_dimension: "ROWS"
|
||||
value_input_option: "USER_ENTERED"
|
Loading…
Reference in New Issue