* Better handling of absent AWS SES identity notification information.
Fixes#36065
aws_ses_identity module now handles the cases where information about
the notification setup for the identity isn't returned by the AWS api.
This seems to happen in an edge case, believed to be eventual
consistency on registering new identities. So this case is treated
as if has been no notification setup for the identity yet.
Also fix 2 flake8 warnings in the module, a missing newline and unused
import.
* Increase the Boto Retries on SES APIs to deal with throttling.
This should address the unstable integration test failing due to
parallel runs in shippable hitting AWS throttling.
* Add retries loading SES details for inclusion in successful response.
There seems to be an eventual consistency behaviour with identity
registration. It's possible to still get no identity back after
registration.
This can cause failures in the shippable builds. This should fix that by
creating a retry of retrieving the identity information after
registration.
A similar retry loop has been added to notification attributes to ensure
this doesn't suffer from the same failure.
* Add missing sleep in get_notification_attributes to avoid busy loop.
This change adds the optional wait_for_state_change argument to the
vmware_guest, vmware_guest_powerstate module, which allows for module
completion to be blocked when using the shutdownguest state until the
VM has reached the poweredoff state.
Fixes: #28498
Signed-off-by: Jim Gu <heming.gu@mercurygate.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* Adding support for vApp properties.
* vm specification updated only if changes have to be applied. I.e. subsequent updates with the same data will not trigger changed state
* Auxiliary variables renamed, hope this makes the code more readable
* Integration tests changed - re-adding the same properties test not implemented, but tested on real vCenter deployment
* fixing documentation "version_added" for the feature
* Addressing reviewers comments #2:
* documentation updated with the only meaningful value for "option" attribute - "remove"
* Fixed improperly handled case when user requested "add" operation for existent property
* vApp configuration is updated only with properties that contains changes, not with all properties requested by user
* Add AWSRetry when describing VPCs to help stabilize integration tests
* Add retry on create_tags because it is possible to reach this API call before the VPC is finished creating
This fix adds a common API for getting host system managed object
from either cluster name or host system.
Fixes: #36010
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
Remove module from ignore lists and some documentation fix in
digital_ocean_block_storage and digital_ocean module.
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
This fixes, cloning operation where template or existing VM
does not have network or DVPG. Also, adds some strict type checking in
network parameters.
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
Start using this to construct shade OpenStack Cloud objects in a
consistent manner. This will let us centralize things like dealing with
password arguments and whatnot. It also allows us to introduce the
ability to pass a fully formed config dict directly to the module.
Migrate all OpenStack modules to use openstack_cloud_from_module.
Have it return the shade library since it's responsible for
importing shade and shade is needed for the exceptions.
Only pull specific OpenStack arguments for the constructor
Rather than passing **module.params to the shade constructor, pull out
only the values that make sense. This should prevent the issues with
module parameters stepping on shade parameters.
Replace module.params.pop with module.params.get
We don't need to pop these anymore since the shade constructor is now
using opt-in values.
Using real urls is ungood. Use example.com domains. Also, get rid of the
antiquated port numbers.
* Added metrics_collection management to ec2_asg module to switch ASG metrics on and off.
* Fixed typo in documentation of ec2_asg module
* Removed extra blank line in ec2_asg.py
* Docs fixes for ec2_asg module
* Added integration test for ec2_asg metrics flag
* Trying different syntax for ec2_asg test
This fix adds an additional check if there is no snapshot available
in VM. `rootSnapshotList` is None, if no snapshot is taken.
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* hardcoded API profiles in azure_rm_common
* changed azure_rm_securitygroup module to use api_profiles, dynamic models, kwargs on all SDK methods
* changed azure_rm_containerinstance module to use api_profiles, dynamic models, kwargs on all SDK methods
* fixed polling performance issue in azure_rm_securitygroup (default poll interval was 30s)
* Stabilize ec2_vpc_route_table
Wait for route table to be present before attempting to use it
Sleep before getting the final state of the route table in case modifications are incomplete
* Conditionally wait if changes were made
* Simplify logic
* Initial (re)implementation of dimensiondata_vlan module.
This module was rewritten because the original implementation was imperative rather than declarative (which is the preferred style, and consistent with our other modules).
Credit for the original module implementation goes to Aimon Bustardo (@aimonb).
* Remove unused imports.
* Improve error message and documentation around expansion of a VLAN's private IPv4 network.
* Split message string over 2 lines.
* Add check_mode support to dimensiondata_vlan module.
ansible/ansible#21218
* Fix errors / warnings reported by Ansible sanity tests.
ansible/ansible#21218
* Remove 'metadata_version' key from documentation.
ansible/ansible#21218
* Return changed=True when changes would be made.
ansible/ansible#21218
AWS (and Boto3) supports VPN TunnelOption keys to be specified for VPNs. Specifically (at least at the moment), the options for 'TunnelInsideCidr' (str) and 'PreSharedKey' (str) are particularly noteworthy. One or both may be specified within a 'dict' object (max 2 dicts). AWS defaults shall apply in absence of said parameters.
* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.
* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.
* Addressed ansible-test sanity pep8 and validate-modules errors.
* Added oneandone_public_ip cloud module for oneandone cloud provider. Removed extra modules to adhere to one module per PR.
* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.
* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.
* Addressed ansible-test sanity pep8 and validate-modules errors.
* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.
* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.
* Addressed ansible-test sanity pep8 and validate-modules errors.
* Added oneandone_private_network cloud module for oneandone cloud provider. Removed extra modules to adhere to one module per PR.
* Updated check mode scenario for remove members, using proper wait_for method in remove_network, renamed private_network_id argument to private_network.
* Fixing validate-modules issue - Documented datacenter.
* Added oneandone_private_network cloud module for oneandone cloud provider. Removed extra modules to adhere to one module per PR.
* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.
* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.
* Addressed ansible-test sanity pep8 and validate-modules errors.
* Removed extra modules to adhere to one module per PR.
* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.
* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.
* Addressed ansible-test sanity pep8 and validate-modules errors.
* Removed extra modules to adhere to one module per PR.
* New module - elb_target
* Work to add deregister functionality
* Add jurajseffer work on waiting for status change
* List the set of statuses as a choices list
* default target_status_timeout is 60
* Add 'unavailable' as a target status choice per API docs
* Add support to remove targets that are in unused state
* add support for availability zone selection
Fix deregistering targets from used target groups
Fix waiting for unused state for targets that have started deregistering
* aws ssm parameter lookup test case - fails demonstrating no exception when parameter missing
* aws ssm parameter lookup - fail in case parameter doesn't exist
* aws ssm parameter lookup test case - failing case for nice return from path lookup
* aws ssm parameter lookup - convert incoming taglist to a key-value dictionary
* aws ssm parameter lookup - pep8 / style clean up
* aws_ssm lookup plugin rewrite for more standard interface
* aws_ssm module and lookup - introduce integration test and fix:
* aws_ssm module and lookup - error case integraton test and many PEP8 and other cleanups
* aws ssm parameter lookup - Various fixes in response to review + recursive fix & test
* aws ssm parameter lookup - more in response to review - shertel/abadger
* aws ssm parameter lookup unit test - move to mocker according to abadger
* aws ssm parameter lookup - integrate with new documentation fragment
* aws ssm parameter lookup - accept either aws_profile or boto_profile
* aws ssm parameter lookup - eliminate lookup document fragment until env vars are fixed later
* Added server_type parameter - defaults to K8S
* Changed server_type default value to cloud.
* Added server_type entry to documentation and updated server_type choice K8S to k8s_node
* Added support for overriding the default ONEANDONE_API_URL, and custom wait_timeout period for wait_for methods.
* Added firewall_policy, load_balancer, and monitoring_policy cloud modules for oneandone provider.
* Updated OneAndOneResources class and argument specs for monitoring policy and load balancer.
* Addressed ansible-test sanity pep8 and validate-modules errors.
* Removed extra modules to adhere to one module per PR.
* Fixed a typo
This fix adds a fallback mechanism where Storage Datacluster
is not enabled with SDRS. If user has Storage Datacluster without SDRS
then we will not get any datastore recommendation. This will fallback to
normal datastore selection method.
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* updates to azure_rm_keyvault
* fix update bugs, add update test
This fix adds a verbose message about non-existent VM when specified
with operation, due to idempotency we can not detect correct state.
Fixes: #27384
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
* When using private networking the ip_address key contains the private ip.
Add the following info to module output when available:
- private_ipv4_address
- public_ipv4_address
- private_ipv6_address
- public_ipv6_address
* Remove redundant default for target_paths
* Make invalidation requests idempotent
* Remove redundant exception handling around boto3_conn
* Add cloudfront_invalidation to the changelog
This change deprecates vsphere_guest in favor of vmware_guest and other
related modules.
The major reasons behind deprecation are -
- Pysphere - Unofficial Python bindings of vCenter deprecated in the year 2013.
- VMware provides official Python bindings for vCenter, which is used in vmware_guest.
- vcsim - simulator used in integration testing of vmware module does not support PySphere
APIs, which makes it more difficult to test vsphere_guest.
Please see [deprecation plan](https://github.com/ansible/community/wiki/VMware%3A-vsphere_guest_deprecation)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
1. Removed redundant default values in argument_spec
2. Enclosed non standard python libraries in Try Except ImportError block
3. Added region as a mandatory element in argument_spec
4. Updated the typo in api_params while accessing job queue. Changed it from job_queue to jobQueue
5. Updated the set_api_params() method to use snake_dict_to_camel_dict()
6. Updated the ANSIBLE_METADATA version from 1.0 to 1.1
7. Updated the version_added in Documentation from 2.4 to 2.5
8. Initialized response value to None
9. Updated the RETUN documentation
10. Updated the return from manage_state() method to not embed batch_job_queue_action in ansible_facts
11. Updated the module.exit_json() in main() to convert any keys back to snake_dict format using camel_dict_to_snake_dict to maintain consistency throughout the module
12. Changed the filename from batch_job_queue.py to aws_batch_job_queue.py