# Deprecate ec2\_vpc?

**URL:** <https://forum.ansible.com/t/deprecate-ec2-vpc/20399>\
**Category:** Ansible Developer\
**Created:** [February 1, 2016, 11:19am UTC](https://forum.ansible.com/t/deprecate-ec2-vpc/20399 "2016-02-01T11:19:03Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Rob\_White](https://avatars.discourse-cdn.com/v4/letter/r/71c47a/32.png) [@Rob\_White](https://forum.ansible.com/u/Rob_White)\
**Post date:** [February 1, 2016, 11:19am UTC](https://forum.ansible.com/t/deprecate-ec2-vpc/20399/1 "2016-02-01T11:19:03Z")

</div>

I see that new bugs are being raised against ec2\_vpc.

To avoid duplicate effort against ec2\_vpc and the newer vpc\_net, vpc\_route\_table and vpc\_subnet modules, can we deprecate ec2\_vpc?

---

<div class="post-metadata">

**Author:** ![Brian\_Coca](https://avatars.discourse-cdn.com/v4/letter/b/6de8d8/32.png) [@Brian\_Coca](https://forum.ansible.com/u/Brian_Coca)\
**Post date:** [February 1, 2016, 2:38pm UTC](https://forum.ansible.com/t/deprecate-ec2-vpc/20399/2 "2016-02-01T14:38:26Z")

</div>

Good question, do we have most of it's features already in new  
ec2\_vpc\_\<sub\> modules?

Also, even if we deprecate it, we should fix any glaring bugs, new  
features should be stopped though.

---

<div class="post-metadata">

**Author:** ![Jonathan\_Davila](https://avatars.discourse-cdn.com/v4/letter/j/e0b2c6/32.png) [@Jonathan\_Davila](https://forum.ansible.com/u/Jonathan_Davila)\
**Post date:** [February 2, 2016, 4:51pm UTC](https://forum.ansible.com/t/deprecate-ec2-vpc/20399/3 "2016-02-02T16:51:55Z")

</div>

I think it’s time for deprecation. The functionality should already be present in the new modules.

---

<div class="post-metadata">

**Author:** ![Brian\_Coca](https://avatars.discourse-cdn.com/v4/letter/b/6de8d8/32.png) [@Brian\_Coca](https://forum.ansible.com/u/Brian_Coca)\
**Post date:** [February 2, 2016, 4:57pm UTC](https://forum.ansible.com/t/deprecate-ec2-vpc/20399/4 "2016-02-02T16:57:04Z")

</div>

send a PR (just rename file to leading \_)

---

<div class="post-metadata">

**Author:** ![andy2](https://avatars.discourse-cdn.com/v4/letter/a/b9bd4f/32.png) [@andy2](https://forum.ansible.com/u/andy2)\
**Post date:** [February 7, 2016, 5:19pm UTC](https://forum.ansible.com/t/deprecate-ec2-vpc/20399/5 "2016-02-07T17:19:40Z")

</div>

The functionality _should_ be, but isn’t present in the new modules from my perspective.

vpc\_net:  
No ability to modify a VPC referenced by it’s vpc\_id (rather than by a list of tags)

vpc\_route\_table:

Doesn’t auto-choose the the type of gateway for each route based on the target type.

The existing ec2\_vpc module allows creation, removal or modification of a complete VPC from a declarative description of the VPC.

The new set move things to a much more complex multi-step process

Right now, to use the new modules creating a VPC involves:

1 creating the VPC itself  
2 creating each subnet (using the vpc\_id from step 1)  
3 creating route tables, and assigning them to the subnets (again using the subnet\_id values from each of step 3)

The alternative with the older module:

1 create the VPC, subnets and route tables  
2 pub

Whilst having the ability to modify one subnet after the VPC is in place is useful, standing up or tearing down VPCs is significantly more complex.

imo the new modules are complimentary to the older one (or will be once the route\_tables module has a sane way to handle route targets), rather than a viable replacement.

Andy
