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

DNM - Migrate modules ec2_vpc_egress_igw and tests #2327

Open
wants to merge 25 commits into
base: main
Choose a base branch
from

Conversation

abikouo
Copy link
Contributor

@abikouo abikouo commented Oct 9, 2024

  • Migrage modules ec2_vpc_egress_igw and tests from collection community.aws

jillr and others added 24 commits October 9, 2024 10:58
* 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
Updated module examples with FQCN

Signed-off-by: Abhijeet Kasurde <[email protected]>

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
* 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
* Bulk migration to module_defaults
* Tests for missing creds/region
* Move dms_identifier and dms_sg_identifier into defaults

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@365b6ef
* ec2_vpc_egress_igw - use connection rather than 'conn' for consistency

* ec2_vpc_egress_igw - enable retry decorator

* changelog

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@f2d4851
This collection has been operating on Zuul CI for some weeks now

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@4e0d83c
…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
…le-collections#1475)

tests/ec2_vpc_egress_igw: avoid a InvalidVpcId.Malformed error

Ensures the "test failure with non-existent VPC ID" test uses a properly
formatted VPC ID.
Otherwise, the API now returns the following error:
"error": {
    "code": "InvalidVpcId.Malformed",
    "message": "The vpc ID vpc-012345678 is malformed"
},

Reviewed-by: Mark Chappell <None>

This commit was initially merged in https://github.com/ansible-collections/community.aws
See: ansible-collections/community.aws@fe83fcb
…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 <[email protected]>

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
…s#2036)

ansible-lint (documentation) cleanup for plugins/

SUMMARY
Fixes an array of ansible-lint failures in plugins/
Adds ansible-lint plugins/ to tox -m lint
ISSUE TYPE

Docs Pull Request

COMPONENT NAME
plugins/
ADDITIONAL INFORMATION
docs changes only (no changelog fragment needed)

Reviewed-by: Alina Buzachis

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

SUMMARY

Refactor module ec2_vpc_egress_igw to use shared code from amazon.aws.plugins.module_utils.ec2
ec2_vpc_egress_igw - add support for tagging

ISSUE TYPE

Feature Pull Request
New Module Pull Request

COMPONENT NAME

ec2_vpc_egress_igw

Reviewed-by: Alina Buzachis
Reviewed-by: Bikouo Aubin
Reviewed-by: GomathiselviS

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

github-actions bot commented Oct 9, 2024

Docs Build 📝

Thank you for contribution!✨

The docsite for this PR is available for download as an artifact from this run:
https://github.com/ansible-collections/amazon.aws/actions/runs/11253337152

You can compare to the docs for the main branch here:
https://ansible-collections.github.io/amazon.aws/branch/main

File changes:

  • A collections/amazon/aws/ec2_vpc_egress_igw_info_module.html
  • A collections/amazon/aws/ec2_vpc_egress_igw_module.html
  • M collections/amazon/aws/ec2_vpc_dhcp_option_info_module.html
  • M collections/amazon/aws/ec2_vpc_endpoint_module.html
  • M collections/amazon/aws/index.html
  • M collections/index_module.html
Click to see the diff comparison.

NOTE: only file modifications are shown here. New and deleted files are excluded.
See the file list and check the published docs to see those files.

diff --git a/home/runner/work/amazon.aws/amazon.aws/docsbuild/base/collections/amazon/aws/ec2_vpc_dhcp_option_info_module.html b/home/runner/work/amazon.aws/amazon.aws/docsbuild/head/collections/amazon/aws/ec2_vpc_dhcp_option_info_module.html
index 7b9e17b..862c5ca 100644
--- a/home/runner/work/amazon.aws/amazon.aws/docsbuild/base/collections/amazon/aws/ec2_vpc_dhcp_option_info_module.html
+++ b/home/runner/work/amazon.aws/amazon.aws/docsbuild/head/collections/amazon/aws/ec2_vpc_dhcp_option_info_module.html
@@ -22,7 +22,7 @@
       <script src="../../../_static/sphinx_highlight.js?v=dc90522c"></script>
     <script src="../../../_static/js/theme.js"></script>
     <link rel="search" title="Search" href="../../../search.html" />
-    <link rel="next" title="amazon.aws.ec2_vpc_endpoint module – Create and delete AWS VPC endpoints" href="ec2_vpc_endpoint_module.html" />
+    <link rel="next" title="amazon.aws.ec2_vpc_egress_igw module – Manage an AWS VPC Egress Only Internet gateway" href="ec2_vpc_egress_igw_module.html" />
     <link rel="prev" title="amazon.aws.ec2_vpc_dhcp_option module – Manages DHCP Options, and can ensure the DHCP options for the given VPC match what’s requested" href="ec2_vpc_dhcp_option_module.html" /><!-- extra head elements for Ansible beyond RTD Sphinx Theme -->
 
 
@@ -549,7 +549,7 @@ see <a class="reference internal" href="#ansible-collections-amazon-aws-ec2-vpc-
 
 <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
         <a href="ec2_vpc_dhcp_option_module.html" class="btn btn-neutral float-left" title="amazon.aws.ec2_vpc_dhcp_option module – Manages DHCP Options, and can ensure the DHCP options for the given VPC match what’s requested" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
-        <a href="ec2_vpc_endpoint_module.html" class="btn btn-neutral float-right" title="amazon.aws.ec2_vpc_endpoint module – Create and delete AWS VPC endpoints" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
+        <a href="ec2_vpc_egress_igw_module.html" class="btn btn-neutral float-right" title="amazon.aws.ec2_vpc_egress_igw module – Manage an AWS VPC Egress Only Internet gateway" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
   <hr/>
diff --git a/home/runner/work/amazon.aws/amazon.aws/docsbuild/base/collections/amazon/aws/ec2_vpc_endpoint_module.html b/home/runner/work/amazon.aws/amazon.aws/docsbuild/head/collections/amazon/aws/ec2_vpc_endpoint_module.html
index d06de17..e6ebdf8 100644
--- a/home/runner/work/amazon.aws/amazon.aws/docsbuild/base/collections/amazon/aws/ec2_vpc_endpoint_module.html
+++ b/home/runner/work/amazon.aws/amazon.aws/docsbuild/head/collections/amazon/aws/ec2_vpc_endpoint_module.html
@@ -23,7 +23,7 @@
     <script src="../../../_static/js/theme.js"></script>
     <link rel="search" title="Search" href="../../../search.html" />
     <link rel="next" title="amazon.aws.ec2_vpc_endpoint_info module – Retrieves AWS VPC endpoints details using AWS methods" href="ec2_vpc_endpoint_info_module.html" />
-    <link rel="prev" title="amazon.aws.ec2_vpc_dhcp_option_info module – Gather information about DHCP options sets in AWS" href="ec2_vpc_dhcp_option_info_module.html" /><!-- extra head elements for Ansible beyond RTD Sphinx Theme -->
+    <link rel="prev" title="amazon.aws.ec2_vpc_egress_igw_info module – Gather information about AWS VPC Egress Only Internet gateway" href="ec2_vpc_egress_igw_info_module.html" /><!-- extra head elements for Ansible beyond RTD Sphinx Theme -->
 
 
 
@@ -719,7 +719,7 @@ see <a class="reference internal" href="#ansible-collections-amazon-aws-ec2-vpc-
           
 
 <footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
-        <a href="ec2_vpc_dhcp_option_info_module.html" class="btn btn-neutral float-left" title="amazon.aws.ec2_vpc_dhcp_option_info module – Gather information about DHCP options sets in AWS" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
+        <a href="ec2_vpc_egress_igw_info_module.html" class="btn btn-neutral float-left" title="amazon.aws.ec2_vpc_egress_igw_info module – Gather information about AWS VPC Egress Only Internet gateway" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
         <a href="ec2_vpc_endpoint_info_module.html" class="btn btn-neutral float-right" title="amazon.aws.ec2_vpc_endpoint_info module – Retrieves AWS VPC endpoints details using AWS methods" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
     </div>
 
diff --git a/home/runner/work/amazon.aws/amazon.aws/docsbuild/base/collections/amazon/aws/index.html b/home/runner/work/amazon.aws/amazon.aws/docsbuild/head/collections/amazon/aws/index.html
index e0d96e4..9e1bb56 100644
--- a/home/runner/work/amazon.aws/amazon.aws/docsbuild/base/collections/amazon/aws/index.html
+++ b/home/runner/work/amazon.aws/amazon.aws/docsbuild/head/collections/amazon/aws/index.html
@@ -264,6 +264,8 @@
 <li><p><a class="reference internal" href="ec2_vol_info_module.html#ansible-collections-amazon-aws-ec2-vol-info-module"><span class="std std-ref">ec2_vol_info module</span></a> – Gather information about EC2 volumes in AWS</p></li>
 <li><p><a class="reference internal" href="ec2_vpc_dhcp_option_module.html#ansible-collections-amazon-aws-ec2-vpc-dhcp-option-module"><span class="std std-ref">ec2_vpc_dhcp_option module</span></a> – Manages DHCP Options, and can ensure the DHCP options for the given VPC match what’s requested</p></li>
 <li><p><a class="reference internal" href="ec2_vpc_dhcp_option_info_module.html#ansible-collections-amazon-aws-ec2-vpc-dhcp-option-info-module"><span class="std std-ref">ec2_vpc_dhcp_option_info module</span></a> – Gather information about DHCP options sets in AWS</p></li>
+<li><p><a class="reference internal" href="ec2_vpc_egress_igw_module.html#ansible-collections-amazon-aws-ec2-vpc-egress-igw-module"><span class="std std-ref">ec2_vpc_egress_igw module</span></a> – Manage an AWS VPC Egress Only Internet gateway</p></li>
+<li><p><a class="reference internal" href="ec2_vpc_egress_igw_info_module.html#ansible-collections-amazon-aws-ec2-vpc-egress-igw-info-module"><span class="std std-ref">ec2_vpc_egress_igw_info module</span></a> – Gather information about AWS VPC Egress Only Internet gateway</p></li>
 <li><p><a class="reference internal" href="ec2_vpc_endpoint_module.html#ansible-collections-amazon-aws-ec2-vpc-endpoint-module"><span class="std std-ref">ec2_vpc_endpoint module</span></a> – Create and delete AWS VPC endpoints</p></li>
 <li><p><a class="reference internal" href="ec2_vpc_endpoint_info_module.html#ansible-collections-amazon-aws-ec2-vpc-endpoint-info-module"><span class="std std-ref">ec2_vpc_endpoint_info module</span></a> – Retrieves AWS VPC endpoints details using AWS methods</p></li>
 <li><p><a class="reference internal" href="ec2_vpc_endpoint_service_info_module.html#ansible-collections-amazon-aws-ec2-vpc-endpoint-service-info-module"><span class="std std-ref">ec2_vpc_endpoint_service_info module</span></a> – Retrieves AWS VPC endpoint service details</p></li>
diff --git a/home/runner/work/amazon.aws/amazon.aws/docsbuild/base/collections/index_module.html b/home/runner/work/amazon.aws/amazon.aws/docsbuild/head/collections/index_module.html
index 3a7dd11..0396912 100644
--- a/home/runner/work/amazon.aws/amazon.aws/docsbuild/base/collections/index_module.html
+++ b/home/runner/work/amazon.aws/amazon.aws/docsbuild/head/collections/index_module.html
@@ -172,6 +172,8 @@
 <li><p><a class="reference internal" href="amazon/aws/ec2_vol_info_module.html#ansible-collections-amazon-aws-ec2-vol-info-module"><span class="std std-ref">amazon.aws.ec2_vol_info</span></a> – Gather information about EC2 volumes in AWS</p></li>
 <li><p><a class="reference internal" href="amazon/aws/ec2_vpc_dhcp_option_module.html#ansible-collections-amazon-aws-ec2-vpc-dhcp-option-module"><span class="std std-ref">amazon.aws.ec2_vpc_dhcp_option</span></a> – Manages DHCP Options, and can ensure the DHCP options for the given VPC match what’s requested</p></li>
 <li><p><a class="reference internal" href="amazon/aws/ec2_vpc_dhcp_option_info_module.html#ansible-collections-amazon-aws-ec2-vpc-dhcp-option-info-module"><span class="std std-ref">amazon.aws.ec2_vpc_dhcp_option_info</span></a> – Gather information about DHCP options sets in AWS</p></li>
+<li><p><a class="reference internal" href="amazon/aws/ec2_vpc_egress_igw_module.html#ansible-collections-amazon-aws-ec2-vpc-egress-igw-module"><span class="std std-ref">amazon.aws.ec2_vpc_egress_igw</span></a> – Manage an AWS VPC Egress Only Internet gateway</p></li>
+<li><p><a class="reference internal" href="amazon/aws/ec2_vpc_egress_igw_info_module.html#ansible-collections-amazon-aws-ec2-vpc-egress-igw-info-module"><span class="std std-ref">amazon.aws.ec2_vpc_egress_igw_info</span></a> – Gather information about AWS VPC Egress Only Internet gateway</p></li>
 <li><p><a class="reference internal" href="amazon/aws/ec2_vpc_endpoint_module.html#ansible-collections-amazon-aws-ec2-vpc-endpoint-module"><span class="std std-ref">amazon.aws.ec2_vpc_endpoint</span></a> – Create and delete AWS VPC endpoints</p></li>
 <li><p><a class="reference internal" href="amazon/aws/ec2_vpc_endpoint_info_module.html#ansible-collections-amazon-aws-ec2-vpc-endpoint-info-module"><span class="std std-ref">amazon.aws.ec2_vpc_endpoint_info</span></a> – Retrieves AWS VPC endpoints details using AWS methods</p></li>
 <li><p><a class="reference internal" href="amazon/aws/ec2_vpc_endpoint_service_info_module.html#ansible-collections-amazon-aws-ec2-vpc-endpoint-service-info-module"><span class="std std-ref">amazon.aws.ec2_vpc_endpoint_service_info</span></a> – Retrieves AWS VPC endpoint service details</p></li>

Copy link
Contributor

Build succeeded.
https://ansible.softwarefactory-project.io/zuul/buildset/0668b67d51d34c6ea0b11698e89f41c0

✔️ ansible-galaxy-importer SUCCESS in 3m 26s
✔️ build-ansible-collection SUCCESS in 10m 59s
✔️ ansible-test-splitter SUCCESS in 4m 29s
✔️ integration-amazon.aws-1 SUCCESS in 6m 54s
✔️ integration-community.aws-1 SUCCESS in 4m 33s
Skipped 42 jobs

Copy link
Contributor

Build succeeded.
https://ansible.softwarefactory-project.io/zuul/buildset/0a83576c25514189a688046d7d16a6b9

✔️ ansible-galaxy-importer SUCCESS in 3m 27s
✔️ build-ansible-collection SUCCESS in 11m 19s
✔️ ansible-test-splitter SUCCESS in 4m 24s
✔️ integration-amazon.aws-1 SUCCESS in 4m 49s
✔️ integration-community.aws-1 SUCCESS in 5m 59s
Skipped 42 jobs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants