3.2 KiB
Fork Guide - CI/CD Configuration
CI/CD in Forks
By default, CI/CD workflows are disabled in forks to conserve GitHub Actions resources and provide a cleaner fork experience.
Why This Approach?
- Resource efficiency: Prevents unnecessary GitHub Actions usage across 1,600+ forks
- Clean fork experience: No failed workflow notifications in your fork
- Full control: Enable CI/CD only when you actually need it
- PR validation: Your changes are still fully tested when submitting PRs to the main repository
Enabling CI/CD in Your Fork
If you need to run CI/CD workflows in your fork, follow these steps:
- Navigate to your fork's Settings tab
- Go to Secrets and variables → Actions → Variables
- Click New repository variable
- Create a new variable:
- Name:
ENABLE_CI_IN_FORK - Value:
true
- Name:
- Click Add variable
That's it! CI/CD workflows will now run in your fork.
Disabling CI/CD Again
To disable CI/CD workflows in your fork, you can either:
- Delete the variable: Remove the
ENABLE_CI_IN_FORKvariable entirely, or - Set to false: Change the
ENABLE_CI_IN_FORKvalue tofalse
Alternative Testing Options
You don't always need to enable CI/CD in your fork. Here are alternatives:
Local Testing
Run tests locally before pushing:
# Install dependencies
npm ci
# Run linting
npm run lint
# Run format check
npm run format:check
# Run validation
npm run validate
# Build the project
npm run build
Pull Request CI
When you open a Pull Request to the main repository:
- All CI/CD workflows automatically run
- You get full validation of your changes
- No configuration needed
GitHub Codespaces
Use GitHub Codespaces for a full development environment:
- All tools pre-configured
- Same environment as CI/CD
- No local setup required
Frequently Asked Questions
Q: Will my PR be tested even if CI is disabled in my fork?
A: Yes! When you open a PR to the main repository, all CI/CD workflows run automatically, regardless of your fork's settings.
Q: Can I selectively enable specific workflows?
A: The ENABLE_CI_IN_FORK variable enables all workflows. For selective control, you'd need to modify individual workflow files.
Q: Do I need to enable CI in my fork to contribute?
A: No! Most contributors never need to enable CI in their forks. Local testing and PR validation are sufficient for most contributions.
Q: Will disabling CI affect my ability to merge PRs?
A: No! PR merge requirements are based on CI runs in the main repository, not your fork.
Q: Why was this implemented?
A: With over 1,600 forks of BMAD-METHOD, this saves thousands of GitHub Actions minutes monthly while maintaining code quality standards.
Need Help?
- Join our Discord Community for support
- Check the Contributing Guide for more information
- Open an issue if you encounter any problems
💡 Pro Tip: This fork-friendly approach is particularly valuable for projects using AI/LLM tools that create many experimental commits, as it prevents unnecessary CI runs while maintaining code quality standards.