Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Promote iam_managed_policy module #1762

Conversation

mandar242
Copy link
Contributor

SUMMARY

Migrate iam_managed_policy module from community.aws

ISSUE TYPE
  • Bugfix Pull Request
  • Docs Pull Request
  • Feature Pull Request
  • New Module Pull Request
COMPONENT NAME
ADDITIONAL INFORMATION

jillr and others added 29 commits September 22, 2023 11:55
* Rename core collection

Rename references to ansible.amazon to amazon.aws.

* Rename community.amazon to community.aws
Fix pep8 line lengths for rewritten amazon.aws imports

* Missed a path in shippable.sh
* Dependency repos moved

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@235c5db
* Remove ANSIBLE_METADATA entirely, see ansible/ansible/pull/69454.
Remove `license` field from galaxy.yml, in favor of `license_file`.

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@05672a6
* Update module deprecations

Switch version to `removed_at_date`

* Don't install amazon.aws from galaxy

We've been using galaxy to install amazon.aws in shippable, but that
doesn't really work if we aren't publising faster. Get that collection
from git so it is most up to date.

* We need to declare python test deps now

* missed a python dep

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@7cd211e
Updated module examples with FQCN

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@98173ae
* Update docs

Remove .git from repo url so links in readme will generate correctly
Add required ansible version
Run latest version of add_docs.py
Add version_added string to modules

* galaxy.yml was missing authors

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@96ee268
* Update comments to reference AnsibleAWSModule rather than AnsibleModule
* Bulk re-order imports and split onto one from import per-line.
* Add AnsibleAWSModule imports
* Migrate boto 2 based modules to AnsibleAWSModule
* Move boto3-only modules over to AnsibleAWSModule
* Remove extra ec2_argument_spec calls - not needed now we're using AnsibleAWSModule
* Remove most HAS_BOTO3 code, it's handled by AnsibleAWSModule
* Handle missing Boto 2 consistently  (HAS_BOTO)
* Remove AnsibleModule imports
* Changelog fragment

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@818c6d2
…ollections#188)

* Migrate from boto3_conn to module.client
* Simplify error handling when creating connections
* Simplify Region handling
* Remove unused imports
* Changelog

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@6bdf00d
* Split imports and sort
* Move camel_dict_to_snake_dict imports to ansible.module_utils.common.dict_transformations
* Cleanup unused imports
* Bulk migration to fail_json_aws
* Changelog

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@6c88315
* Reorder imports
* Make use of is_boto3_error_message
* Mass-migration over to is_boto3_error_code
* Remove unused imports
* unused vars in exception
* Improve consistency around catching BotoCoreError and ClientError
* Remove unused imports
* Remove unused 'PolicyError' from iam_policy_info
* Avoid catching botocore.exceptions.ClientError when we only want some error codes
* Import camel_dict_to_snake_dict/snake_dict_to_camel_dict from ansible.module_utils.common.dict_transformations

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@4cf52ef
…llections#764)

Bulk update AWSRetry.backoff to AWSRetry.jittered_backoff

SUMMARY
CloudRetry.backoff has been deprecated in favour of CloudRetry{exponential,jittered}_backoff
bulk update AWSRetry.backoff usage.
ISSUE TYPE

Feature Pull Request

COMPONENT NAME
plugins/modules/aws_config_delivery_channel.py
plugins/modules/aws_direct_connect_confirm_connection.py
plugins/modules/aws_direct_connect_connection.py
plugins/modules/aws_direct_connect_link_aggregation_group.py
plugins/modules/aws_direct_connect_virtual_interface.py
plugins/modules/aws_inspector_target.py
plugins/modules/aws_kms.py
plugins/modules/aws_kms_info.py
plugins/modules/cloudformation_stack_set.py
plugins/modules/dms_endpoint.py
plugins/modules/dms_replication_subnet_group.py
plugins/modules/ec2_asg.py
plugins/modules/ec2_elb_info.py
plugins/modules/ecs_service_info.py
plugins/modules/iam_managed_policy.py
plugins/modules/iam_saml_federation.py
plugins/modules/rds.py
ADDITIONAL INFORMATION

Reviewed-by: None <None>
Reviewed-by: None <None>

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@22a6370
)

Update the name attribute value in the examples

SUMMARY

Problem-

All the examples had same name key value irrespective of different purposes of the tasks

Action taken -

Made changes in the name of the tasks under examples
Corrected it with relevant  name key value to the comments of the task

ISSUE TYPE

Docs Pull Request

COMPONENT NAME

ADDITIONAL INFORMATION

