Configure GitHub
Configure GitHub for OpenFaaS Cloud
This guide is for connecting your self-hosted OpenFaaS Cloud to GitHub.
We will cover creating and configuring a GitHub App for webhooks and events and then a GitHub OAuth app for logging in to OpenFaaS Cloud with your GitHub Account.
Create a GitHub App
Click on Profile -> Settings -> Developer Settings
Click GitHub Apps and New GitHub App
Enter your details
Fill out "GitHub App Name", "Webhook URL" and leave the secret blank for now.
Example webhook URL: https://system.YOURDOMAIN.TLD/github-event
- Set the Permissions as follows
Checks: Read & Write
Commit Statuses: Read & Write
Repository contents: Read-only
No User permissions are required
Update "Subscribe to events" and select "Push" and "Repository"
- Set the app to be installed on Any account
Finally click Create GitHub App
Navigate to your App's page on GitHub
Click "Generate a private key". A file will be downloaded, rename it to
private-key.pem
and place it in~/Downloads
.
Note down your App's ID from this page
Take a note of the URL for your "Public Page", you will need to share this with your users
Install your App
Click Install App, then navigate to one of your GitHub repos or organisations and install the App onto selected repositories.
- Diagostics
At any point you can return to this page and click "Advanced" here you can expand the requests and responses of all webhooks generated by your App.
It is highly recommended to enable authentication through OAuth. To set it up follow the steps in the next section. If you have decided not to configure OAuth then you can finish here.
That's it, you can now input this data into the ofc-bootstrap 1-click tool, or follow the developer instructions in the openfaas-cloud repo.
Create a GitHub OAuth integration (optional)
We will now create a GitHub OAuth integration so that we and our users can log into OpenFaaS Cloud using our GitHub account.
Click on Profile -> Settings -> Developer Settings
Click OAuth Apps and New OAuth App
Fill out the form
Set the Application Name as Login to My OpenFaaS Cloud
Set the Homepage URL to https://www.openfaas.com/
Set your Authorization URL to https://auth.system.domain.tld/
where domain.tld is the domain name you are using for OpenFaaS Cloud
Click Register Application
Collect your
client_id
andclient_secret
That's it, you can now input this data into the ofc-bootstrap 1-click tool, or follow the developer instructions in the openfaas-cloud repo.