Reputation: 2764
Is there an alternative to the capistrano-chef gem for chef-solo? Mostly, to avoid defining server information twice.
Upvotes: 5
Views: 1817
Reputation: 1048
I found something fresh and hot on the topic:
Gemfile:
gem 'roundsman', :require => false
Capfile:
require 'roundsman/capistrano'
See readme for details.
Upvotes: 5
Reputation: 2764
I decided to write a ruby gem to parse the files in nodes/*.json
and transform them to Capistrano-friendly addresses:
Then, in the cap deploy file:
require "Chef_Solo_Nodes"
role :app, *Chef_Solo_IPs('app')
role :db, *Chef_Solo_IPs('db')
Which is equivalent to:
role :app, "user@host:port", "xx.xx.xx.xx"
role :db, "xx.xx.xx.xx"
Each node/*.json
file can optionally define attributes:
Upvotes: 0