Blog / Devops

How to deploy encrypted copies of your SSL keys and other files with Ansible and OpenSSL

April 5, 2014

I've been working on fully automating server provisioning and deployment of my Django app, GlucoseTracker, the last couple of weeks with Ansible. Since I made this project open-source, I needed to make sure that passwords, secret keys, and other sensitive information are encrypted when I push my code to my repository.

Of course, I have the option to not commit them to the repo, but I want to be able to build …

Deploying your Django app with Fabric

January 25, 2014

I’ve been making quite a bit of improvements and changes to my Django app, GlucoseTracker, lately that the small amount of time I spent creating a deployment script using Fabric had already paid off.

Fabric is basically a library written in Python that lets you run commands on remote servers (works locally as well) via SSH. It’s very easy to use and can save you a lot of time. It eliminates the need to …

A simple Python script for backing up a PostgreSQL database and uploading it to Amazon S3

January 10, 2014

Here’s a very simple Python script I currently use to create a compressed PostgreSQL database backup for my Django app. Since my database is very small and I don’t see it becoming big anytime soon, I create the backup locally and send a copy to Amazon S3.

To keep it very simple, I have it set to do hourly backups for 24 hours and daily backups for 1 year (365 days). For the hourly …

Launching a new Django project: GlucoseTracker

January 1, 2014

I finally launched a project I’ve been working on the last couple of months just in time for the new year. It’s a web application for tracking blood glucose levels using all open source software: Python, Django, Twitter Bootstrap 3, PostgreSQL, Nginx, Gunicorn, and a bunch of others.

I originally started this project over 2 years ago to teach myself how to use the Django web framework, but I lost interest at some point …

Auto-deploy your Django app to Heroku with Travis CI on git push

December 3, 2013

I was setting up a demo site for my latest open-source project, GlucoseTracker, a few weeks back and decided to run it on Heroku. The free tier (called ‘Hobby Dev’) allows 10,000 rows in a PostgreSQL database and 20 concurrent connections, which is more than good enough for me at this point.

I thought about using Jenkins CI to do the deployment to Heroku initially, but as I was installing it on my …