Articles on Deployment

Prakash Venkatraman

Prakash Venkatraman

How to Deploy Elixir Releases with Ansible

In my last post, I described how to generate a platform-specific Elixir release. Now, the only thing left to do is to put it on the world wide web. To follow along with this post, you’ll need a few things: An IP address for a remote machine (preferably running Linux) you want to deploy your

Elixir-Docker-Carbon Five
Prakash Venkatraman

Prakash Venkatraman

Cross-Platform Elixir Releases with Docker

While releases are meant to be self-contained executables, they still call out to native system libraries to do things like open TCP sockets and write to files. That means that the native libraries referenced at compile time need to be exactly the same as the ones on your target machine. Unless you can guarantee that your workstation and cloud are exactly the same, releases can seem like only half the promise of a stress-free deployment.

Rit Li

Rit Li

Running Multiple Versions of Postgres with Docker Compose for Local Development

Say we have Project X and Project Y that require Postgres 9 and Postgres 10 respectively. These projects aren’t using Docker to manage their Postgres dependency so it is up to each developer to manage this themselves. How do we get different versions of Postgres running simultaneously on our workstation without making any modifications to

Jonah Williams

Jonah Williams

Minimizing downtime when deploying to Heroku

Heroku has become our default hosting platform for most new projects. It’s simple to deploy new rails apps, encourages some good conventions, is able to provide the services most applications need, and can offers a simple scaling solution which can usually handle whatever growth new products are able to produce. We also like automated and

Jonah Williams

Jonah Williams

Automated ad hoc builds using Xcode 4

I’ve previously discussed Continuous Integration for iPhone Projects in TeamCity using Xcode 3 and Building Xcode 4 Projects from the Command Line. Now I’ll tie those together and use TeamCity to automatically create ad hoc builds I can install over the air (directly onto a device without using iTunes) every time I check in code.

Jonah Williams

Jonah Williams

Building Xcode 4 projects from the command line

The Xcode 4 developer tools introduced some changes to the xcodebuild command line tool. Instead of specifying a project and target developers can now provide a workspace and scheme to build.

Dark colors
Jonah Williams

Jonah Williams

Deploying to Heroku from TeamCity

Previously I discussed our TeamCity configuration using RVM and mentioned that we often use git to deploy projects. Today I’ll share an example of how a TeamCity build agent can trigger deployments of a application hosted on Heroku and some of the challenges I found.

Jonah Williams

Jonah Williams

Using RVM on TeamCity build agents

We have been using TeamCity to manage the continuous integration, testing, and deployment of many of our recent projects. We have also been using RVM on all of our recent Rails projects to allow us to install multiple ruby versions and create isolated gemsets for each project. RVM proved to be particularly useful on our

Alex Cruikshank

Alex Cruikshank

Screw.Unit JS Testing in Maven: javascript-test-maven-plugin

I’ve written a maven plugin to integrate Screw.Unit javascript tests into a maven build. The project is inspired by the Blue Ridge testing framework for Rails, but it’s a bit more light-weight by design.

Jonah Williams

Jonah Williams

Automatically deploying to Engine Yard Cloud

I’m working on a application which is deployed to Engine Yard’s Cloud infrastructure and I wanted to automatically redeploy the application whenever our tests passed on our continuous integration server. Engine Yard will eventually allow us to push a branch to our cloud environment from git (ie “git push engineyard master”) but until that is