Reviewed-by: Joseph Torcasso <None>
Reviewed-by: Markus Bergholz <git@osuv.de>

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@0e08a40
…-collections#893)

Refactor iam_managed_policy module and add integration tests

SUMMARY
Refactor iam_managed_policy module to:

Improve AWS retry backoff logic
Add check_mode support
Fix module exit on updates to policies when no changes are present

Other changes:

Add disabled integration tests

ISSUE TYPE

Bugfix Pull Request

COMPONENT NAME
iam_managed_policy
ADDITIONAL INFORMATION
Backoff logic only partially covered the module, and it didn't support check_mode or have any integration tests.
Due to the nature of the IAM based modules the tests are intentionally disabled but have been run locally:
ansible-test integration iam_managed_policy --allow-unsupported --docker

PLAY RECAP *********************************************************************
testhost                   : ok=20   changed=6    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

AWS ACTIONS: ['iam:CreatePolicy', 'iam:CreatePolicyVersion', 'iam:DeletePolicy', 'iam:DeletePolicyVersion', 'iam:GetPolicy', 'iam:GetPolicyVersion', 'iam:ListEntitiesForPolicy', 'iam:ListPolicies', 'iam:ListPolicyVersions', 'iam:SetDefaultPolicyVersion']

Reviewed-by: Alina Buzachis <None>
Reviewed-by: Markus Bergholz <git@osuv.de>

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@44daa2d
)

Remove string of iam_managed_policy module docs

SUMMARY
Remove "ex nihilo" docs of iam_managed_policy module
ISSUE TYPE

Docs Pull Request

COMPONENT NAME
iam_managed_policy

