Source Control Integrations
Zenfra connects to your version control system to pull infrastructure code for each run. Source control integrations are managed from the Integrations page.
Supported providers
| Provider | Status |
|---|---|
| GitHub | Supported |
| GitLab | Coming soon |
| Bitbucket | Coming soon |
| Azure DevOps | Coming soon |
GitHub
GitHub is Zenfra's primary source control integration. It uses a GitHub App to access your repositories securely.
Connecting GitHub
- Navigate to Integrations in the sidebar.
- Find GitHub under Source Control Integrations and click to connect.
- You will be redirected to GitHub to authorize the Zenfra GitHub App.
- Select which repositories or organizations to grant access to.
- Once authorized, the integration will show as Connected.
What the integration provides
Once connected, you can:
- Select repositories when creating stacks
- Zenfra pulls source code from the specified branch and project root for each run
- Repository links in the stack detail page link directly to GitHub
Managing the integration
Click the connected GitHub integration to view its details. You can manage which repositories the integration has access to from the integration settings or directly in your GitHub App settings.
Filtering integrations
The Integrations page supports:
- Text filter — search providers by name
- Provider filter — filter by provider type
- Status filter — filter by connection status
How source code is used in runs
When a run is triggered, Zenfra:
- Clones the specified branch of your repository
- Navigates to the configured project root path
- Bundles the source code and sends it to the assigned worker
- The worker downloads and extracts the source bundle during the Preparing phase
This ensures each run uses the exact code from your repository at the time the run was triggered.