Managing environments
Environments:
If your configuration file contains a key called "Environment", AppHarbor will replace its value:
Example:
<appSettings>
<add key="Environment" value="Debug"/>
</appSettings>
When you push you code, we'll replace the value "Debug" depending on the current environment: While running unit tests "Environment" is set to "Test" and when your application is deployed and is running on a server, "Environment" equals "Release".
Use this key to handle environment specific settings in your code.
Configuration Variables

You can set configuration variables for your application. When you add a configuration variable, we'll look for the key in any config file's AppSettings section and replace or add the value with the one defined on AppHarbor when your application is released.
Connectionstring replacement for Sequelizer: If you
want connectionstrings from the Sequelizer add-on inserted into the
connectionStrings element of your application
configuraition (and not just not appSettings), please
see the Using
Sequelizer guide.
Configuration variables are a great to use one set of values when running your app locally and another set of values when your app is deployed to AppHarbor. It's also a great way to keep sensitive login information out of source control.
Configuration transformation
Configuration file transformation is supported on all .config files that have a corresponding .release.config file. We'll run the configuration file transformation before deploying your code. We have built a transformation tester to help you debug your transforms.
Deploy from non-default branch
By default, AppHarbor will build the tips of all branches
pushed. By default, only commits from the master branch (i.e. the
one named default, master or
trunk) is deployed. If you want AppHarbor to deploy
from a branch with a different name (eg. production),
you can specify a tracking branch in your application settings on
the AppHarbor dashboard.
OutDir
When building your code, AppHarbor will override the value of
the OutDir macro.
This may cause problems if you have build events that rely on this
value.
Commit Id
The build's commit id is injected into appSettings just like the
configuration variables mentioned above. The key is
appharbor.commit_id and the value is the commit id.
This can be useful for invalidating cache etc.