Your team has created a cloudformation template.
The template consists of a creation of a Virtual private gateway , Customer gateway and a VPN connection based on the created artefacts.
The templates sometimes give errors since the routes are not being added because of the missing Virtual private gateway resource.
How can you resolve this?
Click on the arrows to vote for the correct answer
A. B. C. D.Answer - C.
The AWS Documentation mentions the following.
With the DependsOn attribute you can specify that the creation of a specific resource follows another.
When you add a DependsOn attribute to a resource, that resource is created only after the creation of the resource specified in the DependsOn attribute.
Option A is invalid because the order will not resolve the problem.
Option B is invalid because it should be the other way around , there should be a DependsOn attribute to the RouteTable entry on the VGW.
Option D is invalid because a custom resource will not resolve the problem.
For more information on Cloudformation DependsOn attribute, please refer to below URL:
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.htmlThe issue in the cloudformation template is that the routes are not being added due to the missing Virtual Private Gateway (VGW) resource. The following options are available to resolve the issue:
A. Change the order of the creation of the resources in the template: One solution to this problem could be changing the order of resource creation in the CloudFormation template. The VGW resource should be created before the creation of the route table to ensure that the VGW is available when creating the routes.
B. Add a "Depends On" attribute to the VGW on the Route table: Another solution could be to use the "Depends On" attribute in the CloudFormation template to ensure that the route table resource is dependent on the VGW resource. This ensures that the route table resource is created only after the VGW resource has been created successfully.
C. Ensure the route table has a "Depends On" attribute with a value of VGW: The third solution would be to ensure that the route table has a "Depends On" attribute with a value of VGW. This ensures that the route table resource is created only after the VGW resource has been created successfully.
D. Add a custom resource to the template for the Route Table entry: Finally, a custom resource can be added to the template for the Route Table entry. This custom resource can be used to check the status of the VGW resource and ensure that the route table is created only after the VGW resource has been created successfully.
In conclusion, option B is the best solution to resolve the issue as it ensures that the route table resource is dependent on the VGW resource. Option A can also work but it may lead to issues if there are other resources that are dependent on the route table resource. Option C is also a valid solution but it may cause issues if there are other resources that are dependent on the route table resource. Option D is not recommended as it adds unnecessary complexity to the CloudFormation template.