Commit graph

65 commits

Author SHA1 Message Date
Victor Volle
c170107eef Digitalocean tags (replaces #4209) (#4218)
* Fixes #4117: Add DigitalOcean Tag support

* Add GPLv3 license header and RETURN documentation

* ansible.module_utils.urls instead of "requests"
2016-08-30 19:54:46 +01:00
Matías Pizarro
521c9a2e20 Use named parameters in new_droplet method call (#4483)
This mirrors the original method signature and guards against any
change in order parameter
2016-08-30 11:56:09 +02:00
nishiokay
a24398d025 Add ipv6 paramater to digital_ocean module (#4447) 2016-08-19 09:07:47 +02:00
Andrei Lukovenko
3945794704 Bug: repeatable invocation with state=present leads to (#3052)
[localhost]: FAILED! => {"changed": false, "failed": true, "msg":
"'Domain' object has no attribute 'id'"}

How to reproduce:

- name: create domain
  digital_ocean_domain: state=present name=DOMAIN_NAME ip=DROPLET_IP

- name: create domain
  digital_ocean_domain: state=present name=DOMAIN_NAME ip=DROPLET_IP

Problem: DigitalOcean API changed API
(https://developers.digitalocean.com/documentation/v2/#list-all-domain-records)
2016-07-17 15:24:22 +02:00
Andrei Lukovenko
ff223ee14c Bug: invocation with state=absent always leads to (#3051)
[localhost]: FAILED! => {"changed": false, "failed": true, "msg":
"'Domain' object has no attribute 'id'"}

How to reproduce:

- name: create domain
  digital_ocean_domain: state=present name=DOMAIN_NAME ip=DROPLET_IP

- name: destroy domain
  digital_ocean_domain: state=absent name=DOMAIN_NAME

Problem: DigitalOcean API accepts domain name, not record ID
(https://developers.digitalocean.com/documentation/v2/#delete-a-domain)
2016-07-11 01:26:31 +02:00
codemeup @ Work
27ad29d376 Fixing compile time error exception handling for python 3. (#3843) 2016-06-02 14:51:35 -07:00
Mike Caspar
7cc00bddc0 Documentation updates to use complete YAML : syntax instead of key=val syntax.
Adjusted example to use "" where appropriate to pass YAML Syntax checker per Contribution guidelines.

See Issue [# 2879](https://github.com/ansible/ansible-modules-core/issues/2879)
2016-02-10 10:02:38 -05:00
James Cammarata
4089f4af30 Fixing user_data version_added
Fixes #2634
2016-02-07 15:27:27 -05:00
Brian Coca
c428483b24 updated docs to denote retirement of v1 api and clarify when and why auth fields have changed 2015-11-26 09:41:33 -08:00
Lippy Lee
b2ace272a5 Make digital_ocean_domain use API v2 2015-11-25 22:10:31 +08:00
Brian Coca
9c30ef8926 doc updates
- added version_added to new api_token
- updated notes to explain API issues, option switch and versions affected.
2015-11-25 23:48:02 -08:00
Kamil Madac
f9a6c898b4 Fixed bug, when MX records pointed to ORIGIN(@) caused unintentional change of random A record. 2015-06-28 21:50:11 +02:00
Greg DeKoenigsberg
28a869a030 Updating cloud modules with proper github author information 2015-06-15 14:41:22 -04:00
James Cammarata
576ca33bdc Fixing digital_ocean documentation and a bug in os_subnet 2015-05-12 10:32:43 -05:00
Toshio Kuratomi
60a66a544d Several cleanups to many modules:
* Fix docs to specify when python2.6+ is required (due to a library
  dep).  This helps us know when it is okay to use python2.6+ syntax in
  the file.
* remove BabyJson returns.  See #1211  This commit fixes all but the
  openstack modules.
* Use if __name__ == '__main__' to only run the main part of the module
  if the module is run as a program.  This allows for the potential to
  unittest the code later.
2015-05-11 12:15:53 -07:00
Romain Dartigues
3c848289a0 Issue #1161 DigitalOcean API 2 ssh_key_ids problem
* fix documentation: show a valid syntax
* make ssh_key_ids a list and not a string
2015-04-19 19:25:15 +02:00
Tor Åke Fransson
360409cee8 Merge remote-tracking branch 'origin/devel' into digitalocean-user-data
Conflicts:
	cloud/digital_ocean/digital_ocean.py
2015-03-26 14:05:57 +01:00
Tor Åke Fransson
3f17ec489b Remove all reference to obsolete client_id and rename api_key to the for v2 more correct api_token 2015-03-26 13:56:39 +01:00
Tor Åke Fransson
41875984e5 Make digital_ocean ssh command use API v2 2015-03-26 09:57:35 +01:00
Brian Coca
79844506db Merge pull request #341 from axilleas/digitalocean_docs
digital_ocean: Add note about using API v1
2015-03-25 15:16:03 -04:00
Tor Åke Fransson
69911ec86e WIP: DigitalOcean API version 2 with user_data option 2015-03-25 16:43:11 +01:00
Edward
3fbfd7351b Fixes #816 Backups not enabled on new droplets.
Convert backups_enabled string to lowercase. Similar to fix for private
networking.
2015-02-18 21:23:11 -05:00
Ryan Rawson
0162fc525d Fixes #581 - digitalocean module cannot create private_networking=true droplets 2015-01-21 16:04:15 -08:00
Achilleas Pipinellis
cab378bff6 Add note about using version 1 of DigitalOcean API. 2014-11-17 17:01:26 +02:00
Sam Kottler
7b875dbda5 Remove trailing whitespace in digital_ocean_domain 2014-11-15 16:21:07 -05:00
Nejc Zupan
6f6eca5b4e digital ocean: Remove unsupported states 2014-11-15 16:12:46 -05:00
Brian Coca
19ed60196c added __init__.py to new cloud subcategories so builds work again 2014-11-05 11:07:19 -05:00
Brian Coca
0c4adcb2c6 made subcategories for cloud modules for better organization 2014-11-04 11:18:09 -05:00
Michael DeHaan
c8e1a2077e file extensions! 2014-09-26 10:37:56 -04:00
Michael DeHaan
417309a626 Restructuring. 2014-09-26 10:13:26 -04:00
Michael DeHaan
73123b69fa Move modules into subdirectory. 2014-09-26 09:23:50 -04:00
Richard C Isaacson
04c75500a2 Bulk update of choices=BOOLEANS to type='bool' 2014-03-11 15:42:45 -05:00
James Tanner
1deff2061a Update docstring in digital_ocean for backups_enabled version_added 2014-03-11 12:17:29 -04:00
jctanner
ba04c99517 Merge pull request #5935 from zimbatm/do-backups
library/digital_ocean: Adds the missing backups_enabled create option
2014-03-11 12:16:12 -04:00
Michael DeHaan
b56f49c1d3 Merge pull request #6104 from gianlucaborello/digitalocean_fix_deletion
Make sure droplet deletion works even when idempotency is achieved using 'name' and 'unique_name' rather than 'id'
2014-03-11 10:20:43 -05:00
Markus Amalthea Magnuson
a26d118859 Touch up documentation strings for DigitalOcean. 2014-03-08 12:40:45 +01:00
Gianluca Borello
0ebbd6e754 Make sure droplet deletion works even when idempotency is achieved using 'name' and 'unique_name' rather than 'id' 2014-02-20 22:17:55 -08:00
zimbatm
7acbba5108 library/digital_ocean: Adds the missing backups_enabled create option 2014-02-10 17:35:10 +00:00
Timur Batyrshin
9ad52632c5 reword "except Error as e:" into "except Error, e:" to be compatible with Python 2.5 (#5852) 2014-02-03 13:00:40 -06:00
Rene Moser
0e5d5ad65b digital_ocean: added requirements in DOCUMENTATION 2014-01-21 14:09:21 +01:00
Michael DeHaan
50c600c361 Pass scrub_data by default, see response from DO here: https://www.digitalocean.com/blog 2013-12-30 20:21:15 -05:00
Michael DeHaan
3fd2e55619 User report of DO not taking underscores so tweaking docs 2013-12-25 13:51:56 -05:00
James Tanner
4f9aadcc07 Addresses #5023 Fix import comments 2013-12-02 15:13:49 -05:00
James Tanner
38edad70ac Fixes #5023 Convert all modules to use new snippet import pattern 2013-12-02 15:11:23 -05:00
Michael DeHaan
05251f2745 Merge pull request #4346 from dmkoch/digitalocean-droplet-options
Add "virtio" and "private_networking" options for DigitalOcean droplets
2013-10-14 17:05:06 -07:00
Michael DeHaan
beae21dd40 Remove examples of module antipattern of setting the choices array for boolean types. 2013-10-11 08:45:13 -04:00
Daniel Koch
5d02fb6ca1 Add check to make sure dopy is at least version 0.2.2 for digital_ocean module 2013-10-02 20:29:35 -04:00
Daniel Koch
a650b899c6 Add "virtio" and "private_networking" options for DigitalOcean droplets
The dopy manager defaults to False for virtio, but the DigitalOcean web interface defaults to True, which is a pretty safe default and sensible considering the performance gains.

Private networks are a new feature currently available only in the NYC2 region as of Oct 2, 2013.

NOTE: dopy >= 0.2.2 is required for these options to work.
2013-10-02 18:06:35 -04:00
James Cammarata
8ba5ed4d68 Added a version_added string to the new digital_ocean module param 2013-09-25 16:49:48 -05:00
Ralph Bean
1d0a7baaa1 Add a new unique_name param to the digital_ocean module for idempotence.
As it stands now, it is difficult to write idempotent tasks for digital
ocean droplets.  Digital ocean assigns new nodes a random id when they
are provisioned and that id is the only key that can be used to identify
it in subsequent runs of that play.

The workflow previously involved manual intervention:

- write a play defining a new node with no specified id
- run it, collect the randomly assigned id by hand
- modify the play to add the id by hand so future runs don't create
  duplicate nodes
- perform future re-runs that check if the node exists (by its id)
  - if it does exist then do nothing.
  - if it does not exist, then create it and return a *new random id*
  - collect the new random id by hand, modify the playbook file, and
    start all over.

Its a huge pain.

The modifications in this commit allow you to use the 'hostname' as a
primary key for idempotence with digital ocean.  By default, digital
ocean will let you create as many hosts with the same hostname as you
like.  Here, we provide an option to constrain the user to using only
unique hostnames.

The workflow will now look like:

- write a play defining a new node with a specified hostname and
  "unique_name: true""
- run it, create the new node and move on.
- re-run it, notice that a node with that hostname is already created
  and move on.
2013-09-18 16:07:22 -04:00