diff --git a/README.md b/README.md index be51dfc9..e3233a7d 100644 --- a/README.md +++ b/README.md @@ -64,6 +64,11 @@ Before using `ExMoney`, please make sure that `Saltedge` supports your bank [her Please check the [wiki page](https://github.com/gaynetdinov/ex_money/wiki) which describes how to use `ExMoney`. +You can deploy your own app instance on Heroku using this button, but make sure that you configure *Heroku Scheduler* addon manually afterwards - +consult [wiki](https://github.com/gaynetdinov/ex_money/wiki) for details. No need to run local instance though. + +[![Deploy](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy) + ## Current state Currently `ExMoney` is a work-in-progress/prototype/'works on my machine' stage. diff --git a/app.json b/app.json new file mode 100644 index 00000000..2628d861 --- /dev/null +++ b/app.json @@ -0,0 +1,47 @@ +{ + "name": "ExMoney", + "description": "A self-hosted personal finance app", + "repository": "https://github.com/gaynetdinov/ex_money", + "keywords": ["financial", "money", "personal"], + "buildpacks": [ + {"url": "https://github.com/HashNuke/heroku-buildpack-elixir.git"}, + {"url": "https://github.com/gjaldon/heroku-buildpack-phoenix-static.git"} + ], + "addons": [ + "heroku-postgresql", + { + "plan": "scheduler", + "options": { + "__TODO": "properly add the job here?", + "__job": { + "frequency": "daily", + "command": "elixir lib/scripts/wakeup.exs" + } + } + } + ], + "env": { + "SECRET_KEY_BASE": { + "description": "Can be generated by running 'mix phoenix.gen.secret', or auto-generated", + "generator": "secret" + }, + "CLIENT_ID": { + "description": "Grab it from your Saltedge profile: https://www.saltedge.com/clients/profile/secrets" + }, + "SERVICE_SECRET": { + "description": "Grab it from your Saltedge profile: https://www.saltedge.com/clients/profile/secrets" + }, + "SALTEDGE_KEY": { + "description": "Generate it with OpenSSL (https://docs.saltedge.com/guides/signature/) and copy&paste here" + }, + "HOME_URL": { + "description": "Hostname for your app e.g 'myapp.herokuapp.com'" + }, + "TZ": { + "description": "Your timezone, e.g. 'Europe/Berlin'" + } + }, + "scripts": { + "postdeploy": "mix ecto.migrate" + } +}