Merge branch 'ocean' into devel

Conflicts:
	library/cloud/digital_ocean
This commit is contained in:
Michael DeHaan 2013-06-19 21:53:33 -04:00
commit faaa90ed03
2 changed files with 34 additions and 6 deletions

View file

@ -1,13 +1,17 @@
#!/bin/bash #!/bin/bash
# usage: source ./hacking/env-setup [-q] # usage: source env-setup [-q]
# source hacking/env-setup [-q]
# . ./env-setup [-q]
# . ./hacking/env-setup [q]
# modifies environment for running Ansible from checkout # modifies environment for running Ansible from checkout
# When run using source as directed, $0 gets set to bash, so we must use $BASH_SOURCE # When run using source as directed, $0 gets set to bash, so we must use $BASH_SOURCE
if [ -n "$BASH_SOURCE" ] ; then case "$0" in
HACKING_DIR=`dirname $BASH_SOURCE` (bash)
else HACKING_DIR=${BASH_SOURCE%/*};;
HACKING_DIR="$PWD/hacking" (*)
fi HACKING_DIR=${0%/*};;
esac
# The below is an alternative to readlink -fn which doesn't exist on OS X # The below is an alternative to readlink -fn which doesn't exist on OS X
# Source: http://stackoverflow.com/a/1678636 # Source: http://stackoverflow.com/a/1678636
FULL_PATH=`python -c "import os; print(os.path.realpath('$HACKING_DIR'))"` FULL_PATH=`python -c "import os; print(os.path.realpath('$HACKING_DIR'))"`

View file

@ -131,6 +131,30 @@ EXAMPLES = '''
size_id=1 size_id=1
region_id=2 region_id=2
image_id=3 image_id=3
=======
- digital_ocean: state=present command=ssh name=my_ssh_key ssh_pub_key='ssh-rsa AAAA...' client_id=XXX api_key=XXX
If a key matches this name, will return the ssh key id and changed = False
If no existing key matches this name, a new key is created, the ssh key id is returned and changed = False
# Create a new Droplet
- digital_ocean: state=present command=droplet name=my_new_droplet client_id=XXX api_key=XXX size_id=1 region_id=2 image_id=3 wait_timeout=500
Will return the droplet details including the droplet id (used for idempotence)
# Ensure a droplet is present
- digital_ocean: state=present command=droplet id=123 name=my_new_droplet client_id=XXX api_key=XXX size_id=1 region_id=2 image_id=3 wait_timeout=500
If droplet id already exist, will return the droplet details and changed = False
If no droplet matches the id, a new droplet will be created and the droplet details (including the new id) are returned, changed = True.
# Create a droplet with ssh key
- digital_ocean: state=present ssh_key_ids=id name=my_new_droplet client_id=XXX api_key=XXX size_id=1 region_id=2 image_id=3
The ssh key id can be passed as argument at the creation of a droplet (see ssh_key_ids).
Several keys can be added to ssh_key_ids as id1,id2,id3
The keys are used to connect as root to the droplet.
''' '''
import sys import sys