Skip to content

Latest commit

 

History

History
43 lines (28 loc) · 2.26 KB

heroku.md

File metadata and controls

43 lines (28 loc) · 2.26 KB

Setting up gu:who on Heroku

Follow the Heroku Quick-Start guide to get your development environment setup with Heroku.

Deploy

Manual Instructions

Create a new Heroku app (eg gu-who-nologo), and push a clone of the gu:who repository to the Heroku Git url to deploy the app (you'll see lots of dependencies downloaded, could take ~5 minutes):

$ git clone https://github.com/guardian/gu-who.git
$ cd gu-who
$ git push [email protected]:gu-who-nologo.git main

Set a Heroku config var (required for Scala Play framework apps), APPLICATION_SECRET (more details here):

$ heroku config:set APPLICATION_SECRET=somethingreallylongandobscure?ABC:jfk

After Heroku deploy completes, your instance of gu:who should be available:

https://gu-who-nologo.herokuapp.com/

At this point, pasting a valid GitHub access token into gu:who and executing an audit will work, end to end. However, if you want to use the slightly more convenient 'Log In via GitHub` method to authenticate via OAuth V2, you'll need to register your instance of gu:who as an application in your GitHub settings.

  • Application name: gu:who
  • Homepage URL: https://gu-who-nologo.herokuapp.com/ (replace with your own URL)
  • Application description: gu:who is an audit bot for the membership of our GitHub Organisation
  • Authorization callback URL: https://gu-who-nologo.herokuapp.com/oauth/callback

You now need to tell your Heroku instance the Client ID & Client Secret credentials, which will be visible in your GitHub application settings. The Heroku command is just:

$ heroku config:set --app gu-who-nologo GITHUB_APP_CLIENT_ID=0123456789abcdef GITHUB_APP_CLIENT_SECRET=0123456789abcdef01234567890abcdef

You've now got a fully configured Heroku gu:who Heroku instance - but don't forget to setup the people Git repository in whatever GitHub organisation you'll be auditing as well!