Skip to content

Before creating your container, you'll need to create a GitHub app for your organisation.

From GitHub, click on your profile picture and chose "Settings":

Step 1

Then "Developer settings" from the left-hand menu:

Step 2

Then "GitHub Apps":

Step 3

And create a new GitHub app:

Step 4

Give it a name, and a homepage URL. The callback URL is the important bit. It needs to be in this form:

[your-nx-cloud-url]/callbacks/github-user
# for example
https://my.nx-enterprise.url:8080/callbacks/github-user

Configure a webhook and give it a secret: (the URL needs to match https://<your-NxCloud-instance-URL>/nx-cloud/github-webhook-handler)

Step 5

Configure permissions before subscribing to events. GitHub only shows event subscriptions for the permissions you've granted, so the "Organization" event won't appear until you've enabled the corresponding organization permission.

See the GitHub App Permissions reference for the full list of required permissions and a detailed breakdown of what each one is used for.

Once permissions are set, subscribe to the "Organization" events:

Step 5.1

Once you create the app, keep a note of the Client ID and App ID:

Step 6

Then generate a new client secret, and save it somewhere secure (we'll use it in a bit):

Step 7

Finally, scroll down and download a private key:

Step 7

Then navigate to your download location locally and stringify the contents of the private key:

Terminal window
awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}' your-key.pem # keep a note of the output

Save the output of the above, as we'll also use it in a bit.

Provide the following values to your developer productivity engineer so they can help connect Nx Cloud to your custom GitHub app:

  • Github App Client ID
  • Github App Client Secret
  • Github App App ID
  • Github App Private Key
  • GitHub App Webhook Secret