Skip to content

erulabs/pantsjs

Repository files navigation

Pants.js Build Status

An application deployment tool for the Cloud Era!

by Seandon 'Eru' Mooy -> seandon.mooy@gmail.com -> http://github.com/erulabs

pants.js

deploy:
	-> Warn if uncommited changes exist
	-> read Pantsfile
	-> npm test - warn/stop if failed tests
	-> ssh to systems
	-> if Pantsfile specifies system requirements or state, run them
	-> pull repo
	-> npm install
	-> npm test - warn/stop if failed tests
	-> change symlink (cap structure)

prep:
	-> all of deploy, does not activate symlink

rollback:
	-> ssh to systems
	-> change symlink back one deployment (or to specified deployment)

highstate:
	-> ssh to systems
	-> run highstate

state:
	-> ssh to systems
	-> run specified state

list:
	-> ssh to systems
	-> list available deployments

activate:
	-> ssh to systems
	-> change symlink to specified deployment


EXAMPLES
	-> pants production deploy
	-> pants production rollback

	-> pants production test highstate
	-> pants production test state nginx
	-> pants production test prep v0.0.1
	-> pants production prep v0.0.1
	-> pants production list
	-> pants production activate v0.0.1
	-> pants production rollback
	-> pants production deploy v0.0.2


	deploy, prep, activate, rollback all take a TAGNAME argument. If not specified, will use the longform date

pants = require 'pants'

production = pants.stage 'production', { provider: 'rackspace' username: 'SOMENAME' apiKey: 'SOME_API_TOKEN' }

production.stack = { os: 'Linux' flavor: 'Ubuntu' version: '14.04' # Or, if you know your provider uses exact IDs for images: imageID: 'SOME-UUID-GOES-HERE' # You can also define required specs, in a vague sense: flavor: '4gb' # Or, as above, by UUID if you know the exact provider details: flavorID: 'SOME-UUID-GOES-HERE' }

production.scale = (network) ->

dev = pants.stage 'testing', { provider: 'ssh' target: 'deploy@testing.server.com' }

About

PantsJS - An application deployment tool for the Cloud Era!

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors