Commit graph

67 commits

Author SHA1 Message Date
James Cammarata
8afa090417 Resolving differences in core modules post-merge 2016-12-08 11:25:36 -05:00
Toshio Kuratomi
7319104552 Refreshed metadata for core modules 2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
8b7db84e91 Native YAML - cloud/google/gce.py (#5800) 2016-12-08 11:25:34 -05:00
Dag Wieers
54fdff16db Performance improvement using in-operator on dicts
Just a small cleanup for the existing occurrences.

Using the in-operator for hash lookups is faster than using .keys()
http://stackoverflow.com/questions/29314269/why-do-key-in-dict-and-key-in-dict-keys-have-the-same-output
2016-12-08 11:25:31 -05:00
Sam Doran
38c0769abb Examples syntax batch5 (#5622)
* Change example syntax on supervisorctl module

* Change example syntax or _ec2_ami_search module

* Change example syntax on cloudformation module

* Change example syntax on ec2 module

* Change example syntax on ec2_facts module

* Change example syntax on ec2_eip module

* Change example syntax on rds module

* Change example syntax on route53 module

* Change example syntax on s3 module

* Change example syntax on digital_ocean module

* Change example syntax on docker_service module

* Change example syntax on cloudformation module

* Change example syntax on gc_storage module

* Change example syntax on gce module

* Change example syntax on gce_mig module

* Change example syntax on _glance_image module

* Change example syntax on _keystone_user module

* Change example syntax on _nova_keypair module

* Change example syntax on _quantum_floating module

* Change example syntax on _quantum_floating_ip_associate module

* Change example syntax on _quantum_network module

* Change example syntax on _quantum_router module

* Change example syntax on _quantum_router_gateway module

* Change example syntax on _quantum_router_interface module

* Change example syntax on _quantum_subnet module

* SQUASH _quantum_subnet

* Add missing quotes
2016-12-08 11:25:31 -05:00
Tom Melendez
b85bcb71c3 Support for named_ports in Managed Instance Groups. A libcloud guard has been implemented, as this feature will only be available in libcloud >= 1.3, or by using trunk. (#5167) 2016-12-08 11:25:26 -05:00
John Baublitz
352b620665 GCE: Add support for 'number' parameter for manually provisioned Google Compute clusters (#4276)
* Add option for number parameter to generate manually provisioned clusters from a base name

* Refactor code to work with starting and stopped when number is specified

* Update docs

* Fix documentation error breaking Travis

* Fixes for async gce operations

* Fix documentation

* base_name from parameter to alias for name and fixes for renaming variables

* Fix breaking change on gce.py

* Fix bugs with name parameter

* Fix comments for Github build checks

* Add logic to set changed appropriately for cluster provisioning
2016-12-08 11:25:22 -05:00
Tom Melendez
a4077537e0 Added libcloud guard for Managed Instance Groups. (#4911) 2016-12-08 11:25:20 -05:00
Tom Melendez
72635db94d GCE module examples update. Correct syntax, demonstrate other options and creation of multiple instances. (#5192) 2016-12-08 11:25:20 -05:00
Tom Melendez
ea76dedadf Support for GCE Managed Instance Groups. (#4541)
Create, Delete, Resize and Recreate (of instances) supported.  Autoscalers are also supported.
2016-12-08 11:25:09 -05:00
Tom Melendez
35acdec063 Document ability to disable external IP with 'none' setting. Closes #2562. (#4878) 2016-12-08 11:25:06 -05:00
John Baublitz
fe09641476 Doc update 2016-12-08 11:24:45 -05:00
John Baublitz
c8dc0bf5c9 Fix exception handling to be compatible with Python 3 2016-12-08 11:24:45 -05:00
John Baublitz
4b11312737 Additional error handling for corner cases like deleting networks with active subnetworks 2016-12-08 11:24:45 -05:00
John Baublitz
e4697c3780 Documentation 2016-12-08 11:24:45 -05:00
John Baublitz
96599a5963 Logic to allow subnet creation 2016-12-08 11:24:45 -05:00
John Baublitz
5591e6bb0b Add error handling for specifying 'mode' with insufficiently recent libcloud 2016-12-08 11:24:45 -05:00
John Baublitz
9c9b22dc8f Changes to allow 'auto' mode which does not allow IP address specification 2016-12-08 11:24:45 -05:00
John Baublitz
839871d87b Support for newer networking modes in GCE 2016-12-08 11:24:45 -05:00
John Baublitz
906b457bf1 Collapse boilerplate code into change_instance_state function 2016-12-08 11:24:45 -05:00
John Baublitz
eb97165acc Add states for stopping and starting machines 2016-12-08 11:24:44 -05:00
Tom Melendez
067bb6ec01 Added helper function and logic to sort attributes before comparing. 2016-12-08 11:24:44 -05:00
Tom Melendez
8becd9a14d Allow GCE firewall rules to be updated when attributes changes. Fixes #2111.
Previously, when the attributes of a GCE firewall change, they were ignored.  This PR changes that behavior and now updates them.

Note that the "update" also removes attributes that are not specified.

An overview of the firewall rule behavior is as follows:

1. firewall name in GCP, state=absent in PLAYBOOK: Delete from GCP
2. firewall name in PLAYBOOK, not in GCP: Add to GCP.
3. firewall name in GCP, name not in PLAYBOOK: No change.
4. firewall names exist in both GCP and PLAYBOOK, attributes differ: Update GCP to match attributes from PLAYBOOK.
2016-12-08 11:24:44 -05:00
nitzmahone
570defc6d8 correct gs_storage docs to match reality 2016-12-08 11:24:35 -05:00
Gilles Gagniard
bbfea348df better error message if libcloud is not recent enough to use gce subnetworks 2016-12-08 11:24:34 -05:00
Gilles Gagniard
152a713fd3 fix documentation to reflect subnetwork option is new in ansible 2.2 2016-12-08 11:24:34 -05:00
Gilles Gagniard
3404c0891b Initial support for specifying in which subnetwork a gce instance should be created. This is required for non-legacy networks. 2016-12-08 11:24:34 -05:00
@
13bebda244 Fixing gce compile time errors irt exception handling for Python 3 (#3845) 2016-12-08 11:24:34 -05:00
Anton Simernia
1aa1b617f5 Update gc_storage.py (#3802) 2016-12-08 11:24:33 -05:00
Toshio Kuratomi
291e00d43a Docs fixes 2016-12-08 11:24:28 -05:00
curious-eyes
5b88ad45ef Add preemptible option on gce.py 2016-12-08 11:24:14 -05:00
curious-eyes
e16367739e Fix #2761: gce.py - UnboundLocalError: local variable 'md' 2016-12-08 11:24:10 -05:00
Tim Alkemade
be19982313 GCE module does not fetch disk images if not necessary 2016-12-08 11:24:09 -05:00
daniel-sc
f654bd45f8 Allowing specifying ip by address 2016-12-08 11:23:59 -05:00
daniel-sc
40565b7293 Allowing to specify specific external ip for gce instances 2016-12-08 11:23:59 -05:00
Marios Andreopoulos
1ae765d61f fix: do not set scopes account to service account used for instance creation 2016-12-08 11:23:58 -05:00
Vic Iglesias
353db36515 Update GCE PEM deprecation text and examples 2016-12-08 11:23:56 -05:00
Vic Iglesias
612d9c3e92 Use credentials_file for GCE module auth config 2016-12-08 11:23:55 -05:00
Toshio Kuratomi
7a492764d0 Fix up documentation 2016-12-08 11:23:54 -05:00
Pedro Romano
bcae9a2b5e GCE libcloud 0.15 support and code cleanup * Code formatting (indentation and white space) fixes for improved PEP8 conformity. * Remove redundant backslashes inside parentheses. * Test for object identity should be 'is not None'. * Test for membership should be 'not in'. * Fit docstring to the PEP8 79 character limit. * Use forward compatible Python 2.6+ 'except .. as' syntax for exception handling. * Support libcloud > 0.15 'metadata' argument format. 2016-12-08 11:23:53 -05:00
Jumpei Ogawa
ebb0d6301d Add explanation in case that ipv4_range is required 2016-12-08 11:23:51 -05:00
Jumpei Ogawa
256c840942 Add better error message when specified network doesn't exist and ipv4_range is not specified 2016-12-08 11:23:51 -05:00
Till Backhaus
e005ef0c36 Delete dead and broken code 2016-12-08 11:23:33 -05:00
khassen
8b60dd349d Use the common/shared MD5 function. 2016-12-08 11:23:25 -05:00
Alan Scherger
861d260b6c fix docs; only delete network if fwname is not provided 2016-12-08 11:23:23 -05:00
HelenaTian
1b614172f5 Update gce.py to correctly handle propagated metadata type from a mother template
My project is using Ansible to automate cloud build process. Ansible has a core module gce.py for managing GCE instances.
  We've come across a use case that's not yet supported - when executing ansible-playbook, if a child template is included, then metadata which is defined in and propagated from the mother template is treated as string type and not parsed correctly(which instead is dictionary type), and triggers release flow failure.
   We currently put some fix by explicitly casting metadata to string type in our own branch, but would like to contribute the fix to Ansible so that everyone onboarding GCE and using Ansible for release management could benefit from it, or hear owner's opinion on fixing the issue if there's a better fix in owner's mind:)
2016-12-08 11:23:23 -05:00
James Cammarata
5cd3c6ebe6 Update choices and version_added for new gce.py param service_account_permissions 2016-12-08 11:23:11 -05:00
Vasyl Kaigorodov
758688a667 GCE module: added Service Account permissions sanity checks 2016-12-08 11:23:10 -05:00
Vasyl Kaigorodov
4400c5e163 GCE module: document Service Account permissions parameter usage 2016-12-08 11:23:10 -05:00
Vasyl Kaigorodov
97e880a27f GCE module: add posibility to specify Service Account permissions during instance creation 2016-12-08 11:23:10 -05:00