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.

Continue reading Create Jenkins Jobs using Capistrano 3 for NodeJS

Create Capistrano Recipes for NodeJS Applications

This, and the following entry, are the main focus of this tutorial. Here you will learn how to create a Capistrano project, recipe – for deploying your application code, run tests, stop and restart the NodeJS server; and maintain roles. The assumptions are that git, npm and NodeJS are already installed on target servers, and your code is hosted in a git repository.

Continue reading Create Capistrano Recipes for NodeJS Applications

Install Jenkins on Debian

Installing Jenkins on Debian is a trivial task – a package is available, through aptitude, and default configuration is sufficient. This tutorial does not cover advanced security topics. By default, port 8080 is open and no authentication required – this poses a major security risk; thus if you rely solely on the instructions below, you should not expose your Jenkins server on an external network. Basic authentication instructions are provided. Root level access is required.

Continue reading Install Jenkins on Debian

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 VCS best practices. 

Continue reading Continuous Integration and Deployment Processes

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.

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

Tools for Agile: Puppet

Capistrano provides server automation; by running a set of predefined scripts on remote servers. Puppet is a tool providing configuration management, provisioning and reporting. Puppet Enterprise extends Puppet by adding application deployment. Below is a quick introduction to what Puppet is, how is used and links to tutorials. 

Continue reading Tools for Agile: Puppet