Reviewed-by: Alina Buzachis <None>
Reviewed-by: Mark Chappell <None>

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@82ad084
…ent meta data (ansible-collections#1090)

For consistency - add empty dependencies file to targets with no current meta data

SUMMARY
For consistency - add empty dependencies file to targets with no current meta data
ISSUE TYPE

Feature Pull Request

COMPONENT NAME
tests/integration/targets
ADDITIONAL INFORMATION

Reviewed-by: Alina Buzachis <None>

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@9638580
…collections#1168)

iam_managed_policy - remove unused fail_on_delete parameter

SUMMARY
remove unused fail_on_delete parameter
ISSUE TYPE

Feature Pull Request

COMPONENT NAME
iam_managed_policy
ADDITIONAL INFORMATION
ansible/ansible#63961

Reviewed-by: Markus Bergholz <git@osuv.de>

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@7095617
…#1539)

Make example AWS UUIDS follow a specific pattern

SUMMARY
Various AWS IAM resources have UUID which follow a specific pattern.  Similarly AWS accounts are all 12 digit numbers (text aliases in a couple of cases).  To minimize the risk of accidental data leaks use a consistent Account ID in examples (123456789012), and a specific format for the UUIDS: (AKIA|AGPA|AIDA|AROA|AIPA|ANPA|ANVA|ASIA)12345EXAMPLE54321
While this does nothing about historic data, having consistency makes it easier to prevent future leaks.
Note: We should follow this up with an update to the developer docs, however I'd like to get this in prior to 5.0.0
ISSUE TYPE

Docs Pull Request

COMPONENT NAME
plugins/modules/acm_certificate_info.py
plugins/modules/application_autoscaling_policy.py
plugins/modules/autoscaling_launch_config.py
plugins/modules/autoscaling_launch_config_info.py
plugins/modules/codecommit_repository.py
plugins/modules/directconnect_link_aggregation_group.py
plugins/modules/dms_endpoint.py
plugins/modules/dynamodb_table.py
plugins/modules/ec2_transit_gateway_info.py
plugins/modules/ec2_transit_gateway_vpc_attachment.py
plugins/modules/ec2_transit_gateway_vpc_attachment_info.py
plugins/modules/ec2_vpc_peer.py
plugins/modules/ec2_vpc_peering_info.py
plugins/modules/ec2_vpc_vpn_info.py
plugins/modules/ecs_cluster.py
plugins/modules/ecs_ecr.py
plugins/modules/ecs_service.py
plugins/modules/ecs_service_info.py
plugins/modules/ecs_task.py
plugins/modules/efs.py
plugins/modules/efs_info.py
plugins/modules/eks_cluster.py
plugins/modules/elasticache_subnet_group.py
plugins/modules/elb_network_lb.py
plugins/modules/elb_target_group.py
plugins/modules/elb_target_group_info.py
plugins/modules/elb_target_info.py
plugins/modules/iam_group.py
plugins/modules/iam_managed_policy.py
plugins/modules/iam_mfa_device_info.py
plugins/modules/iam_server_certificate_info.py
plugins/modules/lightsail.py
plugins/modules/lightsail_static_ip.py
plugins/modules/msk_cluster.py
plugins/modules/s3_bucket_notification.py
plugins/modules/sns_topic.py
plugins/modules/sns_topic_info.py
plugins/modules/sqs_queue.py
plugins/modules/stepfunctions_state_machine.py
plugins/modules/stepfunctions_state_machine_execution.py
plugins/modules/storagegateway_info.py
plugins/modules/wafv2_web_acl.py
ADDITIONAL INFORMATION
While the 'secret' nature of these UUIDs is debatable (they're closer to user names than passwords), deliberately mangling them makes it easier for InfoSec teams to spot when their secret counterparts may have been leaked in combination with a real 'public' part.

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@9476422
…collections#1459)

Update extends_documentation_fragment with amazon.aws.boto3

Depends-On: ansible/ansible-zuul-jobs#1654
SUMMARY

As per ansible-collections#985 add amazon.aws.boto3.

ISSUE TYPE

Docs Pull Request

COMPONENT NAME

several

Reviewed-by: Jill R <None>
Reviewed-by: Mark Chappell <None>
Reviewed-by: Markus Bergholz <git@osuv.de>

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@bd3c03f
…ons#1632)

Ansible User-Agent identification for community.aws

SUMMARY

The value will be similar to this APN/1.0 Ansible/2.14.1 community.aws/6.0.0-dev0

ISSUE TYPE

Feature Pull Request

Reviewed-by: Mark Chappell <None>
Reviewed-by: Bikouo Aubin <None>
Reviewed-by: Alina Buzachis <None>

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@a8cbce2
Cleanup headers and imports

SUMMARY
Mass update of imports, docs fragments and file headers

Many of the amazon.aws module_utils and docs fragments got moved about, update community.aws to reflect this.
Consistently apply the comment headers as documented at https://docs.ansible.com/ansible/devel/dev_guide/developing_modules_documenting.html#python-shebang-utf-8-coding

ISSUE TYPE

Docs Pull Request
Feature Pull Request

COMPONENT NAME
ADDITIONAL INFORMATION
Header cleanup based upon:
https://docs.ansible.com/ansible/devel/dev_guide/developing_modules_documenting.html#python-shebang-utf-8-coding

Begin your Ansible module with #!/usr/bin/python - this “shebang” allows ansible_python_interpreter to work. Follow the shebang immediately with # -*- coding: utf-8 -*- to clarify that the file is UTF-8 encoded.

and
https://docs.ansible.com/ansible/devel/dev_guide/developing_modules_documenting.html#copyright-and-license

After the shebang and UTF-8 coding, add a copyright line with the original copyright holder and a license declaration. The license declaration should be ONLY one line, not the full GPL prefix.
...
Additions to the module (for instance, rewrites) are not permitted to add additional copyright lines other than the default copyright statement if missing:

Reviewed-by: Alina Buzachis

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@a4f20bf
* Black prep

* Black

* changelog

* Fix pylint unused-import in tests

* Split SSM connection plugin changes

* disable glue tests - bucket's missing

* Disable s3_logging and s3_sync tests

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@2c4575c
Bulk migration to Python 3.6 f-strings

SUMMARY
We've dropped support for Python <3.6, bulk migrate to fstrings and perform some general string cleanup
A combination of

black --preview
flynt
some manual cleanup

ISSUE TYPE

Feature Pull Request

COMPONENT NAME
plugins/
tests/
ADDITIONAL INFORMATION

Reviewed-by: Alina Buzachis

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@de33821
…ollections#1921)

Mass update of docs and tests (credentials/session tokens)

SUMMARY
We had a cleanup of credentials/session parameters which included a batch of deprecations and renames.
Ensure that all of our tests and docs are using the 'canonical' names
ISSUE TYPE

Docs Pull Request

COMPONENT NAME
plugins/modules/batch_compute_environment.py
plugins/modules/cloudformation_exports_info.py
plugins/modules/ec2_vpc_vpn.py
plugins/modules/elasticache.py
plugins/modules/elasticache_parameter_group.py
plugins/modules/elasticache_snapshot.py
plugins/modules/ses_rule_set.py
plugins/modules/sts_assume_role.py
plugins/modules/sts_session_token.py
tests/integration
ADDITIONAL INFORMATION
See also

ansible-collections#1172
ansible-collections#1714

Reviewed-by: Alina Buzachis

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@4a5b50e
@github-actions
Copy link

github-actions bot commented Sep 22, 2023

Docs Build 📝

Thank you for contribution!✨

This PR has been merged and your docs changes will be incorporated when they are next published.

@softwarefactory-project-zuul
Copy link
Contributor

Build succeeded.
https://ansible.softwarefactory-project.io/zuul/buildset/10de2826db5f4970a69f2368733f2b88

✔️ ansible-galaxy-importer SUCCESS in 5m 07s
✔️ build-ansible-collection SUCCESS in 12m 28s
✔️ ansible-test-splitter SUCCESS in 5m 13s
✔️ integration-amazon.aws-1 SUCCESS in 14m 29s
✔️ integration-amazon.aws-2 SUCCESS in 35m 58s
✔️ integration-amazon.aws-3 SUCCESS in 43m 20s
✔️ integration-amazon.aws-4 SUCCESS in 30m 43s
✔️ integration-amazon.aws-5 SUCCESS in 25m 50s
✔️ integration-amazon.aws-6 SUCCESS in 15m 15s
✔️ integration-amazon.aws-7 SUCCESS in 26m 47s
✔️ integration-amazon.aws-8 SUCCESS in 22m 54s
✔️ integration-amazon.aws-9 SUCCESS in 20m 08s
✔️ integration-amazon.aws-10 SUCCESS in 26m 42s
✔️ integration-amazon.aws-11 SUCCESS in 15m 00s
✔️ integration-amazon.aws-12 SUCCESS in 5m 02s
✔️ integration-community.aws-1 SUCCESS in 8m 15s
Skipped 31 jobs

@mandar242 mandar242 added the mergeit Merge the PR (SoftwareFactory) label Sep 27, 2023
@softwarefactory-project-zuul
Copy link
Contributor

Build succeeded (gate pipeline).
https://ansible.softwarefactory-project.io/zuul/buildset/76840c185d314d7fa666a85702595a4b

✔️ ansible-galaxy-importer SUCCESS in 5m 11s
✔️ build-ansible-collection SUCCESS in 12m 36s
✔️ ansible-test-splitter SUCCESS in 5m 09s
✔️ integration-amazon.aws-1 SUCCESS in 17m 05s
✔️ integration-amazon.aws-2 SUCCESS in 37m 52s
✔️ integration-amazon.aws-3 SUCCESS in 38m 50s
✔️ integration-amazon.aws-4 SUCCESS in 28m 54s
✔️ integration-amazon.aws-5 SUCCESS in 29m 07s
✔️ integration-amazon.aws-6 SUCCESS in 16m 25s
✔️ integration-amazon.aws-7 SUCCESS in 23m 08s
✔️ integration-amazon.aws-8 SUCCESS in 24m 09s
✔️ integration-amazon.aws-9 SUCCESS in 21m 28s
✔️ integration-amazon.aws-10 SUCCESS in 25m 12s
✔️ integration-amazon.aws-11 SUCCESS in 16m 53s
✔️ integration-amazon.aws-12 SUCCESS in 5m 15s
✔️ integration-community.aws-1 SUCCESS in 9m 01s
Skipped 31 jobs

@softwarefactory-project-zuul softwarefactory-project-zuul bot merged commit 65f1ba3 into ansible-collections:main Sep 27, 2023
61 of 65 checks passed
alinabuzachis pushed a commit to alinabuzachis/amazon.aws that referenced this pull request Oct 2, 2023
Promote iam_managed_policy module

SUMMARY

Migrate iam_managed_policy module from community.aws

ISSUE TYPE


Bugfix Pull Request
Docs Pull Request
Feature Pull Request
New Module Pull Request

COMPONENT NAME

ADDITIONAL INFORMATION

Reviewed-by: Helen Bailey <hebailey@redhat.com>
Reviewed-by: Bikouo Aubin
alinabuzachis added a commit to alinabuzachis/amazon.aws that referenced this pull request Oct 6, 2023
gravesm pushed a commit that referenced this pull request Oct 6, 2023
abikouo pushed a commit to abikouo/amazon.aws that referenced this pull request Oct 24, 2023
)

Add version_description to ec2_launch_template

SUMMARY
Add version_description to ec2_launch_template module, which allows user update the VersionDescription of a launch template.
Fix ansible-collections#1762


ISSUE TYPE


Feature Pull Request

COMPONENT NAME

ec2_launch_template
ADDITIONAL INFORMATION

Reviewed-by: Markus Bergholz <git@osuv.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
mergeit Merge the PR (SoftwareFactory)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

10 participants