Skip to content

Latest commit

 

History

History
80 lines (60 loc) · 2.7 KB

File metadata and controls

80 lines (60 loc) · 2.7 KB

halalivery-server

Build Status Built with

Django REST server for the Halalivery project.. Check out the project's documentation.

Prerequisites

Local Development

Build the server:

docker-compose build

Start the dev server for local development:

docker-compose up

Run a command inside the docker container:

docker-compose run --rm web [command]

Continuous Deployment

Deployment is automated via Travis. When builds pass on the master or qa branch, Travis will deploy that branch to Heroku. Follow these steps to enable this feature.

Initialize the production server:

heroku create halalivery-server-prod --remote prod && \
    heroku addons:create newrelic:wayne --app halalivery-server-prod && \
    heroku addons:create heroku-postgresql:hobby-dev --app halalivery-server-prod && \
    heroku config:set DJANGO_SECRET_KEY=`openssl rand -base64 32` \
        DJANGO_AWS_ACCESS_KEY_ID="Add your id" \
        DJANGO_AWS_SECRET_ACCESS_KEY="Add your key" \
        DJANGO_AWS_STORAGE_BUCKET_NAME="halalivery-server-prod" \
        DJANGO_CONFIGURATION="Production" \
        DJANGO_SETTINGS_MODULE="halalivery-server.config" \
        --app halalivery-server-prod

Initialize the qa server:

heroku create halalivery-server-qa --remote qa && \
    heroku addons:create newrelic:wayne --app halalivery-server-qa && \
    heroku addons:create heroku-postgresql:hobby-dev --app halalivery-server-qa && \
    heroku config:set DJANGO_SECRET_KEY=`openssl rand -base64 32` \
        DJANGO_AWS_ACCESS_KEY_ID="Add your id" \
        DJANGO_AWS_SECRET_ACCESS_KEY="Add your key" \
        DJANGO_AWS_STORAGE_BUCKET_NAME="halalivery-server-qa" \
        DJANGO_CONFIGURATION="Production" \
        DJANGO_SETTINGS_MODULE="halalivery-server.config" \
        --app halalivery-server-qa

Securely add your Heroku credentials to Travis so that it can automatically deploy your changes:

travis encrypt HEROKU_AUTH_TOKEN="$(heroku auth:token)" --add

Commit your changes and push to master and qa to trigger your first deploys:

git commit -a -m "ci(travis): add Heroku credentials" && \
git push origin master:qa && \
git push origin master

You're now ready to continuously ship! ✨ 💅 🛳