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