NoteGitHub Enterprise is only supported on env zero Organizations signed up for our Self-Hosted Agent.Supported GitHub Enterprise Server versions are:
- 2.21.13 and above
- 3.x
GitHub Enterprise Setup
For env zero to be able to clone your code and post back commit statuses when running Plan on Pull Request you need to create and install a personal env zero GitHub App on your organization. This only needs to be done once per GitHub Server.-
Create GitHub App
- Name your GitHub app env zero
- Set Homepage URL to https://env0.com
- Skip ahead to the Webhooks section
- Make sure Active is checked
- You will now need to set the Webhook URL and Secret.
- To fetch these, go to the VCS Create Connection.
- Skip ahead to the Repository permissions section and grant the following permissions:
- Checks - Read and write
- Contents - Read-only
- Deployments - Read and Write
- Metadata - Read-only
- Pull requests - Read and Write
- Skip ahead to the Subscribe to events section and check the following:
- Push
- Pull Request
- Pull request review comment - In case you want to enable Plan and Apply from PR comments
- On โWhere can this GitHub App be installed?โ Check โAny account - Allow this GitHub App to be installed by any user or organization.โ. Note however - currently you may only install the app on a single organization of your choice on your GitHub Enterprise instance
- Click โCreate GitHub Appโ
- Make a note of the App ID
- Scroll all the way down and โClick the Generate a private keyโ. A pem file will be downloaded and saved on your computer. Youโll need it later.
- Under the โDisplay informationโ, click the โUpload a logoโฆโ button and upload a logo (Optional)
-
On the lefthand side menu, click on Install App to install the app on any organization of your choice
- Grant env zero access to all or selected repositories in the organization.
- Ensure you have granted permission for any organizationโs repository you need access to. If permission is not granted for a specific repository, you may encounter a โNot Foundโ error at certain points.
-
Youโll need the following set as Helm values when installing the env zero agent:
githubEnterpriseAppId
- The App ID from step 1.8githubEnterpriseAppPrivateKeyEncoded
- The content of the pem file downloaded in step 1.9 Please base64 encode it before setting itgithubEnterpriseAppInstallationId
- (Optional) You can restrict permissions to a single installation ID through this configuration.
NoteIf deploying via Docker, DO NOT base64 encode the following keys:
githubEnterpriseAppClientSecretEncoded
githubEnterpriseAppPrivateKeyEncoded
Encode to Base64You can open browser Dev Tools - go to console and useto encode the string to base 64On Mac
values.yml
.env