SCRT-HQ / VaporShell

A PowerShell module for building, packaging and deploying AWS CloudFormation templates
https://vaporshell.io
Apache License 2.0
48 stars 9 forks source link

Missing New-VSEC2VPCEndpointService in "VaporShell/Public/Resource Types" #62

Closed ScriptAutomate closed 5 years ago

ScriptAutomate commented 5 years ago

This function is missing because it is missing from the us-east-1 cfn spec json file, so automation reliant on it being present there isn't including it.

I reference the issue here with the CloudFormation documentation folks: Missing AWS::EC2::VPCEndpointService ResourceType in CloudFormationResourceSpecification.json for Most Regions

The automation you are using should automatically fix this once they introduce it to the proper CFN spec files, but I'm not sure how long that will take. Thought I'd give a heads up since my tooling recently discovered it missing from the spec files.

scrthq commented 5 years ago

Hey @ScriptAutomate - apologies on slowness in ack'ing this. I'm working on rolling your suggestions for the documentation updates in now, which includes parsing the other spec files outside of us-east-1's for any missing resources and properties, which should catch odd ones out like this. I appreciate digging into it and raising awareness! I'll close this out once the new version is pushed, should be today if time allows!

scrthq commented 5 years ago

Got it sorted to do the initial pull on us-east-1, then check the remaining spec sheets for anything missing. Working well so far:

image

scrthq commented 5 years ago

Had to make a few adjustments to the CFNHelp module gist you shared to integrate with the build process, but this is getting rolled out shortly. Snippet including the updated help content of Get-Help New-VSEC2VPCEndpointService -Full for reference:

image

ScriptAutomate commented 5 years ago

Awesome! Looks like you're picking up stragglers just fine (including two new ones!), and the expansion of the property descriptions looks great.

A side note, more related to the feature request of comment-base help doc expansion in #61 is that I noticed that the Description (and optionally, the Synopsis) is still the previous default. The CFNHelp comes up with additional values for those (though it looks like my poc parsing may have left in some open parentheses where it didn't need to):

PS > $HelpDocs = New-CFNHelpDoc
PS > $HelpDocs | Where-Object -Property FunctionName -like "New-VS*VPCEndpointService"                                                                                     FunctionName : New-VSAWSEC2VPCEndpointService
FunctionName : New-VSAWSEC2VPCEndpointService
Description  : Specifies a VPC endpoint service configuration to 
               which service consumers (AWS accounts, IAM users, and 
               IAM roles can connect. Service consumers can create 
               an interface VPC endpoint to connect to your service.
               To create an endpoint service configuration, you must 
               first create a Network Load Balancer for your service.
Links        : {http://docs.aws.amazon.com/AWSCloudFormation/latest/U
               serGuide/aws-resource-ec2-vpcendpointservice.html}
Parameters   : {@{ParameterName=AcceptanceRequired; 
               ParameterDescription=Indicates whether requests from 
               service consumers to create an endpoint to your 
               service must be accepted.}, 
               @{ParameterName=NetworkLoadBalancerArns; 
               ParameterDescription=The Amazon Resource Names ARNs 
               of one or more Network Load Balancers for your 
               service.}}
Synopsis     : Specifies a VPC endpoint service configuration to 
               which service consumers (AWS accounts, IAM users, and 
               IAM roles can connect. Service consumers can create 
               an interface VPC endpoint to connect to your service.
scrthq commented 5 years ago

Ahhhhhhhhhh I completely missed that and it would be easy to add! Thank you for the reminder! I'll get it added in as well, easy add since I already have the info as noted :D

scrthq commented 5 years ago

Testing the addition now, then pushing out 2.9.1 with the updated info.

scrthq commented 5 years ago

Looking nice, pushing momentarily:

image

scrthq commented 5 years ago

v2.9.1 pushed with the added help bits. Thanks again!

PS - You can see the updated functions in the ci folder of the repo: https://github.com/scrthq/VaporShell/tree/master/ci

They're called from the Convert-SpecToFunction function during the CI's Build stage

PatMyron commented 5 years ago

AWS::EC2::VPCEndpointService is now in the us-east-1 resource specification itself as well