Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Running Mezzanine CMS on Redhat Openshift Express
Python Shell


Running on OpenShift

Create an account at

Create a wsgi-3.2 application

    rhc-create-app -a blog -t wsgi-3.2

Add this upstream mezzanine-openshiftrepo

    cd blog
    git remote add upstream -m master git://
    git pull -s recursive -X theirs upstream master
Then push the repo upstream

    git push

That's it, you can now checkout your application at (default admin account is admin/admin):



Feel free to change or remove this file, it is informational only.

Repo layout
wsgi/ - Externally exposed wsgi code goes
wsgi/static/ - Public static content gets served here
libs/ - Additional libraries
data/ - For not-externally exposed wsgi code - Standard, specify deps here
../data - For persistent data (also env var: OPENSHIFT_DATA_DIR)
.openshift/action_hooks/build - Script that gets run every push, just prior to
    starting your app

Environment Variables

OpenShift Express provides several environment variables to reference for ease
of use.  The following list are some common variables but far from exhaustive:

    os.environ['OPENSHIFT_APP_NAME']  - Application name
    os.environ['OPENSHIFT_APP_DIR']   - Application dir
    os.environ['OPENSHIFT_DATA_DIR']  - For persistent storage (between pushes)
    os.environ['OPENSHIFT_TMP_DIR']   - Temp storage (unmodified files deleted after 10 days)

When embedding a database using rhc-ctl-app, you can reference environment
variables for username, host and password:

    os.environ['OPENSHIFT_DB_HOST']      - DB host
    os.environ['OPENSHIFT_DB_PORT']      - DB Port
    os.environ['OPENSHIFT_DB_USERNAME']  - DB Username
    os.environ['OPENSHIFT_DB_PASSWORD']  - DB Password

To get a full list of environment variables, simply add a line in your
.openshift/action_hooks/build script that says "export" and push.

Notes about layout
Please leave wsgi, libs and data directories but feel free to create additional
directories if needed.

Note: Every time you push, everything in your remote repo dir gets recreated
please store long term items (like an sqlite database) in ../data which will
persist between pushes of your repo.

Notes about

Adding deps to the install_requires will have the openshift server actually
install those deps at git push time.
Something went wrong with that request. Please try again.