#!/bin/bash
_____ _ _____ _
| __ \(_) | __ \ | |
| | | |_ __ _ _ __ __ _ ___ | | | | ___ _ __ | | ___ _ _
| | | | |/ _` | '_ \ / _` |/ _ \ | | | |/ _ \ '_ \| |/ _ \| | | |
| |__| | | (_| | | | | (_| | (_) | | |__| | __/ |_) | | (_) | |_| |
|_____/| |\__,_|_| |_|\__, |\___/ |_____/ \___| .__/|_|\___/ \__, |
_/ | __/ | | | __/ |
|__/ |___/ |_| |___/
Automate your Django deployments.
- Python 3.4+
- Django 1.9+
- Virtualenv
- Apache 2
releases/
...
app_20170125105811
app_20170127122310
app_20170128113401
current --symlink--> releases/app_20170128113401 # latest release
- Clone this repository in the production/test server;
- Set the directory structure of the server in the
config_base.sh
file; - Enter the app and repository info in the
config_app.sh
file; - Give the
deploy.sh
andclean.sh
executable (chmod u+x
) permission; - Run the
deploy.sh
script to deploy- When running it for the first time, this script will make the initial setup;
- Consecutive runs will deploy a release to the
releases
dir and set the last one ascurrent
.
- Run
clean.sh
to delete old releases.