Skip to content

ci: add GitHub Actions workflow for automated member sync#8

Open
nhaynes wants to merge 2 commits intomainfrom
ci/github-actions-sync
Open

ci: add GitHub Actions workflow for automated member sync#8
nhaynes wants to merge 2 commits intomainfrom
ci/github-actions-sync

Conversation

@nhaynes
Copy link
Copy Markdown

@nhaynes nhaynes commented Mar 19, 2026

Summary

  • Add GitHub Actions workflow to automate weekly member sync (Monday 8am Central)
  • Expand README with comprehensive documentation (setup, architecture, troubleshooting)
  • Workflow uploads CSV output as downloadable artifact (7-day retention)

Changes

New file: .github/workflows/sync-members.yml

  • Scheduled cron trigger: 0 14 * * 1 (Monday 8am Central / 2pm UTC)
  • Manual workflow_dispatch trigger for on-demand runs
  • Python 3.11 with pip caching for faster execution
  • Uploads output/members.csv as artifact

Updated: README.md

  • Added workflow status badge
  • New "GitHub Actions (Automated Sync)" setup section with secrets table
  • Updated usage section to highlight automated execution

Required Secrets

Configure these in Settings > Secrets and variables > Actions before running:

Secret Source
STRIPE_SECRET_KEY Current .env file
MAILCHIMP_API_KEY Current .env file
MAILCHIMP_SERVER_PREFIX Current .env file
MAILCHIMP_LIST_ID Current .env file
GOOGLE_CREDENTIALS Contents of .google_credentials.json

Test plan

  • Configure repository secrets
  • Manually trigger workflow from Actions tab
  • Verify workflow completes successfully
  • Confirm Google Sheet is updated with current data
  • Verify CSV artifact is downloadable

🤖 Generated with Claude Code

nhaynes and others added 2 commits March 19, 2026 16:29
Add weekly scheduled workflow to sync ILSA members from Stripe to
Mailchimp and Google Sheets. Workflow runs every Monday at 8am Central
with manual trigger option. Includes pip caching and CSV artifact upload.

Also expand README with comprehensive documentation including setup
instructions, architecture overview, and troubleshooting guide.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Update cron schedule to run daily at 8am Central instead of weekly.
Still well within GitHub Actions free tier (~150 min/month vs 2,000 limit).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@nhaynes nhaynes self-assigned this Mar 19, 2026
@nhaynes nhaynes requested review from jseesel and kevinreedy March 19, 2026 21:31
@nhaynes
Copy link
Copy Markdown
Author

nhaynes commented Mar 19, 2026

@jseesel @kevinreedy I was thinking this could replace the server cluster that is being provisioned currently and run weekly in Google cloud. Let me know what you think.

We would need to update the repository secrets before it would run successfully.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant