github.com/Foodji/aws-lambda-go@v1.20.2/events/codepipeline_job.go (about) 1 // Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 3 package events 4 5 // CodePipelineEvent contains data from an event sent from AWS Codepipeline 6 type CodePipelineEvent struct { 7 CodePipelineJob CodePipelineJob `json:"CodePipeline.job"` 8 } 9 10 // CodePipelineJob represents a job from an AWS CodePipeline event 11 type CodePipelineJob struct { 12 ID string `json:"id"` 13 AccountID string `json:"accountId"` 14 Data CodePipelineData `json:"data"` 15 } 16 17 // CodePipelineData represents a job from an AWS CodePipeline event 18 type CodePipelineData struct { 19 ActionConfiguration CodePipelineActionConfiguration `json:"actionConfiguration"` 20 InputArtifacts []CodePipelineInputArtifact `json:"inputArtifacts"` 21 OutPutArtifacts []CodePipelineOutputArtifact `json:"outputArtifacts"` 22 ArtifactCredentials CodePipelineArtifactCredentials `json:"artifactCredentials"` 23 ContinuationToken string `json:"continuationToken"` 24 } 25 26 // CodePipelineActionConfiguration represents an Action Configuration 27 type CodePipelineActionConfiguration struct { 28 Configuration CodePipelineConfiguration `json:"configuration"` 29 } 30 31 // CodePipelineConfiguration represents a configuration for an Action Configuration 32 type CodePipelineConfiguration struct { 33 FunctionName string `json:"FunctionName"` 34 UserParameters string `json:"UserParameters"` 35 } 36 37 // CodePipelineInputArtifact represents an input artifact 38 type CodePipelineInputArtifact struct { 39 Location CodePipelineInputLocation `json:"location"` 40 Revision *string `json:"revision"` 41 Name string `json:"name"` 42 } 43 44 // CodePipelineInputLocation represents a input location 45 type CodePipelineInputLocation struct { 46 S3Location CodePipelineS3Location `json:"s3Location"` 47 LocationType string `json:"type"` 48 } 49 50 // CodePipelineS3Location represents an s3 input location 51 type CodePipelineS3Location struct { 52 BucketName string `json:"bucketName"` 53 ObjectKey string `json:"objectKey"` 54 } 55 56 // CodePipelineOutputArtifact represents an output artifact 57 type CodePipelineOutputArtifact struct { 58 Location CodePipelineInputLocation `json:"location"` 59 Revision *string `json:"revision"` 60 Name string `json:"name"` 61 } 62 63 // CodePipelineOutputLocation represents a output location 64 type CodePipelineOutputLocation struct { 65 S3Location CodePipelineS3Location `json:"s3Location"` 66 LocationType string `json:"type"` 67 } 68 69 // CodePipelineArtifactCredentials represents CodePipeline artifact credentials 70 type CodePipelineArtifactCredentials struct { 71 SecretAccessKey string `json:"secretAccessKey"` 72 SessionToken string `json:"sessionToken"` 73 AccessKeyID string `json:"accessKeyId"` 74 }