shepherd

command module
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 5, 2013 License: MIT Imports: 6 Imported by: 0

README

Shepherd

Shepherd is configuration and server management wrapped in an easy to use, straightforward package.

Install

RPM based systems
# rpm -i http://netserious.com/downloads/shepherd-0.5.0-1.x86_64.rpm
Debian
# wget http://netserious.com/downloads/shepherd_0.5.0_amd64.deb
# dpkg -i shepherd_0.5.0_amd64.deb
Mac OS X

Download the latest pkg from http://netserious.com/downloads and double click on the installer.

Configuration Examples

To run these examples save them in a file and run shepherd followed by the name of the file(s) to run. For example if you created a file named web_servers.js you would call:

shepherd web_servers.js

Install packages on Debian based systems:

apt("example-pkg")
// Install multiple packages
apt(["example-pkg", "example-pkg2"])

Create 100 directories:

for (var i = 0; i<100; i++) {
	directory("test"+i)
}

Create a PostgreSQL user and database:

user = "example"

pg_user(
	user,
	"password",
	{
		username: "postgres",
		password: "",
		host: "localhost",
		port: 5432,
		ssl: false
	}
)

pg_database(
	"example",
	user,
	{
		username: "postgres",
		password: "",
		host: "localhost",
		port: 5432,
		ssl: false
	}
)

Create an operating system user:

user(
	"user1",
	{
		homeDir: "/home/user1",
		shell: "/bin/bash",
		uid: 500,
		gid: 500
		password: "$6$somegiantcrazyhashthathasbeencryptedorsomething"
	}
)

Check out more examples in the examples directory.

Current Features

  • Create your server configuration in javascript
  • Create OS users
  • Create MySQL databases and users
  • Create PostgreSQL databases and users
  • Enforce standard configuration files with templating
  • Single native binary with low overhead

Planned Features

  • Server implementation that can manage thousands of clients over http/https with very low overhead.
  • Run ad-hoc tasks over one or thousands of servers instantly.
  • *BSD support

Current Limitations

  • A limited set of actions are currently available.
  • Only actively developed on Linux.
  • No tests and limited testing at the moment.
  • Little code documentation.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL