Managing Heroku Configuration

Which Heroku configuration variables are managed by salt-proxy?

The following Heroku application configuration variables are managed by salt-proxy:

What pillar file needs to be modified?

In order for changes you make to app.json to be reflected in a Heroku application configuration variables, the keys/values need to be added to the app’s respective pillar file below:

What is the process to add/modify a Heroku configuration variable?

  1. Ensure that the Heroku app you are interested in is managed by salt-proxy
  2. If the value for the key being added/modified is the same for all envs (CI/RC/Production), then just add the key/value under heroku:config_vars. If the values differ for each env, then add the key/value under each env and reference it under heorku:config_vars
  3. Submit a PR so that someone in DevOps reviews it
  4. Once PR is merged, the change takes place the next time the salt-proxy’s scheduled tasks runs. Currently, that happens every 5 days. If that’s too long, please add a note in the PR and someone from DevOps can trigger the salt state to run.

What about secret values?

We use Vault to manage secrets and if one of the values modified should be managed by Vault, simply follow the Vault paths in the existing pillar files and if you need some additional clarification, please don’t hesitate to ask someone from DevOps.

A Vault environment exsists at each level and should be available with limited access via GitHub authentication.