-
Create a new Github App
-
Give the app the following permssions:
- Repository administration: Read-only
- Checks: Read-only
- Repository contents: Read & write
- Issues: Read & write
- Repository metadata: Read-only
- Pull requests: Read & write
- Repository webhooks: Read-only
- Commit statuses: Read & write
- Organization hooks: Read-only
-
Give the app the following webhook subscriptions
- Commit comment
- Issue comment
- Pull request
- Pull request review
- Push
- Pull request review comment
- Status
-
Generate a private key for the github app
-
Save the private key in a private place, for example
./secrets/github-private-key.pem
Note We will be using the body of the pem:-----BEGIN RSA PRIVATE KEY----- <ONLY THIS PART> -----END RSA PRIVATE KEY----- -
Add your new app to a repo you want Miro to work on
-
Extract your app's installation id as explained here, we'll call this env var
GITHUB_INSTALLATION_ID -
In your github app's page, generate some secret key in the
Webhook secret (optional)option. -
Start a mongodb instance, for example
docker run --name a-mongo -p 27017:27017 -d mongo -
Start a tunnel (for example ngrok) on port
5000 -
In your App general settings, change the
Webhook URLtohttps://<your-public-url>/api/webhooks/incoming/github -
Pull + Run the
soluto-mirodocker image:
docker run \
-e "MONGO_CONNECTION_STRING=<your-mongo-instance-including-port>" \
-e "ASPNETCORE_ENVIRONMENT=Production" \
-e "WEBHOOKS__DISABLEHTTPSCHECK=true" \
-e "WEBHOOKS__GITHUB__SECRETKEY__DEFAULT=<your webhook secret>" \
-e "GITHUB_INSTALLATION_ID=<your-installation-id>" \
-e "GITHUB_PEM_SECRET=<your-pem-without-the-header-and-footer>" \
-p 5000:80 \
soluto-miro- Create a Pull-request in your repo, and type
miro info
- MONGO_CONNECTION_STRING: Required - Your mongo connection string
- GITHUB_PEM_SECRET: Required -
- GITHUB_INSTALLATION_ID: Required -
- WEBHOOKS__GITHUB__SECRETKEY__DEFAULT: Required
- WEBHOOKS__DISABLEHTTPSCHECK: Required
- API_KEY: Optional - If you'd like to protect the Miro API with a hard-coded api-key
Show developers this Repo's rockin Miro, put this shield at the top of your repo -
[](https://github.com/Soluto/Miro)