vRealize Automation 8.x - Setup GitHub Integration
vRealize Automation (vRA) 8.x provides native integration to GitHub.com to share and sync your Blueprints and Action Based Extensibility (ABX) scripts. This integration is provided as a way to edit your blueprints and ABX scripts as Infrastructure as Code (IaC) objects and for vRA to then consume the changes once they are updated and committed to your repository. This integration is not designed as a way to backup or export your content to GitHub. Integration in vRA 8.0 / vRA 8.0.1 is only available to GitHub.com and not GitHub Enterprise Cloud or GitHub Enterprise Self-Hosted.
Create a GitHub.com Personal Access Token
To provide the vRA portal access to your GitHub.com repositories, you must create a Personal Access Token and provide the token to the vRA portal. To create a Personal Access Token, log into your GitHub.com account and navigate to Settings > Developer Settings > Personal access tokens (or click here). Select the Generate new token button and you may be asked to confirm your password again. On the New personal access token page, in the Note field select a meaningful name, such as "vRA 8 Repo Access" and select the permissions you require. For my environment, I have only provided the "Full control of private repositories" checkbox as I require access to my private and public repos.
Once selected, click Generate Token and copy the token that is generated and record it somewhere safe. It can not be retrieved later, but can be regenerated if required.
GitHub.com Token: a79ac9a10840be26d153d0ecca88a13a69c5094d
Configure the vRA Portal
To set up this integration, log into the vRA Portal, and select Cloud Assembly > Infrastructure > Connections > Integrations. Select Add Integration > GitHub. The Server URL must remain untouched as https://api.github.com and the Token field should be filled with the Token you just generated. Note that GitHub Enterprise is not supported in vRA 8.0. Validate the credentials, provide a meaningful name and click Add.
Once the integration is added, open the integration and navigate to the Projects tab. Select Add Project, select the project you want to integrate with and click Next. Enter the repository details as below but for your own GitHub environment. Note that blueprints and ABX scripts are handled separately so will require setup for both individually. The below is a public repo if you want to test the integration yourself.
Type: Action based scripts
Once both have been added, a sync will automatically run and you should see the below.
As you can see from the above image, the sync has found 2 ABX actions on my GitHub repo and has synced this to vRA. These ABX scripts are now available for consumption in the Extensibility > Library > Actions view.