Sha256: 3479992909eacd53dc4de9547b2bbbf744f09cadab71581049afd698f96e1730

Contents?: true

Size: 1.68 KB

Versions: 1

Compression:

Stored size: 1.68 KB

Contents

catfish
=======

Catfish is a command line tool and set of associated Vagrantfile templates that makes provisioning existing servers with vagrant-managed-servers easy. It is designed from the ground up to be cross-platform, with first class support for Windows, Linux, and Mac.

## Installation

Add this line to your application's Gemfile:

```ruby
gem 'catfish'
```

And then execute:

    $ bundle

Or install it yourself as:

    $ gem install catfish

## Usage

### Initialize your repository
Initialize a catfish repository in the current directory, which will create a
Catfishfile and a Vagrantfile at a minimum.

    $ catfish init

Specify connection options for ssh

    $ catfish init --ssh-username=YOUR_USERNAME --ssh-private-key-path=YOUR_SSH_KEY_PATH

Include two shell provisioners

    $ catfish init --provisioners=shell --shell-paths=./script/a.sh ./script/b.sh

### Add the target servers in your Catfishfile

```ruby
server 'myserver1.mydomain.com'
server 'myserver2.mydomain.com'
```

### Provision your servers

    $ catfish provision

And you can even run the provisioning in parallel

    $ catfish provision --parallel

### Plugins
You can have catfish ensure that vagrant plugins are installed via the 'plugin'
directive in your Catfishfile.

```ruby
plugin 'vagrant-hostmaster'
```

    $ catfish plugin

### Getting help

    $ catfish help

## TODO

- Puppet provisioner support
- Add some spec tests

## Contributing

1. Fork it ( https://github.com/chrisbaldauf/catfish/fork )
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create a new Pull Request

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
catfish-0.0.5 README.md