/eden

Interact with any Open Service Broker API to discover/provision/bind/unbind/deprovision hundreds of different services.

Primary LanguageGoMIT LicenseMIT

eden

Interact with any Open Service Broker API to discover/provision/bind/unbind/deprovision hundreds of different services.

Installation

For Ubuntu/Debian:

wget -q -O - https://raw.githubusercontent.com/starkandwayne/homebrew-cf/master/public.key | sudo apt-key add -
echo "deb http://apt.starkandwayne.com stable main" | sudo tee /etc/apt/sources.list.d/starkandwayne.list
sudo apt-get update
sudo apt-get install eden

For Mac OS using Homebrew:

brew install starkandwayne/cf/eden

For FreeBSD using pkg:

pkg install eden

For FreeBSD using ports:

cd /usr/ports/www/eden
make install

From source using Golang:

go get -u github.com/starkandwayne/eden

Usage

Use environment variables to target an Open Service Broker API:

export SB_BROKER_URL=https://mybroker.com
export SB_BROKER_USERNAME=username
export SB_BROKER_PASSWORD=password

To see the available services and plans:

eden catalog

To create (provision) a new service instance, and to generate a set of access credentials (bind):

export SB_INSTANCE=my-db-name
eden provision -s servicename -p planname
eden bind

To view the credentials for your binding:

eden credentials

To extract a single credentials, say a fully formed uri, you can use eden credentials --attribute uri:

For example, to provision a PostgreSQL service, generate bindings, and use them immediately with psql:

export SB_INSTANCE=pg1
eden provision -s postgresql96
eden bind
psql `eden creds -a uri`

CLI flags and environment variables

In addition to using env vars, you can use CLI flags. See eden -h and eden <command> -h for more details.