Prerequisites
- A Factory account with admin privileges
- Admin access to your GitHub organization
Integration Steps
1
Access Factory Platform
Log in to your Factory account and navigate to the Integrations section in your Settings.
2
Initiate GitHub Integration
Click on “Connect” next to Github to start the integration process. Select Manage Github Permissions.
3
Authorize Factory's GitHub App
You’ll be redirected to GitHub. Click “Authorize” to allow Factory’s secure OAuth2 GitHub Application access to your organization.
4
Configure Repository Access
Select the repositories you want Factory to access. You can choose specific repositories or grant access to all current and future repositories.
5
Set Up Permissions
Factory requires specific permissions to function optimally. Review and approve the following permissions:
- Actions and Metadata (Read Access): Allows Factory to access GitHub Actions data for understanding CI processes and diagnosing test failures.
- Code (Read and Write Access): Necessary for Factory to review code and create pull requests. Note that Factory cannot merge code autonomously.
- Commit Statuses (Read and Write Access): Enables Factory to track and update commit statuses.
- Discussions (Read and Write Access): Allows Factory to analyze and participate in repository discussions.
- Issues (Read and Write Access): Enables Factory to interact with issues for automated ticket handling.
- Pull Requests (Read and Write Access): Necessary for Factory to analyze and facilitate code reviews.
- Workflows (Read and Write Access): Allows Factory to manage and potentially correct failed CI runs.
6
Confirm Integration
After granting permissions, you’ll be redirected back to Factory. Confirm that the integration status shows as “Connected”.
Verification
To ensure the integration is working correctly:- Create a test repository or use an existing one with minimal sensitive data.
- Initiate a simple workflow, such as creating a pull request.
- Verify that Factory can access and interact with the repository as expected.
Best Practices
- Regularly review and audit the permissions granted to Factory.
- Use repository-specific settings to fine-tune access levels for sensitive projects.
- Keep your GitHub organization’s security settings up-to-date.
Troubleshooting
If you encounter issues during integration:- Ensure you have the necessary admin rights on both Factory and GitHub.
- Check GitHub’s audit logs for any permission-related issues.
- Verify that your organization doesn’t have conflicting third-party application restrictions.
Security and Compliance
Learn about Factory’s security measures and how we protect your data