 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CustomResourceFunction ¶
type CustomResourceFunction func(context.Context, Event) (physicalResourceID string, data map[string]interface{}, err error)
CustomResourceFunction is a representation of the customer's Custom Resource function. LambdaWrap will take the returned values and turn them into a response to be sent to CloudFormation.
type CustomResourceLambdaFunction ¶
CustomResourceLambdaFunction is a standard form Lambda for a Custom Resource.
func LambdaWrap ¶
func LambdaWrap(lambdaFunction CustomResourceFunction) (fn CustomResourceLambdaFunction)
LambdaWrap returns a CustomResourceLambdaFunction which is something lambda.Start() will understand. The purpose of doing this is so that Response Handling boiler plate is taken away from the customer and it makes writing a Custom Resource simpler.
func myLambda(ctx context.Context, event cfn.Event) (physicalResourceID string, data map[string]interface{}, err error) {
	physicalResourceID = "arn:...."
	return
}
func main() {
	lambda.Start(cfn.LambdaWrap(myLambda))
}
  
  type Event ¶
type Event struct {
	RequestType           RequestType            `json:"RequestType"`
	RequestID             string                 `json:"RequestId"`
	ResponseURL           string                 `json:"ResponseURL"`
	ResourceType          string                 `json:"ResourceType"`
	PhysicalResourceID    string                 `json:"PhysicalResourceId,omitempty"`
	LogicalResourceID     string                 `json:"LogicalResourceId"`
	StackID               string                 `json:"StackId"`
	ResourceProperties    map[string]interface{} `json:"ResourceProperties"`
	OldResourceProperties map[string]interface{} `json:"OldResourceProperties,omitempty"`
}
    Event is a representation of a Custom Resource request
type RequestType ¶
type RequestType string
RequestType represents the types of requests that come from a CloudFormation stack being run
const ( RequestCreate RequestType = "Create" RequestUpdate RequestType = "Update" RequestDelete RequestType = "Delete" )
type Response ¶
type Response struct {
	Status             StatusType             `json:"Status"`
	RequestID          string                 `json:"RequestId"`
	LogicalResourceID  string                 `json:"LogicalResourceId"`
	StackID            string                 `json:"StackId"`
	PhysicalResourceID string                 `json:"PhysicalResourceId"`
	Reason             string                 `json:"Reason,omitempty"`
	NoEcho             bool                   `json:"NoEcho,omitempty"`
	Data               map[string]interface{} `json:"Data,omitempty"`
	// contains filtered or unexported fields
}
    Response is a representation of a Custom Resource response expected by CloudFormation.
func NewResponse ¶
NewResponse creates a Response with the relevant verbatim copied data from a Event
type StatusType ¶
type StatusType string
StatusType represents a CloudFormation response status
const ( StatusSuccess StatusType = "SUCCESS" StatusFailed StatusType = "FAILED" )