Continuous Integration and Deployment using Debian, Jenkins, Capistrano, NodeJS and Git

This series of entries provide a short tutorial on how to install Jenkins and Capistrano on a Debian machine; and how to integrate the two to continuously integrate and deploy NodeJS applications. The following topics are covered: Continuous Integration and Delivery Processes, Install and Configure Jenkins and Capistrano, Prepare your NodeJS Project and Create Capistrano […]

Create Jenkins Jobs using Capistrano 3 for NodeJS

Final component of the Continuous Integration and Deployment process using Capistrano and Jenkins, is …Jenkins. Jenkins is an open source Continuous Integration services tool, that allows users to define a set of tasks to be run either manually, or triggered by 3rd party applications. This page presents how to integrate Jenkins and Capistrano 3; in […]

Install Capistrano 3 on Debian

This entry shows which steps to follow when installing Capistrano 3 on Debian. Root level access is required, on the same Jenkins machine used here. NOTE: Capistrano 3 requires Ruby >= 1.9. If Ruby 1.8 is installed, follow these steps to remove it, and install Ruby 1.9: Based on http://makandracards.com/makandra/1104-upgrade-from-ruby-1-8-7-to-ruby-1-9-2-on-ubuntu 1. Remove ruby1.8: apt-get remove […]

Tools for Agile: Capistrano

In my previous six entries, I focused on presenting the main Agile methodologies, and their concepts. In the following entries, I will focus on tools that enable Agile; providing a quick introduction without going in technical details. The first tool in this series is Capistrano. Written in Ruby, Capistrano is an Open Source tool, used […]

Continuous Integration and Deployment Processes

The practice of Continuous Integration ensures that code is constantly merged and tested, allowing a team of developers to share work and find issues early in the process. Continuous Deployment enables the business to constantly deliver features, capture customer feedback, and adjust accordingly. Various engineering practices facilitate the two: TDD, proper branching models, workflows and […]