If you need to set some environment variables in your GEAR you can use an action hook.
The pre-start action hook will serve you well but if you need to restore those variables after a gear restart, pre-start action hook won’t work.
Post-restart action hook, on the other hand, will execute its actions but I haven’t managed to get the environment variables working. After its execution all environment variables that should have a value were empty.
What I did was to modify pre-start action hook to create environment variables as files under $HOME/.env/user_vars
# Actual script export OPENSHIFT_POSTGRESQL_DB_HOST="xxx.xxx.xxx.xxx" export OPENSHIFT_POSTGRESQL_DB_PORT="***" export OPENSHIFT_POSTGRESQL_DB_NAME="***" export OPENSHIFT_POSTGRESQL_DB_USERNAME="***"" # Added script for post restart variables echo "xxx.xxx.xxx.xxx" > OPENSHIFT_POSTGRESQL_DB_HOST echo "***" > OPENSHIFT_POSTGRESQL_DB_PORT echo "***" > OPENSHIFT_POSTGRESQL_DB_USERNAME echo "***" > OPENSHIFT_POSTGRESQL_DB_PASSWORD
After this, if you execute gear restart, the environment variables will exist and will be accesible from your application.