1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
Commit graph

1971 commits

Author SHA1 Message Date
Sloane Hertel
11c292bac2 route53_facts: add example for how to use next_marker option - fixes #23625 (#23802)
* Add example for using route53 next_marker option

* make route53_facts pep8 and remove from legacy files
2017-04-20 16:34:43 -04:00
Matt Babineau
4914164717 Typo (#23778)
Missed that D...
2017-04-20 10:36:09 -07:00
Loïc Blot
504a768636 Show UUID instead of name when using UUID to select snapshot (#23787) 2017-04-20 11:11:04 +01:00
Abhijeet
cc745b0224 Minor typo in vmware_guest_facts (#23791)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-04-20 11:04:03 +01:00
Sloane Hertel
d63af51f90 s3_sync: removing irrelevant s3.list_buckets() call - fixes #23409 (#23492)
* Removing irrelevant s3 call

Fix exception handling

Make s3_sync pep8 and remove from legacy file
2017-04-18 16:49:10 -04:00
Daniel Shepherd
698fa37a44 [cloud] Fix #23152 in route53 module and pep8 cleanup (#23156)
update module to support more standard state=present/absent syntax

update module to use required_if, required_together, mutually_exclusive functions where possible

per ryansb review: make documentation section more clear, fix some extra quotes, remove FIXME comment

pre willthames review: force private_zone to True if vpc_id is set and fix word wrap
2017-04-18 11:49:25 -04:00
Will Thames
9229d53143 [cloud] Add ec2_vpc_dhcp_options_facts check mode (#23106)
* Support check mode in ec2_vpc_dhcp_options_facts

As a facts module, ec2_vpc_dhcp_options_facts supports check mode
by default

* ec2_vpc_dhcp_options_facts tidy up

Use named method imports, move imports to top of code
Use shared code to handle filters and tags
Use snake case for parameter names while retaining backward compatibility
2017-04-18 08:56:38 -04:00
Dag Wieers
071903b868 vmware_guest_snapshots: Add delegate_to directive to examples (#22933)
Without it it is not doing what most people would expect.
2017-04-18 12:53:55 +00:00
Bradley Phipps
abf5d6e682 eu-west-1a is an availability zone, not a region. (#23557) 2017-04-13 12:11:00 -07:00
Łukasz Kostka
94bd647bc0 Fix alarm action comparison (#23523)
This fixes issue when list from module contains more than one element.
Ansible and/or boto may put same elements in list in different order,
thus resulting task as changed.

Fixes #3310
2017-04-13 11:27:48 -07:00
Patrick Marques
731fc288fa fixes #4441 passing subnet_name parameter (#18920) 2017-04-12 10:58:56 -07:00
Jamie Lennox
92dc61e869 Allow modifying security groups in os_server (#23207)
When the security groups specified to the os_server module change they
should be updated on the server. This will require shade 1.19 where the
server security group commands were added.

Fixes: #23206
2017-04-12 18:19:15 +02:00
Abhijeet Kasurde
db6d818865 Fix atomic pylint issues
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-04-11 16:26:51 -07:00
Sloane Hertel
2f64e2c7fb [cloud] ec2_asg: check autoscaling group for tags before trying to use them - partially fixes #23234 (#23259)
* check autoscaling group for tags before trying to use them

* Add warning

fix comparison
2017-04-11 16:15:05 -04:00
Sloane Hertel
5f517fdfa9 [cloud] route53_zone: allow split horizon for route53_zone and refactor - fixes #22939 (#23190)
* allow split horizon for route53_zone and refactor

* fix documentation

remove comment

fix version_added

* Remove unused imports

* Only include zone as matching if it has the same privacy setting

* Use `.endswith` instead of indexing into a string

* Update public zone behavior to only create new if there is no matching public zone

* Remove from legacy PEP8 files
2017-04-11 16:02:14 -04:00
Khachatur Nazaretyan
e8f1747a88 Adds attached volumes to instance facts (#23132)
* Adds attached volumes to instance facts

* Fixed identation and modified coding style

* includes revisions after maintainers review

* Coding style modified

* simplifies getting items from dict
2017-04-09 11:59:41 +02:00
Dag Wieers
a075c56dbf vmware_guest_facts: Add delegate_to directive to example (#22931)
Without it, this is not going to do what most people expect.

This fixes #22840
2017-04-08 07:10:35 +01:00
Dag Wieers
3648e6fd2b vmware_guest: Add delegate_to directive to examples (#22932)
Without this it is likely not going to do what people expect.
2017-04-07 18:17:18 +01:00
Matt Clay
48eeab8a53 Fix errors reported by pylint. (#23282)
* Fix pylint misplaced-bare-raise errors.
* Fix pylint return-in-init error.
* Fix pylint bad-format-character error.
* Fix pylint too-many-format-args errors.
* Fix pylint too-few-format-args errors.
* Fix pylint truncated-format-string error.
2017-04-06 16:58:16 -07:00
Takuya Sato
dff35bc205 ecs_taskdefinition module : Convert environment variables to string (#23297)
Before modification, it fails unless it is a string type
2017-04-06 10:46:40 +01:00
Will Thames
b3a15e9ac3 [cloud] New AWS ec2_vpc_endpoint module for creating/deleting VPC endpoints (#20212)
* New AWS VPC Endpoint module for creating and deleting VPC endpoints

* Fix for python3, update version_added, fix flake8 issues

Change exception syntax for python 3
Update version_added to 2.3
Fix some minor flake8 issues

* ec2_vpc_endpoint: improve standards compliance

* Better documentation
* Return results in camel case format
* Improved exception handling
* Added `policy_file` argument
* Add ANSIBLE_METADATA

* Fix version_added

* Update ansible metadata to have metadata_version field
2017-04-05 08:28:52 -04:00
Matt Clay
a6ca849643 Fix PEP 8 issues. 2017-04-04 12:22:47 -07:00
Rob
7e3af115ce Add ability to use either sec group name or sec group id or combinati… (#21049)
* Add ability to use either sec group name or sec group id or combination to ec2_lc. Also fix header size in AWS Guidelines

* Fix ec2 import to only import neccessary packages. Remove pep8 double line
2017-04-04 14:11:21 -04:00
Brian Coca
2f3ca66fbf fixed version 2017-04-04 14:09:28 -04:00
anryko
bd05c653fd ec2_group: add ports and multiple source lists (#19888). 2017-04-04 14:09:24 -04:00
Brian Coca
7d64ac95df doc notes 2017-04-04 14:08:07 -04:00
Mark Chappell
c5edaf5e68 ec2_lc.py: Also pass 'encrypted' when adding a volume
This only allows for using the default KMS keys, but enables encryption
at rest without needing to migrate the module to boto3
2017-04-04 14:07:03 -04:00
rmcintosh
312494d452 Add support for custom kernelid specification in Linode module 2017-04-04 10:50:39 -07:00
bentaylornz
95c1b07bdb [cloud] re-raise boto ClientError if throttling timeout is reached in efs.py (#23109)
* re-raise exception as expected

The current ThrottlingException handling code hides other actual exceptions from the user, and basically goes infinite loop instead. eg when the api caller doesn't have permission (example below) to use the api, ansible effectively hangs. adding the re-raise stops execution and shows the error to the command line as expected

can test by removing permission to the efs api, and calling the efs: module

The error was: botocore.exceptions.ClientError: An error occurred (AccessDeniedException) when calling the DescribeFileSystems operation: User: <x> is not authorized to perform: elasticfilesystem:DescribeFileSystems on the specified resource

* PEP8 fix
2017-04-04 08:41:20 -04:00
Will Thames
bded5ac987 [cloud] Support check_mode for ec2_vpc_subnet_facts (#23111)
* Support check_mode for ec2_vpc_subnet_facts

facts modules support check mode by default

* ec2_vpc_subnet_facts pep8 tidy up
2017-04-04 08:34:49 -04:00
Will Thames
2be64b8c3a [cloud] Support check_mode for ec2_vpc_route_table_facts (#23116)
As a facts module, just needs supports_check_mode to be
set in the argument_spec
2017-04-04 08:31:26 -04:00
Will Thames
ec01aac983 [cloud] Support check_mode for ec2_vpc_nat_gateway_facts (#23114)
As a facts module, just needs supports_check_mode switched on
2017-04-04 08:31:01 -04:00
Will Thames
e61be9ea78 [cloud] Remove DryRun parameter in ec2_vpc_igw_facts check_mode (#23113)
* Remove DryRun parameter in ec2_vpc_igw_facts check_mode

Using DryRun in check mode causes errors, and is not required
(as nothing changes when calling describe_internet_gateways)

Prevents the following error:
```
{"changed": false,
 "failed": true,
  "msg": "An error occurred (DryRunOperation) when calling
          the DescribeInternetGateways operation: Request
          would have succeeded, but DryRun flag is set."}
```

* ec2_vpc_igw_facts pep8 tidy up
2017-04-04 08:29:48 -04:00
Sergey
9a43603761 [cloud] Added account selection to PubNub BLOCKS (#23160)
* . switched from 'user.id' to 'account.id' in REST API calls.
+ added ability to select desired account (by name or identifier) from list of accounts to which authorized user have access.

* + added account option addition version.

* Remove pubnub_blocks from PEP8-legacy list
2017-04-03 14:05:38 -04:00
Will Thames
cd19964bca [cloud] Support check_mode for ec2_group_facts (#23164)
Update imports to use named imports
2017-04-03 13:45:38 -04:00
Prasad Katti
2b18c0ed07 [cloud][docs] Must use the count_tag option with exact_count (#23167)
Fixed an example in ec2 module. The example does not work without
count_tag option.
2017-04-03 13:40:12 -04:00
Sloane Hertel
224b5d5283 remove vpc requirement for default outbound traffic (#22743) 2017-04-03 08:16:03 -04:00
Ryan Brown
2196fa0e95 [cloud][tests] fixtures for placebo to test AWS modules using boto3 (#21253)
* [cloud][tests] Create fixtures for using placebo to test boto3-using modules

* Use pytest's importorskip instead of manually skipping on missing deps

* Fix imports in cloudformation module

* Delete unused code

* Add maybe_sleep fixtures to speed up recorded test runs

* Build basic placebo-CFN tests

* Commit placebo recordings of basic stack operations

* Add placebo to test-requires

* Allow unit tests to run regardless of environment by setting a default region

* Use explicit relative import for Python 3 compat

* Use __name__ attribute that works on Python 2 and 3
2017-03-31 15:31:12 -04:00
AlexanderStock
e4206d8ef5 Added Tag functionality to Volume,Template,FWRule,PF Rule,ISO,Snapshot (#23141)
* Added Tag functionality to Volume,Template,FWRule,PF Rule,ISO,Snapshot

* Update cs_firewall.py

Fixed whitespace

* Added doc for Cloudstack Tags in Volume,Template,FWRule,PF Rule,ISO,Snapshot
2017-03-31 18:39:30 +02:00
smaftoul
9812d211e7 typo: psuedo -> pseudo (#23177) 2017-03-31 10:48:29 -04:00
Will Thames
9a3a0d731f Fix typo in AWS guidelines doc (#23168)
Change `format_ex` to `format_exc`
2017-03-31 09:57:38 -04:00
Monty Taylor
443102c9f0 Remove old deprecated OpenStack modules (#23002)
These were deprecated back in the 1.x timeframe, so have been deprecated
for the 2 cycles required. They also do things wrong and should be
avoided anyway. Go ahead and remove them.
2017-03-31 15:17:13 +02:00
Tom Melendez
8b677e25c4 [cloud][GCP]: New module gcp_backend_service for load balancer backends (#22857)
* GCP: backend service module

* GCP: rework param-checking code. Fixed a couple of bugs and changed to ValueError instead of custom tuple.

* GCP: fixed commit, spelled out Google Cloud for clarity in module description.
2017-03-30 16:59:35 -04:00
Sloane Hertel
f5f7a8c681 [cloud] only create new eni if none of the filters lead to one match (#22919) 2017-03-30 14:55:31 -04:00
Sloane Hertel
dab0e75ce0 [cloud] update the local variable route_table with the latest tag changes (#23136) 2017-03-30 14:53:42 -04:00
Sloane Hertel
44b2859338 ec2: fix instids and res_list being referenced before assigned - fixes #22692 (#23053)
* add else statement to ensure instids is set

set res_list to None to avoid UnboundLocalError and fix iteration over a nonetype by adding an empty tuple

* make res_list empty tuple by default and check for instids before setting tags (fails otherwise)
2017-03-29 20:18:23 -04:00
Chris Houseknecht
4099eb41b9 Treats both [] and {} as equal to None (#23088) 2017-03-29 22:48:21 +02:00
Sloane Hertel
7720ef8ec1 [cloud][python3] bytes fix to make ec2_key work on python 3 (#23051) 2017-03-28 17:00:26 -04:00
Ricardo Carrillo Cruz
6fa3cb55e1 Fix dynamodb pep8 issues (#23032) 2017-03-28 15:11:39 +02:00
Corey Christous
34a3ab94d8 add tagging to dynamodb_table.py (#20946)
* add tagging to dynamodb_table.py

* fix doc syntax

* address PR comments

* add boto3 has tagging check
2017-03-28 07:18:20 -04:00
Jon "The Nice Guy" Spriggs
8e0c11ebc4 Add examples in os_server module showing userdata (#22997)
* Add examples in os_server module showing userdata

Added an example using Bash and also using Cloud-init. Also, showing using {% raw %} and {% endraw %} to provide a pointer to those hitting similar issues to the ones I had.

* Removed erronious whitespace
2017-03-27 14:44:13 -05:00
Nick Ball
c8364d64d6 [cloud] New module: AWS lightsail (#19846)
* Add AWS lightsail module

* lightsail: fix doc error + badly formatted yaml

* lightsail: code style cleanup

* make requested lightsail changes

* fix imports and pep8

* fix metadata and version

fix yaml

fix RETURN section
2017-03-27 15:10:52 -04:00
John R Barker
f9b75d44e8 pep8 fixes (#23005) 2017-03-27 18:36:20 +01:00
John R Barker
58441869bd metadata_version, not version 2017-03-27 18:25:36 +01:00
Will Thames
7142e28423 [cloud] Default encrypted parameter on ec2_ami_copy to False (#22634)
Set encrypted to default False, rather than None

Otherwise you get:

```
Invalid type for parameter Encrypted, value: None, type: <type 'NoneType'>, valid types: <type 'bool'>)
```
2017-03-27 12:44:59 -04:00
Davis Phillips
36e24c53c6 Vmware resource pool first add (#21116)
* Adding first checkin of resource_pool module
* fixing length issues and indentation multipliers
* mend
* mend
* mend
* remove * import from modules
* Add space on variable assignments
* changing line 321 to less characters
* fixing pep8 issues
* mend
* cleaning up example section
* Add RETURN section
* adding spacing to list
* all spacing consistent now
* move imports as per CI
2017-03-27 10:35:58 -04:00
Alex Lo
ac74520b6f ec2_group: description property is immutable (#19790)
* update integration tests for updated boto exception message

* integration tests fail on both "test credential" test cases

exception bubbles out of module.  instead catch and wrap

* ec2_group does not support updating a security group's description

AWS security group descriptions are immutable.
if ec2_group finds a group that matches by name, but the descriptions do not match, the module does not support this case
previously it would check if the group was used, but would not do anything if it was

old behavior was erroneous because it could make a user expect that the description change of a group was fine when in fact it did not occur
also, it made an expensive check against all ec2 instances for no good reason

* comments not doc strings

* else must have pass w/o doc-string statement

* Catch specific BotoServerException, give context around error when fetching SGs

* python3 compatible exception blocks

* add traceback to fail_json

* two blank lines before first function
2017-03-26 09:33:29 -04:00
ukaj
db328a0f83 [cloud] Add support for running s3 module in check mode (#22188) 2017-03-24 16:05:19 -04:00
Sloane Hertel
1ca4a42c0e include traceback in exception handling (#22807) 2017-03-23 14:08:02 -04:00
Matt Martz
3164e8b561 E501 fixes (#22879) 2017-03-22 20:50:28 -05:00
Glen Maetzig
ac992eff1c Import camel_dict_to_snake_dict method to fix error when executing get_nat_gateways() method
(cherry picked from commit 223fc34ab91b3980eebc641cb2649ad58e8bf385)
2017-03-22 16:30:59 -07:00
Shaun Brady
cd24bbbc9c Missing purge_subnets parameter on function call
purge_subnets|routes were introduced recently.
ensure_subnet_associations now takes purge_subnets as a parameter.  A
call to this function was missed when introducing this feature.  With
out, results in a "got 5 expected 6" error.
2017-03-22 16:22:54 -07:00
mjfroehlich
cc50b803df [cloud][route53_health_check] Consider port in identity test (#22762)
Allows to health-check two services on one host. Before, asking for 2 health checks being present for `http://myhost:8888` and `http://myhost:9999`  resulted in just a single health check, as this module considered the two specs as equal.

Bonus: route53_health_check now passes style guidelines
2017-03-22 12:49:39 -04:00
Matt Martz
02f66b9369 E1 legacy pep8 fixes (#21933)
* E1 pep8 fixes

* e111 fix for rds.py
2017-03-21 21:19:40 -05:00
Joshua C. Randall
e7fd38af78 Fix get_s3_connection (fixes #22317) (#22318)
* Fix get_s3_connection (fixes #22317)

Override aws_connect_kwargs rather than prepending to them. Should fix an issue in which `calling_format` is set twice in the kwargs passed to `boto.connect_s3` or `S3Connection` if a bucket name contains a `.`

* Revert "Fix get_s3_connection (fixes #22317)"

This reverts commit 7f61b8bebd2929940495204f1a98d660a55985d8.

* implements alternative way of fixing issue with aws_connect_kwargs for rgw and fakes3 (fixes 22317)

* add comment to explain why the keys are being removed from aws_connect_kwargs

* remove trailing whitespace on comment line
2017-03-21 08:15:53 -04:00
René Moser
e3525d8df9 cloudstack: fix pep8 for loadbalancer modules (#22822) 2017-03-21 11:00:46 +01:00
Tom Melendez
1c38cba7ca [GCE] Invalid zone reported through fail_json
* added new helper function for zones and regions.
* modified GCE module to use it

Fixes: ansible/ansible#20616
2017-03-20 10:15:39 -04:00
Ondra Machacek
a46c55b2dd cloud: ovirt: Add sparsify option to ovirt_disks (#22560)
This patch fixes: https://github.com/ansible/ansible/issues/22348
2017-03-20 09:39:16 -04:00
René Moser
24c617766c cloudstack: fix load balancer idempotency if no zone given (#22768)
get_zone() is special, as it always returns a zone (default zone) even
if no zone param is given. This makes sense for many use cases.
2017-03-19 10:07:46 +01:00
Sloane Hertel
4749b75090 [cloud] ec2_eni: don't modify a network interface without eni_id - fixes #22401 (#22689)
* don't modify an eni without eni_id

fix pep8

remove ec2_eni from pep8 legacy files

remove a couple unused variables in main()

fix the documentation

* fix yaml
2017-03-17 16:26:49 -04:00
Sloane Hertel
8ccde6fbb0 [cloud] make docs for ec2_group rules more clear (#22701)
make ec2_group pep8

removed ec2_group from pep8 legacy files
2017-03-17 16:14:20 -04:00
Sloane Hertel
a4552c11b3 allow groups parameter to be noticed as an empty list (#22707)
make iam.py pep8

remove iam.py from pep8 legacy files
2017-03-17 16:11:48 -04:00
Ilya Simonenko
dba8edf735 cloud: docker: Fixes #22638 load image to memory when archive_path provided (#22642) 2017-03-16 10:06:19 -07:00
Dag Wieers
895664f539 vmware_guest: Fix "KeyError: 'changed'" (#22564)
Due to how the result-dictionary is being used, in some codepaths it would have an empty dictionary.
This then is problematic if the code expects the 'changed' key later on.

I also improved the docs a bit, by clearly marking the parameter names and URL in the documentation.
2017-03-16 10:55:07 -04:00
Ondra Machacek
7a3b6ca37c cloud: ovirt: fix ovirt_nics profile search (#22684) 2017-03-16 08:27:30 -04:00
Dylan Silva
9ffad27319 Changed supported_by from curated to community (#22654) 2017-03-15 14:28:33 -07:00
Dylan Silva
4c8da5ad49 changed supported_by from curated to community (#22656) 2017-03-15 14:28:15 -07:00
Sloane Hertel
5e67f86586 [cloud] fix ec2_vpc_route_table module documentation - Fixes #19344 (#22367)
* improve ec2_vpc_route_table documentation

* make pep8
2017-03-15 13:14:13 -04:00
Sloane Hertel
3aef028d42 [cloud] make ec2 module pep8 (#22421)
* making ec2 pep8

* remove ec2 from pep8 legacy files

* missed a couple

* fix imports and remove iteritems

* making group_id and group_name mutually exclusive and fixing whitespace
2017-03-15 13:13:25 -04:00
John R Barker
9857ce8ddb Fix render issue (#22650) 2017-03-15 16:31:37 +00:00
Ondra Machacek
bb7e7be71f cloud: ovirt: Fix disk image upload (#22557) 2017-03-15 08:03:18 -04:00
René Moser
0ee108bda0 cloudstack: cs_instance: revert VPC support (#22629)
Partly reverts 5374c7cd09
2017-03-15 02:02:38 +01:00
René Moser
a2b6844858 cloudstack: cs_network: fix VPC support (#22627)
* cloudstack: cs_network: fix vpc support

* cloudstack: cs_network: fix pep8
2017-03-15 02:00:40 +01:00
René Moser
38b9f055d7 cloudstack: cs_staticnat: fix VPC support (#22626)
- Fix the VPC support by adding network to create and update methods
- Fix pep8
2017-03-15 01:59:20 +01:00
René Moser
a227a4ebb4 cloudstack: cs_ip_address: fix vpc support (#22625)
* cloudstack: cs_ip_address: fix vpc support

* cloudstack: cs_ip_address: fix pep8
2017-03-15 01:58:46 +01:00
Ondra Machacek
38eb388154 ovirt: cloud: make the datacenter input compatible (#22483)
This patch makes sure that all inputs of datacenter are compatible. So
it's 'data_center' everywhere.
2017-03-14 13:37:01 -04:00
Toshio Kuratomi
eb1214baad New metadata 1.0 (#22587)
Changes to the metadata format were approved here:
https://github.com/ansible/proposals/issues/54
* Update documentation to the new metadata format
* Changes to metadata-tool to account for new metadata
  * Add GPL license header
  * Add upgrade subcommand to upgrade metadata version
  * Change default metadata to the new format
  * Fix exclusion of non-modules from the metadata report
* Fix ansible-doc for new module metadata
* Exclude metadata version from ansible-doc output
* Fix website docs generation for the new metadata
* Update metadata schema in valiate-modules test
* Update the metadata in all modules to the new version
2017-03-14 09:07:22 -07:00
René Moser
2be3418a81 cloudstack: fix wrong vpc found by name (#22603)
Fail fast if more than one VPC found with given identifier.
2017-03-14 16:18:32 +01:00
Marc Mercer
c5c0d9086e [cloud][docs] update ec2_tag documentation example (#22586)
Currently the documentation utilizes with_subelements, but it does not parse the results correctly.  By changing to with_items: and specifying the proper list, we are able to tag the instances as expected.
2017-03-14 11:12:28 -04:00
Ryan Brown
19511971ee Format ELBInfo call (#22383)
Move declaration of AWSRetry of get_all_load_balancers so it isn't redeclared for every page of data.
2017-03-13 16:00:34 -04:00
Robin Miller
6d8edfc35f Handle throttling and move BotoServerError handling to main. (#22383)
Unclear how useful it is to still be catching BotoServerError exceptions
generally, especially when we are now hopefully handling most instances
of throttling, but kept it as it was already in the code. Moved to main
as catching BotoServerErrors inside individual functions will bypass any
AWSRetry.backoff decorator.

Move additional imports to top.

Use python2.6 formatting

A bit of cleanup on imports

Make one more string interpolation Python 2.6 compatible.
2017-03-13 16:00:06 -04:00
Chris Houseknecht
b15ceee6bd Changes command and entrypoint to type list 2017-03-13 14:39:23 -04:00
Will Thames
4cc872669c [cloud] fix connection_draining idempotency in ec2_elb_lb (#21323)
* Fix connection_draining idempotency in ec2_elb_lb

Ensure connection_draining types are equivalent when comparing
whether or not connection_draining is being changed.

This means that running `ec2_elb_lb` with connection_draining
set a second time will now report `changed=False`

* ec2_elb_lb: fixed latest Ansible standards compliance

Update to current pep8 standards, fix module imports
and remove module from exclusion file
2017-03-13 14:06:49 -04:00
夏恺(Kai Xia)
5e40af0732 [cloud] change returned type of tag in ec2_snapshot_facts, fix #22431. (#22432)
Signed-off-by: Xia Kai(夏恺) <xiaket@gmail.com>
2017-03-13 14:00:16 -04:00
Ondra Machacek
f5abcd9264 cloud: ovirt: Fix ovirt_tags documentation (#22569) 2017-03-13 13:33:33 -04:00
Will Thames
459724da6b [cloud] Convert nat gateway facts to ansible format (#20962)
Use camel_dict_to_snake_dict
2017-03-13 13:15:45 -04:00
Joshua C. Randall
444b67ca0c s3_bucket: fixes #22464 without fully implementing support for ceph bucket update (#22538) 2017-03-13 10:29:14 -04:00
Johannes Kohnen
cc2eecc247 Enable path expansion in GCE modules
This is basically a replay of #16064 from `gce.py` to other pertinent
`gce_*.py` files. It enables expansions of paths in `gce.ini` like
`~/.project.json`
2017-03-12 16:55:43 -04:00
John R Barker
d21c16d455 Remove invalid type: (#22548) 2017-03-12 19:58:20 +00:00
John R Barker
e5b990a55a Fix invalid fields in module DOCUMENATION (#22297)
* fix module doc fields

* More module docs corrections

* More module docs corrections

* More module docs corrections

* More module docs corrections

* correct aliases

* Review comments

* Must quote ':'

* More authors

* Use suboptions:

* restore type: bool

* type should be in the same place

* More tidyups

* authors

* Use suboptions

* revert

* remove duplicate author

* More issues post rebase
2017-03-09 16:20:25 +00:00
René Moser
6f426b9d06 cloudstack: cs_vpc: fix vpc in projects not found (#22416) 2017-03-08 18:52:29 +01:00
René Moser
7f35220744 cloudstack: cs_firewall: fix pep8 and typo s/endpoint/endport/ (#22406) 2017-03-08 15:12:48 +01:00
Alex Lo
8e910cce8a ec2_group: description is only required when group state is present (#19791)
* description is only required when group state is present

also note that AWS requires a non-empty description when creating a security group

* clarify description requirement
2017-03-07 20:55:17 +01:00
Brian Coca
20bf02f6b9 rename return var to avoid conflicts
fixes #22323
2017-03-07 12:08:31 -05:00
Kamil Cholewiński
ec9582fd83 Fix invocations of module.fail_json with no msg=
Bonus: add missing % in cs_nic.py
2017-03-07 10:17:14 -05:00
Loïc Blot
792efbe3b6 virt.py: autostart VM attribute (#22208)
* virt.py: autostart VM attribute
autostart is now an idempotent VM attribute instead of a non idempotent forced autostart attribute set to True

* Make shippable happy

* Missing version added

* Fix some points

* Autostart default is now None

* Ident fix
2017-03-07 11:07:19 +00:00
Andrea Giardini
863c1ff38b Ec2_tag support for check mode (#21779) 2017-03-07 10:44:32 +00:00
John R Barker
8531547ec2 Correct module:, it should match filename (#22296)
* Validate module: matches filename

* remove testcase

* Revert module validation, move to different PR
2017-03-07 09:49:03 +00:00
Ryan Brown
f0491b4261 [cloud] Fix ZeroDivisionError in ec2_elb_facts module (#22332) 2017-03-06 17:26:02 -05:00
Robin Miller
9c20182bdf [cloud] Avoid failures in RDS modyue due to throttling while waiting (#22271)
1. Check less aggressively for resources that take a long time to return
(some resources can take an hour or more).
2. Handle throttling when checking for resources, and back off quickly
when it occurs.
2017-03-06 15:19:59 -05:00
Ricardo Carrillo Cruz
43aef4e868 Do not pass filters to os_group get_group call (#22321)
As default is set to None, the get_group call doesn't find groups
on domain 'None'.
Only pass filters in case we pass domain_id value.
2017-03-06 19:15:00 +01:00
Dan Vaida
433829769e [cloud] Fix data types in ec2_elb_lb causing resource to be spuriously updated (#21906)
fixes broken idempotence caused by the idle_timeout and cross_az_load_balancing params. (#21906)
2017-03-06 12:27:30 -05:00
Michał Masłowski
228131d1cd lambda: Fix adding environment variables to functions previously not having any (#22313) 2017-03-06 11:10:40 -05:00
Valentyn Boginskey
2d10ad4a3e [cloud] allow ec2_lc to take user data from binary files w/ user_data_path (#20138)
* Add user_data_path parameter to ec2_lc module

* Improve user_data_path parameter documentation

- Specify mutual exclusivity
- Specify `version_added`
- Change module parameter type to `path`

* Use correct comparison for user_data result

* Include traceback on error and use with block

* Only hide user data if provided in file
2017-03-06 11:09:25 -05:00
gaudenz
2772f9d9b0 cloudscale: Document SSH host key retrieval (#22299)
Document how the cloudscale_server module can be used to retrieve the
SSH host keys of the server.
2017-03-05 22:48:45 +01:00
René Moser
c1730c21ce cloudstack: cs_sshkeypair: fix fingerprint not used as identifier (#22276)
* cloudstack: cs_sshkeypair: fix fingerprint not used as identifier

* remove from legacy

* fix for 2 keys, one with name and one with fingerprint
2017-03-05 22:47:19 +01:00
Will Thames
274016101f ec2_vpc_subnet: cope with empty tags (#21813)
ensure_tags fails if `tags` is None rather than an empty
dict. Ensure that not passing `tags` parameter is equivalent
to passing an empty dict.

Fixes #21778
2017-03-03 13:47:29 -05:00
Will Thames
699f0e861c [cloud] Add supports_check_mode to ec2_ami_find (#22180)
ec2_ami_find is a facts module, and makes no
changes, so trivially supports check mode
2017-03-03 13:34:38 -05:00
Jean-Philippe Evrard
19b49a9224 [cloud][lxc] Prevent hostname to be set (#22246)
If the host .bashrc holds a var named HOSTNAME, the container
where the lxc_container module will attach to will inherit from
this var, potentially breaking some applications (like rabbitmqctl)
due to an incorrect $HOSTNAME reported in the container.
2017-03-03 13:33:41 -05:00
Andrea Giardini
04e990281e Add flag to Docker pull_image to know when the image is already latest (#21508)
* Add flag to Docker pull_image to know when the image is already latest

Whenever the flag pull is set to 'yes' the resource is always defined
as 'changed'. That is not true in case the image is already at the
latest version.

Related to ansible/ansible#19549

* Docker pull_image does not change status if the image is latest
2017-03-03 10:16:16 -05:00
mikedlr
710b6c7209 [cloud] bugfix for lambda module with empty environment (#22196)
* lambda module - failing test case: shows lambda create mishandles empty environment

* lambda module - fix lambda create with empty environment

* lambda module - fix lambda create with empty environment - style fixes
2017-03-02 09:25:39 -05:00
Ondra Machacek
7d397e7d3e cloud: ovirt: Add download image support to disks module (#22101)
This PR fixes: https://github.com/ansible/ansible/issues/22088
2017-03-02 08:32:36 -05:00
GwenaelPellenArkeup
17a4a655a3 [cloud] New module: gce_template (#20918)
* add gce_template.py

gce template manage GCE Instance Templates in Google Cloud Plateform.

* change gce_template on style/formating

Apply change on style/formating from reviewer request.

* change gce_template on style/formating again.

* Rename gce_template.py to gce_instance_template.py

* update gce_instance_template.py to pass CI

Oops :)
ERROR: Import found before documentation variables. 
All imports must appear below DOCUMENTATION/EXAMPLES/RETURN/ANSIBLE_METADATA.

* Update gce_instance_template.py

change documentation replace gce_template by gce_instance_template

* Update gce_instance_template.py

Sorry for the typography fault. The day begins badly.

* Update gce_instance_template.py

apply text change
  s/Compte/Compute/
  s/Plateform/Platform/
  s/forword/forward/
change documentation for subnetwork, subnetwork is name.
add mutually_exclusive in AnsibleModule arguments.
change disk_type as an option type.

* Update gce_instance_template.py

change the documentation.

* Update gce_instance_template.py

RETURN is required for all new modules. Is empty because no new return variable returned.

* Update gce_instance_template.py

Ansible will verify that only present/absent are passed as the state. This else is not needed.
2017-03-01 16:50:07 -05:00
Ondra Machacek
9fe0ae082a cloud: ovirt: logout if token is not used (#21517) 2017-03-01 19:59:15 +00:00
Ondra Machacek
ab16e4b40e cloud: ovirt: add note about ENGINE_API_FILTER_BY_DEFAULT (#22155) 2017-03-01 19:35:14 +00:00
Tom Melendez
0c14548e5f [GCE] New module: Google Cloud Spanner (#21731)
* [GCE] Google Cloud Spanner module

Supports the creation/updating/deletion of Spanner instances and create/drop databases.

* [GCE] On update, node count will not be reset to one if not specified.

* [GCE] fixed some imports.

* [GCE] rename display_name to instance_display_name

* [GCE] Recreate instance in order to have desired values at create time.

* Fix linter error on imports

* [GCE] Added force_instance_delete option to ensure an instance is not removed by mistake.

* [GCE] Google Cloud Spanner module

Supports the creation/updating/deletion of Spanner instances and create/drop databases.

* [GCE] On update, node count will not be reset to one if not specified.

* [GCE] rename display_name to instance_display_name

* Fix linter error on imports

* fixed doc bug

* Remove imports mistakenly brought in during merge
2017-03-01 14:26:07 -05:00
Ondra Machacek
85fc930066 cloud: ovirt/rhev add note old modules were replaced (#22118) 2017-03-01 17:05:02 +00:00
René Moser
60aa3db1ad Fix/cs resoucelimit pep8 (#22102)
* cloudstack: cs_resourcelimit: fix type for limit

* cloudstack: cs_resourcelimit: fix pep8
2017-03-01 11:41:26 +00:00
amblina
c6849a3464 S3 object parameter and bucket deletion exclusive (#21830)
Fixes ansible#21796 Prevent users from deleting buckets rather than objects by making object parameter and mode=delobj mutually exclusive in task.
https://github.com/ansible/ansible/issues/21796
2017-02-28 15:36:55 -05:00
Chenjun Shen
4ba131d442 Add quota for the number of floating IP's to allow in Network. (#21471)
* Add quota for the number of floating IP's to allow in Network.

* Add nova_floating_ips and neutron_floating_ips aliases to avoid confusion.

* rename aliases to compute_floating_ips and network_floating_ips.
2017-02-28 14:47:57 +01:00
kulawczukmarcin
30bee433c3 Extend os image container and disk formats (#21275)
* Support docker as an os_image container format

As says openstack documentation
http://docs.openstack.org/developer/glance/formats.html
docker can be a container format for glance image.

* Support vhdx and ploop as an os_image container formats

As stands in  openstack documentation
http://docs.openstack.org/developer/glance/formats.html
those are supported disk formats for glance image.
2017-02-28 14:01:52 +01:00
Ryan Brown
1699c9ea48 [cloud] ec2_elb_facts fails on accounts with to many ELBs (#21602)
The list_elbs call to boto doesn't use any pagination, so any time there
are more ELBs than the API page size, this module will fail. This change
uses the `next_token` attribute of `ResultSet` to check if there are
still more ELBs to return.

Fixes #21361
2017-02-27 16:42:23 -05:00
Will Thames
ebfc7bac94 cloudfront_facts module improvements
* Make more use of AWS Exception information
* Use pythonic dict assignments
* Improve documentation formatting to make option names clearer
  in descriptions
* Meet ansible line length requirements
* Tidy up flake8 messages
2017-02-27 10:22:55 -05:00
Will Thames
bd4003e3f2 Add tags to cloudfront distribution facts
Tags are available from cloudfront API, so make use of them
2017-02-27 10:22:55 -05:00
rollerwhrtn
e8ef826976 Changed datacenter Required to False since default is set. Fixes 'required and default are mutually exclusive for datacenter' error. Fixes 21076 (#21492) 2017-02-27 09:15:06 -05:00
René Moser
cecf22039d cs_vpc: fix pep8 (#21964) 2017-02-26 10:21:12 +01:00
Matt Martz
305c88700d PEP8 E712 fixes (#21916) 2017-02-24 16:49:43 -06:00
Simon Li
ef7dd0cb2c Set os_server metadata on existing instances (#19318)
* Update metadata on existing openstack instances

This adds or updates existing keys, but doesn't remove them
Fixes #5500

* Set meta to {} if None

* Move common metadata parsing into a method
2017-02-24 12:46:03 +01:00
Sloane Hertel
942ed42eb0 [cloud] Support deadletter queue configuration in lambda module (#21720)
* Add dead_letter_arn option for Lambda.py

* fix logic so DeadLetterConfig can be deleted
2017-02-23 16:04:45 -05:00
Dave Buckley
776116e809 allow server facts to be retrieved by nova UUID (#20924)
* allow server facts to be retrieved by nova UUID

* update docs to state that a nova UUID can be passed to 'server'
2017-02-23 20:34:46 +01:00
Philipp Schmiedel
88f67747cc [cloud] Add force flag to ec2_key module (#21685)
Set the `force` flag to false to:
  - protect existing Keys from being overwritten
  - check if a Key was already existing by evaluating
    the returned `changed` status
2017-02-23 09:46:52 -05:00
kuboj
551a765ea5 added ability to modify nova flavor metadata in os_nova_flavor module (#20091)
* added ability to modify nova flavor metadata

* documentation for os_nova_flavor module fixed
2017-02-23 12:58:13 +01:00
camradal
f7e426e636 os_auth: display proper error message for exceptions (#20891) 2017-02-23 12:04:43 +01:00
Colleen Murphy
352815ecbb Add domain_id parameter to openstack os_group (#20609)
Previously, the os_group module did not have any way to specify under
which domain a group should be created. This meant that a group could
only be created for the default domain. The keystone API supports the
domain_id parameter for group creation[1] as does the shade library[2]
so this patch adds the support in the ansible module.

[1] http://developer.openstack.org/api-ref/identity/v3/index.html?expanded=create-group-detail#create-group
[2] http://docs.openstack.org/infra/shade/usage.html#shade.OperatorCloud.create_group
2017-02-23 10:57:07 +01:00
Matt Clay
4554e8d769 Remove unnecessary shebangs and execute bits. 2017-02-22 18:13:46 -08:00
Troy Ready
3f391f5a23 update ec2_ami_find to allow product-code filter (#18896)
CentOS's cloud image wiki page (wiki.centos.org/Cloud/AWS) gives an
example of using their product code to search for AMIs. This commit
adds an optional parameter to ec2_ami_find to allow this filtering.
2017-02-22 22:36:59 +01:00
scottb
3812c76168 Update GUIDELINES.md
Edited for grammar and clarity.
2017-02-22 10:25:42 -05:00
Brian Coca
96d952a998 fix typo 2017-02-22 10:25:42 -05:00
Brian Coca
4bdaf6a4f0 updated guidelines to reflect boto3 preference 2017-02-22 10:25:42 -05:00
Brian Coca
5258e6d52a use safe load instead
fixes #21724
2017-02-21 17:45:46 -05:00
Ryan Brown
c136ff58c0 [cloud][docs] Fix misleading Route53 value example (#21689)
The `route53` module uses a comma-separated string for records
containing more than one value. Fixes #21134
2017-02-21 15:48:32 -05:00
Matt Clay
879feff6b7 Fix PEP 8 issue. 2017-02-21 10:24:02 -08:00
Sebastien Lacoste-Seris
77596951b8 Update vca_vapp.py (#19562)
Check result of vApp creation and return module failure if creation task not present
2017-02-21 09:00:07 -05:00
Paulo Matias
46fee994d1 os_subnet: add support for using the default subnetpool (#20191)
Allows to pass use_default_subnetpool instead of a cidr. This is
required when adding an IPv6 subnet if BGP or prefix delegation is
enabled.
2017-02-21 14:27:59 +01:00
Sloane Hertel
26b10eb160 [modules] Fix bad usages of traceback.format_exc(); doesn't take an error parameter (#21678) 2017-02-20 13:27:39 -05:00
Monty Taylor
9bf33e56dd Move availability_zone docs to each OpenStack module (#21540)
* Move availability_zone docs to each OpenStack module

This argument is in the central list for hysterical raisins (mostly me
being a doofus) but is used in almost none of them. Document it
explicitly in each module to stop the confusion.

* Fix two docs formatting bugs
2017-02-17 21:49:03 +01:00
Ryan Brown
d64d38a1f4 [cloud][docker] Insensitive search for docker port publishing (#21579) 2017-02-17 10:41:26 -05:00
Zhuo Peng
fe02dbecc0 [cloud] Fix a minor doc error in docker_container module (#21033) 2017-02-17 10:01:15 -05:00
Ondra Machacek
a5d34f2ac2 cloud: ovirt: add override_iptables to examples (#21474) 2017-02-17 09:03:24 +00:00
Tom Melendez
0d3d8cbcd9 [GCE] Doc fixes for gce_net (#21524)
* Updated examples and added return block.

Doc fix only.  No logic or executable code modified in this commit.
2017-02-16 16:39:00 -05:00
Tomas Tomecek
30026cfb84 [cloud] module docker_image: print output on failure (#20757)
Fixes https://github.com/ansible/ansible-modules-core/issues/5161

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2017-02-16 09:47:18 -05:00
Will Thames
f42ffe6de3 [cloud] Ensure that s3_bucket module always enables/disables versioning if it is specified (#21320)
If versioning is not enabled, then `get_bucket_versioning`
can return an empty dict.

If that happens, the code to enable versioning should still
run!

The logic for suspending versioning was also incorrect, so
have updated that too.

Fixes #20491
2017-02-16 09:45:05 -05:00
Sloane Hertel
a077aeb693 [cloud][aws] Refactor s3 module, and add 'ignore_nonexistent_bucket' option (#20501)
Introduces `ignore_nonexistent_bucket` option that does not require ListBuckets permission, so less permissioned IAM roles can still be used with this module. 

Fixes #20501
2017-02-16 09:39:11 -05:00
Sloane Hertel
f775996209 add 'version_added' field for environment_variables option in lambda.py (#21500)
* Add 'version_added' field for environment_variables option (version_added: "2.3")
2017-02-15 18:52:48 -05:00
Abdoul Bah
c22fbdc831 resolve #21056 - Add support for full cloning a Qemu VM. Fix some issues. Update doc (#21225)
* resolve #21056 - Add support for full cloning. Fix some issues. Update doc

* Fix condition and update doc. Fixes #28585

* Using built-in helper for argspec, revert ansible metadata, add more control and remove type in documentation

* PEP8 style compliance
2017-02-15 22:51:46 +00:00
Matt Martz
7c00346714 Validate EXAMPLES as YAML 2017-02-15 13:01:43 -08:00
Daniel O'Brien
320c791cfb Adding more functionality for Linode cloud module 2017-02-15 10:26:40 -08:00
Will Thames
635e3fe9ee [cloud] ec2_vpc_peer should remove peering connections (#20113)
Don't try to create tags on a vpc that you've just removed.

Avoids

```
 "msg": "An error occurred (InvalidParameterValue) when calling the CreateTags operation: You must specify one or more tags to create"
```

Although not quite sure why the `create_tags` was being called
as `module.params.get('tags')` *should* have returned `None`.
2017-02-15 10:21:47 -05:00
Ondra Machacek
34da024e06 cloud: ovirt: add requirments to ovirt_auth module (#21460) 2017-02-15 13:59:27 +00:00
Tim Rupp
22926088a0 Removes expanduser in favor of type 'path'
Removes the usage of expanduser because it is automatically handed
by specifying a type of 'path'. Related to #12263
2017-02-14 15:43:53 -05:00
s-hertel
c5446d95cc [cloud] New module: AWS elasticache_parameter_group for modifying Elasticache cluster settings (#21023)
Added a new module for ElastiCache. Allows users to create/modify/delete/reset cache parameter groups.
2017-02-14 15:32:42 -05:00
Tim Rupp
5f01cd4402 [cloud][serverless] Removes manual expanduser call in favor of type path (#21418)
Removes the usage of expanduser because it is handled automatically
by type 'path'. Related to #12263
2017-02-14 14:29:43 -05:00
Sergey
8cb57f0b1d [cloud] New module: PubNub BLOCKS management module (#20200)
* Added PubNub BLOCKS management module.

* . increased block start/stop wait to 30 seconds

* . fixed multi-line documentation

* . fixed YAML formatting in documentation section

* . removed multi-line commits
. fixed YAML format in description section

* . updated test script to upload event handler sources if non-local connection used for tests
. changed module configuration parameter from 'block' to 'name' (represent target block name)
. updated module docs regarding 'chanes' configuration parameter. Only block 'name' can be changed using this parameter ('description' can be changed directly in module call configuration)
. changed module configuration parameter from 'pwd' tp 'password'
. migrated 'urlencode' import from try..catch to six module imported from Ansible module utils
. removed custom method which is used to verify whether value is empty

* ^ fixed value for key-path function usage with names of application/keyset/block and handlers.
. reduced unnecessary requests (better pre-procesing of previous results)
. event handler name change won't trigger block restart

* ^ fixed too long documentation lines

* . moved PubNub BLOCKS client code into separate package under PyPi
. updated module code to utilize new package
. changed block start stop state to: started and started

* . small changes in documentation format
2017-02-14 10:53:31 -05:00
s-hertel
0123ec786d [cloud] New module: AWS elasticache_snapshot (#21135)
* Adding an elasticache snapshot module.

Allows user to create, copy, or delete a snapshot.

* Removing unnecessary function

* Make indentation uniform.

* Making requested changes.

Fixing PEP8

Adding a more graceful fail for delete() if the snapshot's state valid (such as when it is in the process of being created).

* PEP8

* Fixing some formatting

move imports

fix parameter alignment

* move imports to the top of the file below documentation
2017-02-14 10:41:07 -05:00
Ondra Machacek
fd899c0339 [cloud][ovirt] Fix waiting to down state of stateless VM (#21246)
This patch enhances waiting operation of stateless VM to be down.
Because stateless VM creates a snapshot and removes it after the
VM is shutdown, we must wait until the VM is really prepared to
start again.
2017-02-14 10:40:21 -05:00
Stepan Stipl
86ed4b116c [cloud] add ec2_vpc_route_table purge_routes and purge_subnets options (#19334)
* Added purge_routes option to ec2_vpc_route_table module

* Added purge_subnets option to ec2_vpc_route_table module
2017-02-14 10:08:51 -05:00
Tim Rupp
bf836850a4 Replaces expanduser with type path
Replaces the usage of expanduser with the type 'path' for the
dest and object options as that functionality is available
in that type automatically.

patch related to #12263
2017-02-13 17:32:41 -05:00
Ondra Machacek
c8c4a73e14 Fix compatibility of affinity groups in oVirt 4.0 and 4.1 (#21308)
* cloud: ovirt: exit if incompatible API/SDK version

* cloud: ovirt: fix affinity groups compatibility for oVirt 4.1
2017-02-13 12:43:35 -05:00
Tim Rupp
4900201c5b Remove expanduser and use type path
This patch removes the use of expanduser and replaces it with
type 'path'. This patch is related to #12263
2017-02-13 12:15:50 -05:00
Willem van Ketwich
93a689958e [cloud] add summary feature and refactor AWS cloudfront_facts module (#20791)
* initial commit of cloudfront_facts.py

* modification as per review from @georgepsarakis

* fixed shippable build error

* fixed shippable build error

* removed wildcard imports and replaced with specific imports from ansible.module_utils.ec2 as advised by @georgepsarakis

* renamed all instances of cloud_front_origin_access_identity to origin_access_identity as advised by @georgepsarakis

* show facts based on alias and distribution id for easy referencing as advised by @ryansb. have done for both distribution and distribution_config

* fixed incorrect logic for default list_distributions, fixed list_distributions_by_web_acl - wasn't passing web_acl_id, fixed list_invalidations keyword args missing DistributionId

* fixed last fact added clobbering all previous facts for an alias or an id

* removed list_ prefix from list keys

* removed unnecessary boto fields. made list_distributions and list_streaming_distributions dictionaries with id/alias as key. fixed list_invalidations.

* initial commit of cloudfront_facts summary

* checks for empty list returned from boto, standardised list naming

* neatened up parameters

* added summary documentation

* refactoring of functions for modularity

* refactoring, neatening code, fix for if cname not present, added try-catch blocks

* more refactoring, cleaning

* more cleaning, allowed streaming distributions to be found by domain name alias

* removed unnecessary line

* fixed tabs

* fixed indentation

* removed trailing whitespace

* removed more whitespace

* more refactoring, modified where invalidations dict is set

* added ETag to summary

* refactored summary list

* moved list out of for loop

* trailing white space

* reverted line lengthening as advised by @willthames

* modified exceptions to multi line as advised by @willthames

* reverted variable spacing to be more pythonic'

* reverted spacing in YAML as advised by @ryansb

* reverted line spacing for parameters for correct blame attribution as advised by @ryansb

* removed white space

* more white space

* reverted line spacings for parameters as advised by @ryansb

* removed spaces between parameters as advised by @ryansb
2017-02-13 09:20:04 -05:00
Dag Wieers
f824b2ce8d Avoid having module documentation links to itself (#21329)
* Avoid having module documentation links to itself

A lot of modules use M(own_module) in their documentation causing a link
in the documentation to itself.

* Make note more clear now
2017-02-13 14:02:34 +00:00
aperigault
98d841b324 vmware_guest: Fix undefine variable in rename feature (#20855)
* vmware_guest: Fix undefine variable in rename feature

* vmare_guest: We can't wait_for_task because MarkAsTemplate return None
2017-02-11 22:46:58 -05:00
s-hertel
84135ef7ad Removing cmp from ec2_vpc_net.py to be compatible with Python3 (#21202)
* Removing cmp to be compatible with Python3

* fix syntax

* Added an overlooked return

* Fixing making  things overly complicated

* Simplifying since tags will always be hashable. Don't need to use cmp at all.
2017-02-10 15:23:08 -05:00
s-hertel
2dc42fce80 [cloud] add tags parameter to ec2_vol & PEP8 fixes (#21254)
* Make ec2_vol pep8 and add tags parameter

* Remove ec2_vol.py from pep8 legacy-files
2017-02-10 15:22:38 -05:00
Brian Coca
74e8aa22af no log passwords (#21229)
* no log passwords

* removed unneeded no_log
2017-02-10 15:13:59 -05:00
Robin Miller
951994be5e use backoff/retry for conn.get_zones and conn.get_hosted_zone in route53 module (#20771) 2017-02-10 13:34:50 -05:00
Davis Phillips
239c6aee35 added default datacenter ha-datacenter and set wait_for_ip_address to… (#21076)
* added default datacenter ha-datacenter and set wait_for_ip_address to default False - closes 21074

* Updated docs to reflect changes
2017-02-09 22:43:31 -05:00
s-hertel
22701806c3 Adding environment variable support for lambda.py in response to feat… (#20705)
* Adding environment variable support for lambda.py in response to feature idea #20479.

Plus a 1-character bug fix.

* fix yaml syntax

* Fixing option name, adding alias, and fixing a line to allow the user to delete environment variables by setting an empty dict.
2017-02-09 15:12:56 -05:00
s-hertel
0e4f48d684 Merge pull request #20953 from surfuga/fix-20951-ec2_vpc_net-multi_ok
Fixes #20951 fixed multi_ok in ec2_vpc_net.py (var multi usage in vpc_exists function)
2017-02-09 14:24:51 -05:00
Tatsuya Hoshino
41f3680dfd Mask login_password in log (#21199) 2017-02-09 10:16:54 -08:00
DavidVentura
c5a8b78956 fix merge conflicts (#19481) 2017-02-09 12:55:25 +00:00
Adam Friedman
1a28a48176 Refactor dimensiondata_network module (#21043)
* Refactor dimensiondata_network to use shared base class for common functionality.

* Experiment: remove the assignments in the "except ImportError:" block that keep PyCharm happy. If this fixes the build, then I reckon there's a bug in the validate-modules script (https://github.com/ansible/ansible/blob/devel/test/sanity/validate-modules/validate-modules#L322).

* Remove unused imports.

* Changes based on feedback from @gundalow for ansible/ansible#21043.

- Use no_log=True for mcp_password parameter.
- Collapse module parameter definitions.

* Use shared definitions and doc fragments for common module arguments (ansible/ansible#21043).

* Make default network plan "ESSENTIALS", rather than "ADVANCED" (this is consistent with our other tooling).
Tidy up module parameter documentation.

* Simplify dimensiondata module documentation fragments (didn't know you could include multiple fragments).

* Change 'verify_ssl_cert' module parameter to 'validate_certs'.
2017-02-09 11:30:31 +00:00
DavidVentura
b5811ccb8a proxmox: Add public key support: fix #19487 (#21142)
* fix #19487

* add 'version_added'

* Check for version compatibility, Ignore keys if incompatible

* add comment about version support

* remove 'type' as requested

* fix merge error
2017-02-09 09:45:41 +00:00
Ralph Rodkey
b1f06f6555 [cloud] make ec2_asg honor 'wait_for_instances' on delete 2017-02-08 12:57:59 -05:00
Robert Simmons
b7e78656ac [cloud] gce_net fix for unsetting firewall rule properties in the project. (#20483) 2017-02-08 08:49:04 -05:00
René Moser
a6f887ce6e cloudstack: cs_portforward: implement vpc support (#19044)
* cloudstack: cs_portforward: implement vpc support

* cloudstack: cs_portforward: add vpc and network to returns

* cloudstack: cs_portforward: networkid must not be used for rule listing

* cloudstack: fail for get_network when vpc but no network name

This seem to be a global pattern for get_network, we want to enforce a
network name to be set if a vpn param is given.

This is used for cs_portforward.

* cloudstack: cs_portforward: doc: fix defaults for vpc, network
2017-02-08 07:57:36 +01:00
René Moser
c00604210c cs_instance: fix ssh keys not found in projects (#21104)
Follow up of 5475f3ee64
2017-02-07 22:14:43 +01:00
Abdul Anshad A
b30942787b Add guest shutdown/reboot (#20564) 2017-02-07 10:33:13 -05:00
Vincent Bernat
d94f9bdd8d cloudstack: ensure we select a template compatible with disksize (#21058)
When the user specify a root disk size, the template image must be
smaller than the specified root disk size.
2017-02-06 23:14:31 +01:00
Toshio Kuratomi
5c56e79a8f Cleanup imports 2017-02-06 13:04:54 -08:00
Eugene Krokhalev
d67cbaa274 fix urlparse usage in cloud.amazon module to be compatible with python3 (#20917)
* fix urlparse usage in cloud.amazon module to be compatible with python3

* make imports style compatible with six documentation
2017-02-06 12:55:11 -08:00
Davis Phillips
65e55d47b1 fixes 20904 (#21068) 2017-02-06 14:37:42 -05:00
Loïc Blot
b55d039f67 New modules: vmware_guest_facts & vmware_guest_snapshot (#20971)
* Move gather_facts action outside of vmware_guest module
* Move facts gathering method to vmware.py library
* vmware_guest use some vmware.py library methods
* vmware.py lib: fix some PEP 8 issues
* Move snapshot actions to vmware_guest_snapshot
* Move common snapshot facts to vmware.py library
2017-02-06 11:52:17 -05:00
Ryan S. Brown
bb9ee0cf6f [cloud][aws] Make s3_object_version truly optional in lambda module 2017-02-03 16:22:54 -05:00
Davis Phillips
00fdec1d60 closes #21011 (#21015) 2017-02-03 13:57:19 -05:00
Ondra Machacek
de2b6469e9 [cloud][ovirt] new module ovirt_snapshots & ovirt_snapshots_facts (#20936)
* cloud: ovirt: add snapshots module

* Move imports in ovirt_snapshots module to match style & pass CI

* Move ovirt_snapshot_facts imports to comply w/ CI
2017-02-02 16:34:54 -05:00
Ondra Machacek
684c766e20 cloud: ovirt: add host engine options to ovirt_hosts (#20967) 2017-02-02 16:24:24 -05:00
Matt Martz
829c0b8f62 Update validate-modules (#20932)
* Update validate-modules

* Validates ANSIBLE_METADATA
* Ensures imports happen after documentation vars
* Some pep8 cleanup

* Clean up some left over unneeded code

* Update modules for new module guidelines and validate-modules checks

* Update imports for ec2_vpc_route_table and ec2_vpc_nat_gateway
2017-02-02 11:45:22 -08:00
Tobias Rüetschi
4f117df6ec univention udm_user: add parameter to control password update (#20699)
* univention udm_user: added support to set the password always

* module udm_user: added version 2.3 to update_password
2017-02-02 14:10:32 -05:00
Ondra Machacek
4269b12c9d Ovirt vms improve (#20882)
* cloud: ovirt: add function to get id by name

* cloud: ovirt: add instance type parameter

* cloud: ovirt: use param method instead of module.params

* cloud: ovirt: use 'and' at begging of next line

* cloud: ovirt: add description parameter to vms module

* cloud: ovirt: add comment parameter to vms module

* cloud: ovirt: add timezone parameter to vms module

* cloud: ovirt: add serial_policy parameter to vms module
2017-02-02 13:51:26 -05:00
Ondra Machacek
ee7f1cde0e ovirt: Add support to diff (#20698)
* cloud: ovirt: Add diff support to

* cloud: ovirt: Add ability to print nested list of objects

* cloud: ovirt: Fix waiting while reinstalling host

* cloud: ovirt: fix ovirt_vms 404 error

* cloud: ovirt: add check_mode support to ovirt_auth module
2017-02-02 13:50:52 -05:00
s-hertel
0ed1e6a1f3 [cloud] rds module: handle parameters that are False, but also not the default value. Fixes #20370 (#20646)
Boolean options that default as `None` but are set to `False` by the user were ignored on update. This change checks to distinguish None & False so that options like multi_az can be turned off during an update. 

* Modifying how optional parameters are handled in rds.py. Fixes #20370

Allowing options to be set to false/no. Previously ignored unless set to true/yes.

Added a conditional for invalid parameters since the default is false instead of null for some options (e.g. force_failover, apply_immediately, upgrade).

* Making requested revision.
2017-02-02 09:49:19 -05:00
Pau Rodriguez
cc240e3f2d fixed multi_ok(multi) usage in vpc_exists function 2017-02-02 00:28:38 +01:00
Will Thames
da1c13705d Disassociate EC2 VPC subnets from route tables before deletion (#20114)
* Disassociate subnets from route tables before deletion

If a route table still has subnets associated with it, it will fail
to delete:

```
"msg": "The routeTable 'rtb-abcd1234' has dependencies and cannot be deleted."
```

Avoid this by disassociating subnets before route table deletion

* Fix ec2_vpc_route_table flake8 complaints
2017-02-01 15:36:51 -05:00
Will Thames
950ff3f24a Fix EIP release in ec2_vpc_nat_gateway (#20167)
* Check if EIP exists before deleting it

After deleting the NAT gateway, the EIP sometimes seems to
cease to exist afterwards. Check if it exists before deleting it.

Otherwise you get:
```
Failed to release EIP eipalloc-abdc1234: An error occurred (InvalidAllocationID.NotFound) \
when calling the ReleaseAddress operation: The allocation ID 'eipalloc-abcd1234' does not \
exist", "success": false}
```

* Fix flake8 errors with ec2_vpc_nat_gateway
2017-02-01 15:32:03 -05:00
Maxime Deravet
0d2d25b515 Fix for #20473 - If there is no instance in the ASG, we initialize an empty array for properties['instances'] (#20475) 2017-02-01 15:29:18 -05:00
Tom Melendez
237b39556c [GCE] External IP Address Module. (#20779)
* [GCE] External IP Address Module.

This module allows users to create and delete External IP Addresses. Both Regional and Global Addresses are supported.

* Removed whitespace causing pep8 issue
2017-02-01 10:08:02 -05:00
naslanidis
c29f52897b [cloud] New module ec2_vpc_igw_facts (#19787)
* added ec2_vpc_igw_facts module

* added cr at end of file

* corrected import json in wrong location

* corrected version added

* added snake_case conversion

* updated documentation and fixed for python 3'

* ec2_vpc_igw_facts: simplify logic

Make module arguments more 'Ansiblish'
Remove unnecessary intermediate variables in results generation
Use `ansible_dict_to_boto3_filter_list` rather than duplicating logic
Use `check_mode` rather than pass a `dryrun` argument
Update for flake8 improvements

* updated documentation
2017-02-01 09:47:47 -05:00
Will Thames
38ff9b735e Fix python3, fix flake8, use common code
Update exception handling, remove use of iteritems
Update for better flake8 compliance

Use ansible_dict_to_boto3_filter_list rather than
duplicating its implementation
2017-01-31 14:49:50 -05:00
Etherdaemon
2e35d5716b Remove camel_dict_to_snake_dict as this was breaking the module itself - the result is a list 2017-01-31 14:49:50 -05:00
Etherdaemon
b0c49c7141 Update typo for connection to the get_nat_gateways function 2017-01-31 14:49:50 -05:00
Etherdaemon
e6821b3472 New facts module for ec2 nat gateway facts module 2017-01-31 14:49:50 -05:00
sebastianneubauer
3f14061584 s3 module: fix urlparse invocation and netloc mixup on Python 3 (#20836) 2017-01-31 11:54:29 -05:00
Matt Clay
503e85ed0e PEP 8 E111 cleanup. 2017-01-30 20:33:31 -08:00
Matt Clay
85300883ef PEP 8 E111 cleanup. 2017-01-30 20:17:35 -08:00
Matt Clay
5f89fc4a68 PEP 8 E111 cleanup. 2017-01-30 20:08:33 -08:00
Matt Clay
23f2efbc8d PEP 8 E111 cleanup. (#20841) 2017-01-30 18:03:13 -08:00
Steve Kuznetsov
4a57cba86d ec2_group_facts: Fail correctly when boto3 is not installed
Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
2017-01-30 15:03:56 -08:00
Matt Clay
cb76200c7d PEP 8 E111 & E114 cleanup. (#20838) 2017-01-30 15:01:47 -08:00
Logan V
7ef92e4c7a os_network: Allow freeform provider_network_type string
Prescribing types is not necessary as the underlying shade library
does not do so, and the Neutron API will inform us if a disallowed
or non existent type is used.

Fixes #20830
2017-01-30 13:58:41 -06:00
Jasper Lievisse Adriaanse
7156ad7153 Add support for additional properties when creating new VMs. (#20792)
* Add support for additional properties when creating new VMs.

All vmadm(1M) options except those specific to SDC(-docker)
are now supported.

* Mark password options as no_log

Change-Id: I9dfd80e7ba5ecfc8f45ecfbe9ec098e66647e9a4
2017-01-30 14:22:54 -05:00
Matt Clay
10d9318de7 PEP 8 indent cleanup. (#20800)
* PEP 8 E121 cleanup.

* PEP 8 E126 cleanup.

* PEP 8 E122 cleanup.
2017-01-29 07:28:53 +00:00
Matt Clay
e2c0b375d3 PEP 8 cleanup. (#20790)
* PEP 8 E115 cleanup.
* PEP 8 E131 cleanup.
2017-01-28 01:39:40 -08:00
Matt Clay
d0d1158c5e PEP 8 cleanup. (#20789)
* PEP 8 E703 cleanup.
* PEP 8 E701 cleanup.
* PEP 8 E711 cleanup.
* PEP 8 W191 and E101 cleanup.
2017-01-28 00:12:11 -08:00
Matt Clay
d913f69ba1 PEP 8 W291 whitespace cleanup. 2017-01-27 17:08:02 -08:00
Matt Clay
95789f3949 PEP 8 whitespace cleanup. (#20783)
* PEP 8 E271 whitespace cleanup.
* PEP 8 W293 whitespace cleanup.
* Fix whitespace issue from recent PR.
2017-01-27 15:45:23 -08:00
Matt Clay
63b1e0c277 Fix infrequent PEP 8 issues. 2017-01-27 14:06:21 -08:00
Rob Wagner
e401b8e827 Created gce_snapshot module (#20057)
* Added support for a gce_snapshot module for managing snapshots in the Google Cloud Platform

* Fixed using sys.exit in favor of fail_json. Followed the pattern in gce_pd

* Fixed using sys.exit in favor of fail_json. Followed the pattern in gce_pd

* Fixed an issue when dealing with multiple disks. Added a bit more documentation explaining the disks argument

* Corrected a typo in the multi-disk snapshot example

* Updated module to return list of changed snapshots instead of just a message. Added a RETURN block
2017-01-27 16:18:30 -05:00
David Shrewsbury
c950767898 Merge pull request #19320 from manics/ansible-modules-core/pull/5176
Allow creation of Openstack volumes from an existing volume
2017-01-27 10:12:00 -05:00
Robert Simmons
0e7dd18650 Fixed issue in gce_net with firewall rules that have protocols that d… (#20528)
* Fixed issue in gce_net with firewall rules that have protocols that do not have ports.

* Fixed elif in gce_net to include check of the ports variable.
2017-01-26 16:17:55 -05:00
Tom Melendez
c2edc8a264 [GCE] Google Cloud Pubsub Module (#19091)
* Google Cloud Pubsub Module

The Google Cloud Pubsub module allows the Ansible user to:
* Create/Delete Topics
* Create/Delete Subscriptions
* Change subscription from pull to push (and configure endpoint)
* Publish messages to a topic
* Pull messages from a Subscription

An accessory module, gcpubsub_facts, has been added to list topics and subscriptions.

* Added docs for state field to DOCUMENTATION and RETURN blocks.
2017-01-26 16:16:52 -05:00
Antony PERIGAULT
0bc2ccdebf vmware_guest: Fix a bug when deploy a VM is not always considered as a change 2017-01-26 13:40:55 -05:00
simplesteph
392fa5a7ac moved utils function to utils modules, fixed a small typo 2017-01-26 12:24:45 -05:00
simplesteph
d811b1d942 added deployment configuration as an option. this fixes #2434 2017-01-26 12:24:45 -05:00
Dag Wieers
e06227ce16 Small cosmetic changes and documentation updates (#20632)
After merging the latest update, these were the few remaining
differences with upstream.

(Plus the previous proposed fast match based on unique VM name which is
not longer needed)
2017-01-26 10:26:07 -05:00
aperigault
614390a310 vmware_guest: Fix nic configuration with already present nics (#20640) 2017-01-26 12:42:08 +00:00
Jasper Lievisse Adriaanse
899e336b1e Rework imgadm module: (#20535)
- get rid of changed, rc, stderr, stdout juggling
- use get_bin_path() to get 'imgadm' path
- move actual implementation to Imgadm class
- fix 'changed' for imported images
2017-01-26 07:55:02 +00:00
Ondra Machacek
c7739be960 cloud: ovirt: Add possibility to skip disk copy (#20656) 2017-01-25 13:51:37 -05:00
Ryan S. Brown
619e97d67e docker_container: remove third digit from version_added docs 2017-01-25 12:04:10 -05:00
Colleen Murphy
0890559ab5 Fix OpenStack keystone domain idempotency (#20637)
Without this patch, the os_keystone_domain module is not idempotent if
the description is empty because the description parameter is None in
ansible, but the keystone client returns an empty unicode string.
Following the example of other OpenStack modules, this patch fixes the
issue by checking whether the module parameter is None before going on
to check its value.
2017-01-25 16:57:13 +00:00
Ryan S. Brown
7a19a18e61 [docs] Update docker_container docs to match syslog-tag deprecation in docker 1.13
Closes #20591
2017-01-25 10:19:10 -05:00
Ondra Machacek
4e51440af9 cloud: ovirt: add affinity groups module (#20047) 2017-01-25 09:17:58 -05:00
Ondra Machacek
937fc1421b Allow change kernel boot parameters of oVirt hosts (#20607)
* cloud: ovirt: add override_display parameter

* cloud: ovirt: add kernel_params parameter

* cloud: ovirt: add reinstall state to ovirt_hosts module

* cloud: ovirt: wait before polling entity state
2017-01-25 09:17:32 -05:00
aperigault
add06b505a vmware_guest: Amazing speed up module (#19937)
* vmware_guest: Amazing speed up module
* vmware_guest: Change variables name to do PEP compliant
2017-01-24 11:42:37 -05:00
Michał Masłowski
c10c7aa67b lambda: Remove the note about supporting S3 uploads only (#20562)
The module supports also ZIP uploads which are documented.

Refer to the correct boto3 function in the return value description.
2017-01-24 11:21:32 -05:00
Daniel Andrei Mincă
27816dd284 update GCE instance image with Debian 8 Jessie (#20558)
* update instance image with Debian 8 Jessie

* debian-7 is marked as "DEPRECATED" in Google Compute Engine Images
  * as a result, by default use `debian-8` Jessie

Resolves:
Related:
Signed-off-by: Daniel Andrei Minca <danielandrei.minca@gameloft.com>

* update docs regarding latest stable default image

* after speaking with @gundalow, we decided it's better for the users to
  know that the default image will follow latest stable debian by GCE

Resolves: #20558
Related:
Signed-off-by: Daniel Andrei Minca <danielandrei.minca@gameloft.com>
2017-01-24 11:20:36 -05:00
Andrej Svenke
491b67f114 Fixed bug in ecs_taskdefinition for new task with forced revision 1. (#20561) 2017-01-24 11:19:22 -05:00
René Moser
d1c3cbbc70 cloudstack: fix user data unexpected marked as changed (#20540)
self.instance may be overwritten before the user data comparsion which result in a false positive changed state. 

With this commit, we make sure we have the userdata when we need to.
2017-01-24 11:10:59 -05:00
naslanidis
8a01f209ac new AWS module for ec2 VPC vgw facts (#19021)
* new AWS module for ec2 VPC vgw facts

* fixed documentation as suggested by reviewers

* changed iteritems to items for py 3

* improvements to bring in line with #19787

* corrected documentation

* updated doco and exception path
2017-01-24 09:54:49 -05:00
René Moser
5475f3ee64 cloudstack: cs_instance: fix ssh key always marked as changed (#20541)
The same ssh key may be registered with different names. Before we only looked at the names and marked as changed when names differ. However internally cloudstack seems to ignore the change, if the fingerprints are identical. 

As a result we also have to compare the fingerprints and only mark the keys as changed if the fingerprints differ.
2017-01-24 07:49:54 +01:00
Jun Guo
cfed617dba Support option none in docker_container when setting log_driver (#19040)
Per official docker document, it support setting `--log-driver=none` to
disable any logging for the container. So let's add it to this module.

Fixes #5337
2017-01-23 20:23:58 +00:00
Will Thames
75437bbe3c Fix ec2_vpc deprecation docs
Clarify the CHANGELOG with deprecation timeline
Correct name of `ec2_vpc_net` module to be used instead
2017-01-19 17:07:57 -08:00
Robert Sax
9d26d8b605 fixing mime types in s3_sync module (#20059) 2017-01-19 15:14:05 -05:00
Ross Williams
592c79e837 Add support for registering Amazon Machine Images from EBS snapshots. (#19020) 2017-01-19 13:06:36 -05:00
Fabio Alessandro Locati
b2acba0d16 Improve examples and remove shell (#19208) 2017-01-19 17:15:24 +00:00
Will Thames
75a7ebe900 Deprecate ec2_vpc module (#20344)
* Deprecate ec2_vpc module

The deprecation of ec2_vpc module has been discussed for
2 years and is causing duplication of effort as changes
are implemented for ec2_vpc rather than for the newer
alternatives

* Improve module deprecation documentation

Update the developing modules documentation with the latest
instructions on how to deprecate a module.
2017-01-19 11:25:28 +00:00
Jasper Lievisse Adriaanse
af1c2aa9b3 New module for managing VMs and zones on SmartOS. (#19951)
* New module for managing VMs and zones on SmartOS.

Currently allows for creating new instances and state changes.
Updating existing VMs is not supported yet

* Fix identation in DOCUMENTATION

* Add RETURN block

* Apply flake8 recommendations and split up main() into separate functions.

* Be more about the states this module accepts and trim the exposed list

* Be more verbose about states and the implications

* Fail with a more descriptive error messages than just 'stderr'

* Valid all UUIDs before exiting

* Incorporate feedback from bcoca

* Print field name that contains invalid uuid, not the value

* More changes as suggested by bcoca:

- drop save_payload completel
- make 'name' the options with an 'alias' alias
- use get_bin_path() for locating 'vmadm'

* Doc fixes

Change-Id: Ia23704c99d24b7782d8884fd22e11af61cef724c

* More fixes suggested by jtyr

Change-Id: Ia3e65277bf5a499651c70b096e2988d7cc9eceb5

* Drop local changed variable

Change-Id: Ia8beaa615ba4a47004d7af791c28a5a5855bcf61

* Use correct ANSIBLE_METADATA format

Change-Id: I51ded34e543005933c7c739501388e24e5f80c1d

* Re-indent RETURN

Change-Id: I0c266d7a83517be54fc6242dfb0496a0a480f628

* Fix documentation formatting for options and fix an unused variable

* Move imports to their original location again

* Fail if there's invalid json returned instead of trying to continue

* Betterer error handling for json.loads()
2017-01-18 12:21:52 -08:00
dariko
e2a1ce2916 [docker] Add compatibility with docker-py v2.0 2017-01-18 14:39:18 -05:00
rmarsa
32f39a195b Fixed bug where it was impossible to set non-ephemeral external ips. (#19701)
* Fixed bug where it was impossible to set non-ephemeral external ips.

* Fixed variable reference.
2017-01-18 14:13:59 -05:00
Laurent Goujon
d3c17d632b gce_pd: add delete_on_termination option (#20201)
Add delete_on_termination option to gce_pd, which will delete the disk
when the attached instance is terminated.
2017-01-18 13:52:23 -05:00
Alberto Murillo Silva
5438e0463c Fix typos in os_quota.py
* Replace 'auota' with 'quota'
* Replace 'polcies' with 'policies'
2017-01-18 11:21:22 -06:00
Ondra Machacek
5d00d4d85e cloud: ovirt_vms: Filter VNIC profile by cluster (#20246) (#20384)
This patch add additional filtering of VNIC profiles by the cluster
parameter. It is a must, because there could be same names of the
VNIC profiles in system, as every datacenter can have VNIC profile
same name, which can be in other datacenter.

This patch fixes issue #20246
2017-01-18 10:44:02 -05:00
Pascal Bach
c6621aa0ae ec2_vol: Add key selection support for EBS volume encryption. (#19570)
* Fixes: #3217 - Add a new parameter for the kms_key_id to the ec2_vol module.

* Fixes: #3217 - Correcting comment string as requested.

* Fixes: #3217 - Adding boto version when kms_key_id is used. Also re-adding accidentally removed comment line.

* Cleanup of EBS volume key pull request
2017-01-18 10:02:54 -05:00
Ondra Machacek
aa6ce16aa4 cloud: ovirt_permissions: Add new entities (#20388)
This patch add new entities to manage permissions:

 - disk_profile
 - cpu_profile
 - vnic_profile
 - system

It also enhance the documentation.
2017-01-18 10:01:25 -05:00
Ondra Machacek
d9d1194c80 cloud: ovirt: Ignore 404 error when getting entity (#20386) 2017-01-18 10:00:23 -05:00
aperigault
e9704b389b vmware_guest: Fix windows joindomain customization (#20303) 2017-01-18 10:52:51 +00:00
Rene Moser
97491672e4 doc: changelog: add new module cloudscale_server 2017-01-17 23:21:37 +01:00
gaudenz
08e08ac775 new module cloudscale_server (#20175) 2017-01-17 23:15:20 +01:00
David M. Lee
fde551fa2a Adding support for Amazon ECR (#19306)
* Adding support for Amazon ECR

This patch adds a new module named ecr, which can create, update or
destroy Amazon EC2 Container Registries. It also handles the management
of ECR policies.

* ecs_ecr: addressed review feeback

 * Renaming ecr to ecs_ecr
 * Fixed docs
   * Removed bad doc about empty string handling
   * Added example of `delete_policy`
 * Removed `policy_text` option; switched policy to `json` type so
   it can accept string or dict
 * Added support for specifying registry_id
 * Added explicit else after returned if clauses
 * Added `force_set_policy` option
 * Improved `set_repository_policy` error handling
 * Fixed policy comparisons when AWS doesn't keep the ordering stable
 * Moved `boto_exception` into the module
2017-01-17 14:45:43 -05:00
Rene Moser
3fbbdcd466 doc: cloudstack: cs_host: fix return docs 2017-01-17 20:39:33 +01:00
Rene Moser
b9a1400df5 doc: changelog: new module dimensiondata_network 2017-01-17 08:20:35 +01:00
David M. Lee
b8dd4dd52b amazon: added boto3_conn to GUIDELINES.md (#20305)
* amazon: added boto3_conn to GUIDELINES.md

* Update GUIDELINES.md

Light edits. Good to go.
2017-01-16 21:00:45 -08:00
Adam Friedman
4b6201ce0d New dimensiondata network (#19325)
* Add dimensiondata_network module

* Remove shebang

* Use Python-2.4-compatible exception handling.

* Ok, add shebang back in.

* Add 'mcp_user' and 'mcp_password' parameters'.

As suggested by @abadger, these values will now be used for CloudControl credentials, but will fall back to existing behaviour (environment variables and dotfile).

* Minor fixes based on feedback for ansible/ansible#19325.
2017-01-16 13:49:10 -08:00
Brian Coca
06e30485ea moved univention into cloud 2017-01-16 14:43:17 -05:00
nerzhul
90d94bd6db vmware_guest: doc fix 2017-01-16 10:09:52 -05:00
Dag Wieers
439ef46898 vmware_guest: networks definition as a list (#19857)
* vmware_guest: networks definition as a list

Currently the networks definition is a dict, with the network range as
key. This is problematic if the network information is coming from other
sources.

This patch turns the networks definition into a list.

This fixes #19222.

* Remove the option to provide either netmask or network

It is more concise if there's only one way to configure it.
So provide both `ip` and `network`.

(I also re-indented a section due to a useless check)

* Fix bugs reported by @dav1x

Thanks !
2017-01-16 09:30:37 -05:00
Dag Wieers
20df62ab31 vmware_guest: Various fixes and changes
Changes missing from a poor merge probably, but also a few new things.
- Reordered the examples from important (often used) to less important
  (fewer used)
- Remove the new_name: option and replace it with the uuid/name
  combination for renaming + added example
- Added an example using the VM uuid instead of the VM name
- Also check whether the password is non-empty (rogue merge)
- Wait for all tasks to finish (to be sure the new facts reflect the
  state)
- Ensure that on failure we still set the change-bit
- Moved a set of functions that are unused (related to transfering
  files to guest, or running commands) to module_utils
2017-01-16 09:26:17 -05:00
jayme-github
f813a8474b Allow the use of paths like ~/.project.json (#16064)
* Allow the use of paths like ~/.project.json

This makes it easy to manage credentials files outside of the repo
(and/or user specific credentials).

* Fix format string to log credentials_file.
2017-01-16 09:10:16 -05:00
Mohammed Naser
ca9387dc0b Pop password from os_user params
The password param conflicts with os-client-config's password grabbing.
The rest of the params really probably should also be popped - but
keeping this just to password for now. Will follow up with a change that
does an audit of all the os_ modules

This patch was previously contributed by @emonty to the former
ansible-modules-core repo however since the merge, it was closed
and not completed.  This patch includes the necessary changes cleaned
up to work with the latest release of Ansible.  This has been
tested to work internally
2017-01-14 08:32:27 -05:00
Jasper Lievisse Adriaanse
64692e7a89 Annotate boto3 dependency in the standard location. 2017-01-13 14:36:17 -05:00
Mark Maglana
b598575213 module_utils/dimensiondata (#17604)
* Add dimensiondata.py in module_utils

This is required by the Dimension Data modules under
lib/ansible/modules/extras/cloud/dimensiondata

* Implement change requests from PR #17604

Requests are listed in:
 https://github.com/ansible/ansible/pull/17604#pullrequestreview-819380

* Changes requested for Ansible PR #16704.

As noted by @abadger:

- Use Py3-compatible import syntax for ConfigParser.
- Use comprehensions instead of filter function.
- Fix buggy comparison of False to 'False'.
- Change b_dict to block_dict.
- Fix invalid syntax for except block that handles multiple exception types.

* Additional changes requested for Ansible PR #16704.

As noted by @abadger:

- Missed a couple of places where we still had invalid exception-handling syntax.

* Remove shebang from dimensiondata.py (Ansible PR #16704).

* Switch to MCP_USER / MCP_PASSWORD.

This is consistent with other Dimension Data Tooling.

* Implement get_configured_credentials.

* Fix typo (missing comma).

* Unify get_credentials implementation (ansible/ansible#17604).

get_credentials will now look in environment, dotfile, and module configuration for credentials (in that order).

* Resolve user Id and password from module configuration before trying environment or dotfile (ansible/ansible#17604).
2017-01-12 20:50:43 -08:00
defunct
92b26a28b8 Update ec2_ami_copy to boto3, fix encrypted support (#20009)
* Update ec2_ami_copy to boto3, fix encrypted support

* docs, backwards compat options, more verbose exception handling

* minor option changes, fix documentation

* update documentation
2017-01-12 19:39:32 -05:00
Jasper Lievisse Adriaanse
232cb764da Add RETURN section, fix identation and apply flake8 recommendations (#20148) 2017-01-12 14:58:07 -08:00
Tareq Alayan
e40ad1ac17 cloud: ovirt: add ability to override luns (#20144)
Add the ability to wipe used luns when adding new iscsi storage
2017-01-12 14:13:50 -05:00
Michael Scherer
6221327b13 Add DHCP leases to the facts return by the module (#19700)
On RHEL 6, where the feature is not present, this will
be ignored and return nothing.
2017-01-11 18:38:38 -05:00
rmarsa
1d80a8dbfb Added the ability to set the size of the boot volume. (#19703)
* Added the ability to set the size of the boot volume.

* Made disk_size parameter of type int with 10 default.
2017-01-11 16:08:31 -05:00
ansibot
36c79709a4 Merge pull request #20136 from tareqalayan/fix-documentation-ovirt-cloud
cloud/ovirt: minor fix on documentation
2017-01-11 14:42:17 -05:00
BRAMILLE Sébastien
110753502e Update rds_subnet_group.py 2017-01-11 12:37:31 -05:00
Tareq Alayan
ebf3c41275 cloud: ovirt: 'glusterfs' as default for vfs_type
When storage type is glusterfs, the vfs_type will be glusterfs as well,
there is no need to specify it since there is no other valid value.
2017-01-11 19:26:40 +02:00
Ondra Machacek
11b2662f60 cloud: ovirt: add support for OVN network (#20122)
This PR add support to add OVN external network in
external providers module.
2017-01-11 10:39:37 -05:00
Michał Masłowski
5a1395a486 sns_topic: Do not attempt to unsubscribed deleted subscriptions (#20086) 2017-01-11 06:57:24 -05:00
Willem van Ketwich
1ee69c07cc New module (cloud): cloudfront_facts (#19727)
* initial commit of cloudfront_facts.py

* modification as per review from @georgepsarakis

* fixed shippable build error

* fixed shippable build error

* removed wildcard imports and replaced with specific imports from ansible.module_utils.ec2 as advised by @georgepsarakis

* renamed all instances of cloud_front_origin_access_identity to origin_access_identity as advised by @georgepsarakis

* added input option requirements where missing. fixed a typo in an error message, added '.' to the end of sentences.

* fixed typo in documentation

* simplified paginated_response method as advised by @georgepsarakis

* set default option to list_defaults when no option specified as advised by @ryansb

* bumped version to 2.3 as advised by @ryansb

* removed double-nesting of ansible_facts as advised by @ryansb

* show facts based on alias and distribution id for easy referencing as advised by @ryansb. have done for both distribution and distribution_config

* made comments clearer

* fixed incorrect logic for default list_distributions, fixed list_distributions_by_web_acl - wasn't passing web_acl_id, fixed list_invalidations keyword args missing DistributionId

* neatened up logic for list_distributions default

* facts now return Etag as well as specific facts. modified paginated_response to handle this. also all requests that use distribution id also list the facts under the corresponding alias now.

* fixed last fact added clobbering all previous facts for an alias or an id

* removed list_ prefix from list keys

* removed unnecessary boto fields. made list_distributions and list_streaming_distributions dictionaries with id/alias as key. fixed list_invalidations.

* fixed incorrectly named list_distributions_by_web_acl to ..web_acl_id. added id/alias dict for list_distributions_by_web_acl_id

* minor doc changes

* removed merge tag

* fixed more of merge
2017-01-10 11:27:54 -05:00
Toshio Kuratomi
8ae29a5a80 Remove the redundant get_exception import 2017-01-10 08:19:54 -08:00
Dag Wieers
560831752e Defined get_exception() (#20087)
This fixes #20080
2017-01-10 08:18:51 -08:00
Ner'zhul
16a1585ffc vmware_guest: Fix customvalues when VM doesn't exists (#20094) 2017-01-10 11:07:42 -05:00
Brian Coca
3ceff2f9b3 added missing import 2017-01-10 10:37:55 -05:00
Ner'zhul
7603ae33b5 vmware_guest improvements: annotations & customvalues (#20052)
* Idempotency fix on annotations permitting to change them on reconfiguration
* Permit to set VMware customvalues attributes on VM
* Gather annotation & customvalues and report it into module facts
2017-01-10 09:10:48 -05:00
Dag Wieers
aca60f1776 vmware_guest: various customizations changes and fixes (#19975)
* vmware_guest: various changes and fixes

Most of my queued changes were already implemented by @aperigault !

This was still open
- Typos
- Various fixes to dict.get() without quotes
- Defaults to fullname and orgname (so they are no longer mandatory)
- Add missing timezone implementation
- Remove the customize flag from the options
- Rename 'customizations' to 'customization' (cfr VMware docs and fora)

* Important fixes for idempotency and customization

- A password is mandatory for customization to work on Windows !
- An important fix for idempotency related to guestId
- Support all types of Windows guestId entries

* Suggestion by @aperigault

* Small documentation fixes
2017-01-10 08:34:38 -05:00
René Moser
bcf9cd1e2a cloudstack: cs_iso: fix async poll for state=absent (#20050) 2017-01-10 12:06:13 +01:00
Ner'zhul
e87d6d8a70 Unbreak vmware_guest module which was break by 818ef493ad (#20036) 2017-01-09 11:29:18 +00:00
aperigault
8241675095 vmware_guest: Rename existing VM, or mark as template (#20018)
* vmware_guest: Add rename feature

* vmware_guest: Add feature to mark an existing VM as template
2017-01-09 09:37:36 +00:00
Michael
583136980d Adding os_quota support to the OpenStack modules (#19590)
* Adding os_quota support to the OpenStack modules

* Updated descriptions in doc string

* Updated version_added to 2.2 based on CI test feedback

* ready_for_review

* Changed exit_json to remove updating host var facts

* Updated version_added and docs

* Added support for state:absent paramater

This includes:
- Updated the doc string with the paramater information
- Updated the example section showing how to reset a project quota
- Added code support to handle state:absent
- Encountered a bug in delete_network_quota where it returns
an error instead of the current quota. Added support code to
workaround that issue until a proper fix can be added.

* Updated security groups kwarg to reflect Neutron kwargs

* Updated iteritems to be items based on CI feedback

* Updated descriptions and import statements based on code review feedback

* Updated CHANGELOG.md to include os_quota under new mods.
2017-01-08 18:55:12 +00:00
Toshio Kuratomi
08d6990e67 Fix code-blocks to use correct syntax highlighting 2017-01-08 09:18:45 -08:00
John R Barker
01849004e9 Correctly link to modules (#20019) 2017-01-08 17:06:07 +00:00
Fabio Alessandro Locati
474c0dc87c Remove quotes - Cloud/azure/azure.py (#19206)
* Remove unused quotes

* Explicit is better than inplicit
2017-01-08 15:28:48 +00:00
Tom Melendez
89f232ad8a [GCE] gc_storage: add type parameter to expiration in argument_spec. (#19979)
Fixes ansible/ansible#19568
2017-01-06 13:27:47 -05:00
howinator
90002e06ae Add subnet associations to route tables dict
The main purpose of this PR is to add the subnet associations to the
dict returned by ec2_vpc_route_table_facts. This commit also
re-formats code to make it PEP8 compliant.
2017-01-06 12:30:54 -05:00
Will Thames
4bf7bf0b94 Add postgres-9.6 to rds_param_group module
Support postgres-9.6 as an engine choice for rds_param_group
2017-01-06 12:29:37 -05:00
John R Barker
40ecc3188f Use M() to link to the replacement module. (#19976) 2017-01-06 16:21:39 +00:00
aperigault
818ef493ad vmware_guest: Add windows customization support (#19866)
* vmware_guest: Add windows customization support

* vmware_guest: Move customizations inside separate function
2017-01-06 10:27:48 -05:00
Ryan S. Brown
7a074b69a0 gce_net module: fail when no libcloud is found 2017-01-06 09:05:52 -05:00
Dag Wieers
00031e454e Sanitize folder path from the very start (#19929)
- If an absolute path is provided, ensure it starts with /vm
- Also ensure there are no trailing slashes

This gets rid of a few locations where the same was being done.
It also fixes the cases of multiple trailing slashes, or ending up with
/vm/ instead of /vm.
2017-01-06 09:05:10 -05:00
Emlyn Stokes
1154aca746 Paginate ASG results (#19944) 2017-01-05 16:12:30 -05:00
Jasper Lievisse Adriaanse
7793424b1b Add new module to manage SmartOS images through imgadm(1M) (#19696)
* Add new module to manage SmartOS images through imgadm(1M)

* Explain why check_mode is not supported

* Add imgadm module

* Incorporate feedback from abadger
2017-01-05 12:30:31 -08:00
Toshio Kuratomi
22c9428776 eval() should be avoided when at all possible
eval can have security consequences.  It doesn't look bad here but it
does introduce unnecessary complexity and would make it harder if we
ever want to use static analysis to detect and prohibit eval.  So we
should get rid of it.

Note: this could be even more efficient if we combined the checks into
a single condition instead of looping but that does change the error
messages a bit.  For instance:
-        for arg in ('name', 'linode_id'):
-            if not eval(arg):
+        if not (name and linode_id):
+            module.fail_json(msg='name and linode_id are required for active state')
2017-01-05 10:41:49 -08:00
Samuel Boucher
ed624876d1 Update atomic_image.py (#19756)
Doc update typo
2017-01-05 10:33:05 -08:00
Dag Wieers
9ddcf16b4b vmware_guest: add support for more virtual NICs (#19932)
This patch adds support for all other virtual NICs, including:

 - pcnet32
 - vmxnet2
 - e1000e
 - sriov

Without this change, VMs with one of these NICs will fail with a
fault.NicSettingMismatch.summary error as it will only add interfaces,
not edit these.

This fixes #19860
2017-01-05 18:16:21 +01:00
Tyrone Tudehope
38d42e8b36 module is a property of the global object client (#19744)
Fixes #5466
2017-01-05 08:59:30 -08:00
René Moser
cb8cc51fdf cloudstack: new module cs_host (#19331) 2017-01-05 16:28:42 +01:00
Ted Timmons
12495e4b42 New module: aws_kms for managing access grants on AWS KMS keys (#19309)
New module by @tedder for handling granting/revoking access to KMS secrets. 

For example:

```
- name: grant user-style access to production secrets
  kms:
  args:
    mode: grant
    key_alias: "alias/my_production_secrets"
    role_name: "prod-appServerRole-1R5AQG2BSEL6L"
    grant_types: "role,role grant"
```
2017-01-05 09:42:59 -05:00
Ondra Machacek
8a3e80eb09 cloud: ovirt: add kernel boot parameters to vms module 2017-01-04 17:11:07 -08:00
Enis Ozgen
d4d9a48205 Fix typo in ec2_vpc_peer.py documentation 2017-01-04 16:51:26 -08:00
Paulo Matias
d51064a05e os_user: fix typo (self is not defined) 2017-01-04 16:47:43 -08:00
Dag Wieers
ecaa0202b9 vmware_guest: assorted fixes and improvements (#19842)
A small collection of fixes and improvements:
- Simplify should_deploy_from_template()
- Bugfix for x.config that can be None
- Bugfix for mandatory guest_id (not when using templates)
- Simplify key testing and defaults
- Fix an incorrect reference to the last network
- Duplicate alias 'folder' removed
2017-01-04 17:25:09 -05:00
Ryan S. Brown
8772e4387b Update ec2_facts with new ap-south region 2017-01-04 10:27:48 -05:00
Rob
927218d99d Fix backward compat change - create custom required_together statement (#19642) 2017-01-04 14:11:56 +00:00
Kash
dceace6bb2 ecs_taskdefinition: Fix missing import camel_dict_to_snake_dict (#19560)
ecs_taskdefinition: Fix missing import camel_dict_to_snake_dict
2017-01-04 13:50:13 +00:00
Dag Wieers
fbec2ecaa8 vmware_guest: Do not match simply by folder (#19823)
This fixes #19077
2017-01-04 09:26:29 +00:00
Dag Wieers
0d9392a3bc vmware_guest: import iteritems (#19821)
Without this change you get this on Python 2.7.5:

    NameError: global name 'iteritems' is not defined
2017-01-04 09:12:29 +00:00
Tomáš Karásek
3ebbcbadcf 2 modules for Packet host: packet_device and packet_sshkey (#19005)
* Added 2 modules for Packet Host: packet_device and packet_sshkey

* Fixed comments from @mmlb

* Fixed comments from @gundalow

* Fix typos pointed by @gundalow

* Mention new Packet modules in the CHANGELOG.md
2017-01-03 16:10:17 +00:00
Ner'zhul
2c17f9becd vmware_guest: module rewrite to add many features & fixes (#19228)
* vmware_guest: various fixes, improvements & additions

* Add template_flag attribute to define if the destination machine is a
template
* Add helper class to create:
  * SCSI controller
  * Disks
  * Network devices
* New feature: create VM without using templates
* New feature: multiple NIC
* New feature: multiple disks
* New feature: custom SCSI controller types (default: paravirtual)
* New feature: NIC can now be E1000 or VMXNet3 (default)
* New feature: customize NIC mac address
* New feature: new disk option autoselect_datastore permit to select the less used datastore. If datastore field is provided, filter the datastore list before selection
* New feature: Implement disk resizing + addition when state=present and VM exists
* New feature: when state=present and vm exists, modify the current CPU, Memory and disk space
* New feature: add guest_id support permitting to customize & change current VM guest ID in VMWare
* New feature: resource pool support
* New feature: change VM configuration without recreating it (CPU, memory, disks, network, guest ID, resource pool)
* Add 'gatherfacts' state to gather facts on a VM instead of previous 'present' state ('present' ensure the VM configuration)
* Add PyVmomiCache class to cache read only object
* Various python code fixes
* Various documentation fixes
* esxi_hostname & cluster are now exclusive
* Drop ips attribute & set ip directly into networks
* Little performance fixes by removing some duplicate calls to VMWare API
* Python 3 portability fixes
* Create many functions to make the code maintainable
* Cleanup some useless attributes

* Add 'suspended' as desired state for VM

* Make guest_id, memory & CPU number optional in reconfiguration mode

* Note: guest_id is now mandatory to create a VM from scratch (not templating)

* Bux fixes + Do network IP optinal + Add network vlan option
2017-01-03 09:48:07 -05:00
Kash
8e0119b24c ecs_taskdefinition: more accurate description in doc (#19204) 2016-12-30 12:30:04 -05:00
Ondra Machacek
9a2b220005 ovirt: get default auth/connection params from environment vars (#19385)
* cloud: ovirt: add possibility specify auth params in env vars

* module_utils: ovirt: fix pep8 issues
2016-12-30 12:24:05 -05:00
Rob
36213e8b21 Fix to fail when task_definition or desired_count not defined and state=present, define that role is required with load_balancers parameter and a few pep8 fixes (#19490) 2016-12-30 10:50:09 -05:00
Rob White
62dfa2ad11 Add helper function so that IAM policies can be compared for equality and update s3_bucket to take advantage of helper function 2016-12-30 10:41:22 -05:00
Tom Paine
e66501b0b7 [docs] update ec2_ami_copy docs to clarify encrypted snapshots (#19641)
Docs formatting.
2016-12-30 10:37:25 -05:00
Tom Paine
7ba746dc1e Update ec2_ami.py (#19636)
- Consistent capitalisation in the descriptions
- Removed redundant 'optional' notes when this is covered by the Boolean `optional` column
- Clarified `instance_id` description
2016-12-30 10:36:29 -05:00
Ondra Machacek
ba9f6326f4 Documentation improvments of oVirt modules (#19668) 2016-12-30 10:35:26 -05:00
Lujeni
427cfd6162 Fix the certificates bodies compare into iam_cert module (#19684) 2016-12-30 10:34:18 -05:00
joernheissler
a5145a41a8 Add 3 new Amazon AWS regions (#19687) 2016-12-30 10:32:21 -05:00