/el-patron

Application to manage pools of locks

Primary LanguageHaskell

El Patrón

Application to manage pools of locks. Read more about pools and locks here

Deploy to Kubernetes using helm

  1. Create a Github OAuth App:
    • Homepage URL must be root of whatever domain you use
    • Authorization callback URL must be http://YOUR-DOMAIN/auth/page/github/callback
  2. Create a file (say el-patron-secrets.yml) with these values:
    elPatron:
      authorizedTeam: <Github ORG/Team Name> # Members of this team will have access to El Patrón
      githubClientId: <OAuth client ID>
      githubClientSecret: <OAuth client secret>
      remote: git@github.com:<OWNER>/<LOCKS_REPO>
      privateKey: <private key with rights to push to locks repo>
  3. Install using helm
helm install deploy/kubernetes/helm/el-patron --namespace el-patron -f el-patron-secrets.yml

Push to Cloud Foundry

  1. Create a Github OAuth App:
    • Homepage URL must be root of whatever domain you use
    • Authorization callback URL must be http://YOUR-DOMAIN/auth/page/github/callback
  2. Copy manifest.yml.exmaple to manifest.yml
  3. Fill in all the values in env in manifest.yml
  4. cf push <name>

Run locally

  1. Install stack
  2. Install elm
  3. Install create-elm-app
  4. Clone the code
  5. Build elm code
    cd el-patron/elm
    elm app build
    cd ..
  6. Build haskell code
    stack build
  7. Execute
    stack exec el-patron \
    --remote git@github.com:akshaymankar/test-locks \
    --private-key /ssh/id_rsa \
    --github-client-secret <GITHUB-CLIENT-SECRET> \
    --github-client-id <GITHUB-CLIENT_ID> \
    -t 'ORG/TEAM' \
    -e ./elm/build