7.7 KiB
Quick Start Checklist - GitHub Actions Integration
Date: 2025-12-02 Approach: Hybrid (n8n + GitHub Actions + OpenHands SDK) Goal: Get started immediately
✅ Pre-Flight Checklist (15 min)
1. Review Decision (5 min)
- Read
EXECUTIVE_SUMMARY.md(overview) - Review key benefits: 55% fewer nodes, better logging
- Confirm 3-4 day timeline is acceptable
- Decision: PROCEED / HOLD
2. Verify Credentials (5 min)
- OpenHands API Key:
cat /home/bam/openhands/.env | grep API_KEY - n8n API Token:
cat /home/bam/.n8n_api_key - Gitea access: https://git.oky.sh (admin account)
- GitHub account: https://github.com (for Actions)
3. Check Documentation (5 min)
NEW_APPROACH_ANALYSIS.md- Full analysisGITHUB_ACTIONS_INTEGRATION_GUIDE.md- Implementation.github/workflows/openhands-build.yml- Workflow template.github/scripts/agent_build.py- Agent script
🚀 Day 1: GitHub Actions Setup (3 hours)
Hour 1: Repository Setup
Step 1: Create GitHub Repository (20 min)
# Option A: Create new repository on GitHub.com
# Go to https://github.com/new
# Repository name: mvp-factory-openhands-actions
# Public or Private (secrets work in both)
# Option B: Mirror from Gitea (if you have GitHub)
git clone https://git.oky.sh/gitadmin/your-project.git
cd your-project
git remote add github https://github.com/username/your-project.git
git push github main
Step 2: Add Workflow Files (10 min)
# Create directories
mkdir -p .github/workflows .github/scripts
# Copy files from analysis
# (Files already created at:)
# /home/bam/claude/mvp-factory/.github/workflows/openhands-build.yml
# /home/bam/claude/mvp-factory/.github/scripts/agent_build.py
# Make agent script executable
chmod +x .github/scripts/agent_build.py
# Commit and push
git add .github/
git commit -m "Add GitHub Actions workflow for OpenHands"
git push origin main
Step 3: Configure Repository Settings (10 min)
- Go to GitHub → Repository → Settings
- Secrets and variables → Actions
- Click "New repository secret"
- Add each secret:
- Name:
OPENHANDS_API_KEY - Value: [MiniMax API key from
/home/bam/openhands/.env]
- Name:
- Add second secret:
- Name:
GITEA_API_TOKEN - Value: [Generate in Gitea → Settings → Applications]
- Name:
Step 4: Add Variables (10 min)
- In same "Secrets and variables" section
- Click "Variables" tab
- Add each variable:
- Name:
LLM_MODEL - Value:
anthropic/claude-sonnet-4-5-20250929 - Name:
GITEA_API_URL - Value:
https://git.oky.sh
- Name:
Step 5: Verify in Repository (10 min)
# Check files exist
ls -la .github/workflows/
ls -la .github/scripts/
# Verify workflow syntax
cat .github/workflows/openhands-build.yml | head -20
cat .github/scripts/agent_build.py | head -20
Hour 2-3: Test GitHub Actions
Step 6: Test Manually (45 min)
- Go to GitHub → Repository → Actions tab
- Select "OpenHands Build & Test" workflow
- Click "Run workflow" (dropdown)
- Fill parameters:
- Task:
Build and test this project - Repo Name:
your-repo-name - Commit SHA:
git rev-parse HEAD - Retry Count:
0
- Task:
- Click "Run workflow"
Step 7: Monitor Execution (45 min)
- Click on running workflow
- Watch each step execute:
- ✅ Checkout repository
- ✅ Setup Python
- ✅ Install uv
- ✅ Install OpenHands SDK
- ✅ Run Build Task (most important)
- ✅ Upload Build Logs
- ✅ Update Gitea Status
- Check logs for each step
- Verify final status: success ✅ or failure ❌
Step 8: Check Artifacts (15 min)
- After workflow completes
- Scroll down to "Artifacts" section
- Download "build-logs-X" artifact
- Verify logs contain:
- OpenHands initialization
- Task execution details
- Build results
Step 9: Verify Gitea Status (15 min)
- Go to Gitea → Repository → Commits
- Find the commit you built
- Check status badge: "success" or "failure"
- Click status to see details
Hour 3: Troubleshooting
If Actions fails:
- Check logs for each step
- Common issues:
- Missing
OPENHANDS_API_KEYsecret - Invalid API key format
- Python setup errors
- OpenHands SDK installation issues
- Missing
If Gitea status doesn't update:
- Check
GITEA_API_TOKENsecret is correct - Verify token has API access permissions
- Check GitHub Actions logs for API call errors
Verification Complete When:
- ✅ GitHub Actions runs successfully
- ✅ Logs uploaded as artifacts
- ✅ Gitea commit status updated
- ✅ Build task completes without errors
📋 Day 1 Success Criteria
All must be checked:
- GitHub Actions workflow exists
- Repository secrets configured (OPENHANDS_API_KEY, GITEA_API_TOKEN)
- Repository variables configured (LLM_MODEL, GITEA_API_URL)
- Manual test runs successfully
- Logs uploaded as artifacts
- Gitea status updated
- No errors in workflow execution
If all checked: Proceed to Day 2 If any failed: Troubleshoot before moving forward
📚 Day 2 Preview: n8n Integration
Tomorrow's Tasks:
- Update existing n8n workflow (ID: j1MmXaRhDjvkRSLa)
- Replace SSH node with HTTP node
- Add GitHub Actions trigger
- Test end-to-end flow
- Verify data preservation
Estimated Time: 3-4 hours
🆘 Troubleshooting Guide
Issue: "LLM_API_KEY environment variable is not set"
Solution:
# Check secret exists
# GitHub → Settings → Secrets and variables → Actions → Secrets
# Verify value is correct
echo $OPENHANDS_API_KEY
# If missing, add it:
# GitHub → Settings → Secrets → New secret
# Name: OPENHANDS_API_KEY
# Value: sk-... (from /home/bam/openhands/.env)
Issue: "HTTP 404" when triggering workflow
Solution:
- Verify workflow file exists:
.github/workflows/openhands-build.yml - Check workflow has
workflow_dispatchtrigger (line 2-5) - Verify repository name and owner in URL
- Ensure token has
workflowscope
Issue: "HTTP 403" when triggering workflow
Solution:
- Check GitHub token permissions
- Token needs:
repo,workflowscopes - Verify token is not expired
- Try regenerating token
Issue: "Build failed" but no clear error
Solution:
- Download build logs artifact
- Check
build.logfile - Look for OpenHands SDK errors
- Check if task is too complex (simplify)
Issue: "Gitea status not updating"
Solution:
# Test token manually
curl -H "Authorization: token YOUR_TOKEN" \
https://git.oky.sh/api/v1/user
# If 401: Token is invalid
# If 200: Token works, check repository name/sha
📞 Support Resources
Documentation
- OpenHands SDK: https://docs.openhands.dev/sdk/
- GitHub Actions API: https://docs.github.com/en/rest/actions
- Gitea API: https://docs.gitea.io/en-us/api-usage/
Local Files
/home/bam/claude/mvp-factory/NEW_APPROACH_ANALYSIS.md/home/bam/claude/mvp-factory/GITHUB_ACTIONS_INTEGRATION_GUIDE.md/home/bam/claude/mvp-factory/MIGRATION_SUMMARY.md
Current System
- n8n: https://n8n.oky.sh
- Gitea: https://git.oky.sh
- Working workflow: ID: j1MmXaRhDjvkRSLa
✅ Decision Point
After completing Day 1:
If successful:
- ✅ All tests pass
- ✅ GitHub Actions working
- ✅ Gitea status updating
- Action: Proceed to Day 2 (n8n integration)
If issues persist:
- ❌ Multiple failures
- ❌ Can't resolve errors
- Action: Pause and reassess
- Review
NEW_APPROACH_ANALYSIS.md - Consider staying with SSH approach
- Or debug issues before proceeding
- Review
Overall Decision: Day 1 success = GO for Day 2 Day 1 failure = EVALUATE & DECIDE
Quick Start Checklist - 2025-12-02 Ready to begin implementation