codepipeline

package
v4.35.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 18, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Pipeline

type Pipeline struct {
	pulumi.CustomResourceState

	// The codepipeline ARN.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// One or more artifactStore blocks. Artifact stores are documented below.
	ArtifactStore PipelineArtifactStoreOutput `pulumi:"artifactStore"`
	// The name of the pipeline.
	Name pulumi.StringOutput `pulumi:"name"`
	// A service role Amazon Resource Name (ARN) that grants AWS CodePipeline permission to make calls to AWS services on your behalf.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
	// A stage block. Stages are documented below.
	Stages PipelineStageArrayOutput `pulumi:"stages"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a CodePipeline.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/codepipeline"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/codestarconnections"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/iam"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/kms"
"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/s3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := codestarconnections.NewConnection(ctx, "example", &codestarconnections.ConnectionArgs{
			ProviderType: pulumi.String("GitHub"),
		})
		if err != nil {
			return err
		}
		codepipelineBucket, err := s3.NewBucket(ctx, "codepipelineBucket", &s3.BucketArgs{
			Acl: pulumi.String("private"),
		})
		if err != nil {
			return err
		}
		codepipelineRole, err := iam.NewRole(ctx, "codepipelineRole", &iam.RoleArgs{
			AssumeRolePolicy: pulumi.Any(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "  \"Version\": \"2012-10-17\",\n", "  \"Statement\": [\n", "    {\n", "      \"Effect\": \"Allow\",\n", "      \"Principal\": {\n", "        \"Service\": \"codepipeline.amazonaws.com\"\n", "      },\n", "      \"Action\": \"sts:AssumeRole\"\n", "    }\n", "  ]\n", "}\n")),
		})
		if err != nil {
			return err
		}
		s3kmskey, err := kms.LookupAlias(ctx, &kms.LookupAliasArgs{
			Name: "alias/myKmsKey",
		}, nil)
		if err != nil {
			return err
		}
		_, err = codepipeline.NewPipeline(ctx, "codepipeline", &codepipeline.PipelineArgs{
			RoleArn: codepipelineRole.Arn,
			ArtifactStore: &codepipeline.PipelineArtifactStoreArgs{
				Location: codepipelineBucket.Bucket,
				Type:     pulumi.String("S3"),
				EncryptionKey: &codepipeline.PipelineArtifactStoreEncryptionKeyArgs{
					Id:   pulumi.String(s3kmskey.Arn),
					Type: pulumi.String("KMS"),
				},
			},
			Stages: codepipeline.PipelineStageArray{
				&codepipeline.PipelineStageArgs{
					Name: pulumi.String("Source"),
					Actions: codepipeline.PipelineStageActionArray{
						&codepipeline.PipelineStageActionArgs{
							Name:     pulumi.String("Source"),
							Category: pulumi.String("Source"),
							Owner:    pulumi.String("AWS"),
							Provider: pulumi.String("CodeStarSourceConnection"),
							Version:  pulumi.String("1"),
							OutputArtifacts: pulumi.StringArray{
								pulumi.String("source_output"),
							},
							Configuration: pulumi.StringMap{
								"ConnectionArn":    example.Arn,
								"FullRepositoryId": pulumi.String("my-organization/example"),
								"BranchName":       pulumi.String("main"),
							},
						},
					},
				},
				&codepipeline.PipelineStageArgs{
					Name: pulumi.String("Build"),
					Actions: codepipeline.PipelineStageActionArray{
						&codepipeline.PipelineStageActionArgs{
							Name:     pulumi.String("Build"),
							Category: pulumi.String("Build"),
							Owner:    pulumi.String("AWS"),
							Provider: pulumi.String("CodeBuild"),
							InputArtifacts: pulumi.StringArray{
								pulumi.String("source_output"),
							},
							OutputArtifacts: pulumi.StringArray{
								pulumi.String("build_output"),
							},
							Version: pulumi.String("1"),
							Configuration: pulumi.StringMap{
								"ProjectName": pulumi.String("test"),
							},
						},
					},
				},
				&codepipeline.PipelineStageArgs{
					Name: pulumi.String("Deploy"),
					Actions: codepipeline.PipelineStageActionArray{
						&codepipeline.PipelineStageActionArgs{
							Name:     pulumi.String("Deploy"),
							Category: pulumi.String("Deploy"),
							Owner:    pulumi.String("AWS"),
							Provider: pulumi.String("CloudFormation"),
							InputArtifacts: pulumi.StringArray{
								pulumi.String("build_output"),
							},
							Version: pulumi.String("1"),
							Configuration: pulumi.StringMap{
								"ActionMode":     pulumi.String("REPLACE_ON_FAILURE"),
								"Capabilities":   pulumi.String("CAPABILITY_AUTO_EXPAND,CAPABILITY_IAM"),
								"OutputFileName": pulumi.String("CreateStackOutput.json"),
								"StackName":      pulumi.String("MyStack"),
								"TemplatePath":   pulumi.String("build_output::sam-templated.yaml"),
							},
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = iam.NewRolePolicy(ctx, "codepipelinePolicy", &iam.RolePolicyArgs{
			Role: codepipelineRole.ID(),
			Policy: pulumi.All(codepipelineBucket.Arn, codepipelineBucket.Arn, example.Arn).ApplyT(func(_args []interface{}) (string, error) {
				codepipelineBucketArn := _args[0].(string)
				codepipelineBucketArn1 := _args[1].(string)
				exampleArn := _args[2].(string)
				return fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v%v", "{\n", "  \"Version\": \"2012-10-17\",\n", "  \"Statement\": [\n", "    {\n", "      \"Effect\":\"Allow\",\n", "      \"Action\": [\n", "        \"s3:GetObject\",\n", "        \"s3:GetObjectVersion\",\n", "        \"s3:GetBucketVersioning\",\n", "        \"s3:PutObjectAcl\",\n", "        \"s3:PutObject\"\n", "      ],\n", "      \"Resource\": [\n", "        \"", codepipelineBucketArn, "\",\n", "        \"", codepipelineBucketArn1, "/*\"\n", "      ]\n", "    },\n", "    {\n", "      \"Effect\": \"Allow\",\n", "      \"Action\": [\n", "        \"codestar-connections:UseConnection\"\n", "      ],\n", "      \"Resource\": \"", exampleArn, "\"\n", "    },\n", "    {\n", "      \"Effect\": \"Allow\",\n", "      \"Action\": [\n", "        \"codebuild:BatchGetBuilds\",\n", "        \"codebuild:StartBuild\"\n", "      ],\n", "      \"Resource\": \"*\"\n", "    }\n", "  ]\n", "}\n"), nil
			}).(pulumi.StringOutput),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

CodePipelines can be imported using the name, e.g.,

```sh

$ pulumi import aws:codepipeline/pipeline:Pipeline foo example

```

func GetPipeline

func GetPipeline(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *PipelineState, opts ...pulumi.ResourceOption) (*Pipeline, error)

GetPipeline gets an existing Pipeline resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewPipeline

func NewPipeline(ctx *pulumi.Context,
	name string, args *PipelineArgs, opts ...pulumi.ResourceOption) (*Pipeline, error)

NewPipeline registers a new resource with the given unique name, arguments, and options.

func (*Pipeline) ElementType

func (*Pipeline) ElementType() reflect.Type

func (*Pipeline) ToPipelineOutput

func (i *Pipeline) ToPipelineOutput() PipelineOutput

func (*Pipeline) ToPipelineOutputWithContext

func (i *Pipeline) ToPipelineOutputWithContext(ctx context.Context) PipelineOutput

func (*Pipeline) ToPipelinePtrOutput

func (i *Pipeline) ToPipelinePtrOutput() PipelinePtrOutput

func (*Pipeline) ToPipelinePtrOutputWithContext

func (i *Pipeline) ToPipelinePtrOutputWithContext(ctx context.Context) PipelinePtrOutput

type PipelineArgs

type PipelineArgs struct {
	// One or more artifactStore blocks. Artifact stores are documented below.
	ArtifactStore PipelineArtifactStoreInput
	// The name of the pipeline.
	Name pulumi.StringPtrInput
	// A service role Amazon Resource Name (ARN) that grants AWS CodePipeline permission to make calls to AWS services on your behalf.
	RoleArn pulumi.StringInput
	// A stage block. Stages are documented below.
	Stages PipelineStageArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a Pipeline resource.

func (PipelineArgs) ElementType

func (PipelineArgs) ElementType() reflect.Type

type PipelineArray

type PipelineArray []PipelineInput

func (PipelineArray) ElementType

func (PipelineArray) ElementType() reflect.Type

func (PipelineArray) ToPipelineArrayOutput

func (i PipelineArray) ToPipelineArrayOutput() PipelineArrayOutput

func (PipelineArray) ToPipelineArrayOutputWithContext

func (i PipelineArray) ToPipelineArrayOutputWithContext(ctx context.Context) PipelineArrayOutput

type PipelineArrayInput

type PipelineArrayInput interface {
	pulumi.Input

	ToPipelineArrayOutput() PipelineArrayOutput
	ToPipelineArrayOutputWithContext(context.Context) PipelineArrayOutput
}

PipelineArrayInput is an input type that accepts PipelineArray and PipelineArrayOutput values. You can construct a concrete instance of `PipelineArrayInput` via:

PipelineArray{ PipelineArgs{...} }

type PipelineArrayOutput

type PipelineArrayOutput struct{ *pulumi.OutputState }

func (PipelineArrayOutput) ElementType

func (PipelineArrayOutput) ElementType() reflect.Type

func (PipelineArrayOutput) Index

func (PipelineArrayOutput) ToPipelineArrayOutput

func (o PipelineArrayOutput) ToPipelineArrayOutput() PipelineArrayOutput

func (PipelineArrayOutput) ToPipelineArrayOutputWithContext

func (o PipelineArrayOutput) ToPipelineArrayOutputWithContext(ctx context.Context) PipelineArrayOutput

type PipelineArtifactStore

type PipelineArtifactStore struct {
	// The encryption key block AWS CodePipeline uses to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If you don't specify a key, AWS CodePipeline uses the default key for Amazon Simple Storage Service (Amazon S3). An `encryptionKey` block is documented below.
	EncryptionKey *PipelineArtifactStoreEncryptionKey `pulumi:"encryptionKey"`
	// The location where AWS CodePipeline stores artifacts for a pipeline; currently only `S3` is supported.
	Location string `pulumi:"location"`
	// The region where the artifact store is located. Required for a cross-region CodePipeline, do not provide for a single-region CodePipeline.
	Region *string `pulumi:"region"`
	// The type of the artifact store, such as Amazon S3
	Type string `pulumi:"type"`
}

type PipelineArtifactStoreArgs

type PipelineArtifactStoreArgs struct {
	// The encryption key block AWS CodePipeline uses to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If you don't specify a key, AWS CodePipeline uses the default key for Amazon Simple Storage Service (Amazon S3). An `encryptionKey` block is documented below.
	EncryptionKey PipelineArtifactStoreEncryptionKeyPtrInput `pulumi:"encryptionKey"`
	// The location where AWS CodePipeline stores artifacts for a pipeline; currently only `S3` is supported.
	Location pulumi.StringInput `pulumi:"location"`
	// The region where the artifact store is located. Required for a cross-region CodePipeline, do not provide for a single-region CodePipeline.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// The type of the artifact store, such as Amazon S3
	Type pulumi.StringInput `pulumi:"type"`
}

func (PipelineArtifactStoreArgs) ElementType

func (PipelineArtifactStoreArgs) ElementType() reflect.Type

func (PipelineArtifactStoreArgs) ToPipelineArtifactStoreOutput

func (i PipelineArtifactStoreArgs) ToPipelineArtifactStoreOutput() PipelineArtifactStoreOutput

func (PipelineArtifactStoreArgs) ToPipelineArtifactStoreOutputWithContext

func (i PipelineArtifactStoreArgs) ToPipelineArtifactStoreOutputWithContext(ctx context.Context) PipelineArtifactStoreOutput

func (PipelineArtifactStoreArgs) ToPipelineArtifactStorePtrOutput

func (i PipelineArtifactStoreArgs) ToPipelineArtifactStorePtrOutput() PipelineArtifactStorePtrOutput

func (PipelineArtifactStoreArgs) ToPipelineArtifactStorePtrOutputWithContext

func (i PipelineArtifactStoreArgs) ToPipelineArtifactStorePtrOutputWithContext(ctx context.Context) PipelineArtifactStorePtrOutput

type PipelineArtifactStoreEncryptionKey

type PipelineArtifactStoreEncryptionKey struct {
	// The KMS key ARN or ID
	Id string `pulumi:"id"`
	// The type of key; currently only `KMS` is supported
	Type string `pulumi:"type"`
}

type PipelineArtifactStoreEncryptionKeyArgs

type PipelineArtifactStoreEncryptionKeyArgs struct {
	// The KMS key ARN or ID
	Id pulumi.StringInput `pulumi:"id"`
	// The type of key; currently only `KMS` is supported
	Type pulumi.StringInput `pulumi:"type"`
}

func (PipelineArtifactStoreEncryptionKeyArgs) ElementType

func (PipelineArtifactStoreEncryptionKeyArgs) ToPipelineArtifactStoreEncryptionKeyOutput

func (i PipelineArtifactStoreEncryptionKeyArgs) ToPipelineArtifactStoreEncryptionKeyOutput() PipelineArtifactStoreEncryptionKeyOutput

func (PipelineArtifactStoreEncryptionKeyArgs) ToPipelineArtifactStoreEncryptionKeyOutputWithContext

func (i PipelineArtifactStoreEncryptionKeyArgs) ToPipelineArtifactStoreEncryptionKeyOutputWithContext(ctx context.Context) PipelineArtifactStoreEncryptionKeyOutput

func (PipelineArtifactStoreEncryptionKeyArgs) ToPipelineArtifactStoreEncryptionKeyPtrOutput

func (i PipelineArtifactStoreEncryptionKeyArgs) ToPipelineArtifactStoreEncryptionKeyPtrOutput() PipelineArtifactStoreEncryptionKeyPtrOutput

func (PipelineArtifactStoreEncryptionKeyArgs) ToPipelineArtifactStoreEncryptionKeyPtrOutputWithContext

func (i PipelineArtifactStoreEncryptionKeyArgs) ToPipelineArtifactStoreEncryptionKeyPtrOutputWithContext(ctx context.Context) PipelineArtifactStoreEncryptionKeyPtrOutput

type PipelineArtifactStoreEncryptionKeyInput

type PipelineArtifactStoreEncryptionKeyInput interface {
	pulumi.Input

	ToPipelineArtifactStoreEncryptionKeyOutput() PipelineArtifactStoreEncryptionKeyOutput
	ToPipelineArtifactStoreEncryptionKeyOutputWithContext(context.Context) PipelineArtifactStoreEncryptionKeyOutput
}

PipelineArtifactStoreEncryptionKeyInput is an input type that accepts PipelineArtifactStoreEncryptionKeyArgs and PipelineArtifactStoreEncryptionKeyOutput values. You can construct a concrete instance of `PipelineArtifactStoreEncryptionKeyInput` via:

PipelineArtifactStoreEncryptionKeyArgs{...}

type PipelineArtifactStoreEncryptionKeyOutput

type PipelineArtifactStoreEncryptionKeyOutput struct{ *pulumi.OutputState }

func (PipelineArtifactStoreEncryptionKeyOutput) ElementType

func (PipelineArtifactStoreEncryptionKeyOutput) Id

The KMS key ARN or ID

func (PipelineArtifactStoreEncryptionKeyOutput) ToPipelineArtifactStoreEncryptionKeyOutput

func (o PipelineArtifactStoreEncryptionKeyOutput) ToPipelineArtifactStoreEncryptionKeyOutput() PipelineArtifactStoreEncryptionKeyOutput

func (PipelineArtifactStoreEncryptionKeyOutput) ToPipelineArtifactStoreEncryptionKeyOutputWithContext

func (o PipelineArtifactStoreEncryptionKeyOutput) ToPipelineArtifactStoreEncryptionKeyOutputWithContext(ctx context.Context) PipelineArtifactStoreEncryptionKeyOutput

func (PipelineArtifactStoreEncryptionKeyOutput) ToPipelineArtifactStoreEncryptionKeyPtrOutput

func (o PipelineArtifactStoreEncryptionKeyOutput) ToPipelineArtifactStoreEncryptionKeyPtrOutput() PipelineArtifactStoreEncryptionKeyPtrOutput

func (PipelineArtifactStoreEncryptionKeyOutput) ToPipelineArtifactStoreEncryptionKeyPtrOutputWithContext

func (o PipelineArtifactStoreEncryptionKeyOutput) ToPipelineArtifactStoreEncryptionKeyPtrOutputWithContext(ctx context.Context) PipelineArtifactStoreEncryptionKeyPtrOutput

func (PipelineArtifactStoreEncryptionKeyOutput) Type

The type of key; currently only `KMS` is supported

type PipelineArtifactStoreEncryptionKeyPtrInput

type PipelineArtifactStoreEncryptionKeyPtrInput interface {
	pulumi.Input

	ToPipelineArtifactStoreEncryptionKeyPtrOutput() PipelineArtifactStoreEncryptionKeyPtrOutput
	ToPipelineArtifactStoreEncryptionKeyPtrOutputWithContext(context.Context) PipelineArtifactStoreEncryptionKeyPtrOutput
}

PipelineArtifactStoreEncryptionKeyPtrInput is an input type that accepts PipelineArtifactStoreEncryptionKeyArgs, PipelineArtifactStoreEncryptionKeyPtr and PipelineArtifactStoreEncryptionKeyPtrOutput values. You can construct a concrete instance of `PipelineArtifactStoreEncryptionKeyPtrInput` via:

        PipelineArtifactStoreEncryptionKeyArgs{...}

or:

        nil

type PipelineArtifactStoreEncryptionKeyPtrOutput

type PipelineArtifactStoreEncryptionKeyPtrOutput struct{ *pulumi.OutputState }

func (PipelineArtifactStoreEncryptionKeyPtrOutput) Elem

func (PipelineArtifactStoreEncryptionKeyPtrOutput) ElementType

func (PipelineArtifactStoreEncryptionKeyPtrOutput) Id

The KMS key ARN or ID

func (PipelineArtifactStoreEncryptionKeyPtrOutput) ToPipelineArtifactStoreEncryptionKeyPtrOutput

func (o PipelineArtifactStoreEncryptionKeyPtrOutput) ToPipelineArtifactStoreEncryptionKeyPtrOutput() PipelineArtifactStoreEncryptionKeyPtrOutput

func (PipelineArtifactStoreEncryptionKeyPtrOutput) ToPipelineArtifactStoreEncryptionKeyPtrOutputWithContext

func (o PipelineArtifactStoreEncryptionKeyPtrOutput) ToPipelineArtifactStoreEncryptionKeyPtrOutputWithContext(ctx context.Context) PipelineArtifactStoreEncryptionKeyPtrOutput

func (PipelineArtifactStoreEncryptionKeyPtrOutput) Type

The type of key; currently only `KMS` is supported

type PipelineArtifactStoreInput

type PipelineArtifactStoreInput interface {
	pulumi.Input

	ToPipelineArtifactStoreOutput() PipelineArtifactStoreOutput
	ToPipelineArtifactStoreOutputWithContext(context.Context) PipelineArtifactStoreOutput
}

PipelineArtifactStoreInput is an input type that accepts PipelineArtifactStoreArgs and PipelineArtifactStoreOutput values. You can construct a concrete instance of `PipelineArtifactStoreInput` via:

PipelineArtifactStoreArgs{...}

type PipelineArtifactStoreOutput

type PipelineArtifactStoreOutput struct{ *pulumi.OutputState }

func (PipelineArtifactStoreOutput) ElementType

func (PipelineArtifactStoreOutput) EncryptionKey

The encryption key block AWS CodePipeline uses to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If you don't specify a key, AWS CodePipeline uses the default key for Amazon Simple Storage Service (Amazon S3). An `encryptionKey` block is documented below.

func (PipelineArtifactStoreOutput) Location

The location where AWS CodePipeline stores artifacts for a pipeline; currently only `S3` is supported.

func (PipelineArtifactStoreOutput) Region

The region where the artifact store is located. Required for a cross-region CodePipeline, do not provide for a single-region CodePipeline.

func (PipelineArtifactStoreOutput) ToPipelineArtifactStoreOutput

func (o PipelineArtifactStoreOutput) ToPipelineArtifactStoreOutput() PipelineArtifactStoreOutput

func (PipelineArtifactStoreOutput) ToPipelineArtifactStoreOutputWithContext

func (o PipelineArtifactStoreOutput) ToPipelineArtifactStoreOutputWithContext(ctx context.Context) PipelineArtifactStoreOutput

func (PipelineArtifactStoreOutput) ToPipelineArtifactStorePtrOutput

func (o PipelineArtifactStoreOutput) ToPipelineArtifactStorePtrOutput() PipelineArtifactStorePtrOutput

func (PipelineArtifactStoreOutput) ToPipelineArtifactStorePtrOutputWithContext

func (o PipelineArtifactStoreOutput) ToPipelineArtifactStorePtrOutputWithContext(ctx context.Context) PipelineArtifactStorePtrOutput

func (PipelineArtifactStoreOutput) Type

The type of the artifact store, such as Amazon S3

type PipelineArtifactStorePtrInput

type PipelineArtifactStorePtrInput interface {
	pulumi.Input

	ToPipelineArtifactStorePtrOutput() PipelineArtifactStorePtrOutput
	ToPipelineArtifactStorePtrOutputWithContext(context.Context) PipelineArtifactStorePtrOutput
}

PipelineArtifactStorePtrInput is an input type that accepts PipelineArtifactStoreArgs, PipelineArtifactStorePtr and PipelineArtifactStorePtrOutput values. You can construct a concrete instance of `PipelineArtifactStorePtrInput` via:

        PipelineArtifactStoreArgs{...}

or:

        nil

type PipelineArtifactStorePtrOutput

type PipelineArtifactStorePtrOutput struct{ *pulumi.OutputState }

func (PipelineArtifactStorePtrOutput) Elem

func (PipelineArtifactStorePtrOutput) ElementType

func (PipelineArtifactStorePtrOutput) EncryptionKey

The encryption key block AWS CodePipeline uses to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If you don't specify a key, AWS CodePipeline uses the default key for Amazon Simple Storage Service (Amazon S3). An `encryptionKey` block is documented below.

func (PipelineArtifactStorePtrOutput) Location

The location where AWS CodePipeline stores artifacts for a pipeline; currently only `S3` is supported.

func (PipelineArtifactStorePtrOutput) Region

The region where the artifact store is located. Required for a cross-region CodePipeline, do not provide for a single-region CodePipeline.

func (PipelineArtifactStorePtrOutput) ToPipelineArtifactStorePtrOutput

func (o PipelineArtifactStorePtrOutput) ToPipelineArtifactStorePtrOutput() PipelineArtifactStorePtrOutput

func (PipelineArtifactStorePtrOutput) ToPipelineArtifactStorePtrOutputWithContext

func (o PipelineArtifactStorePtrOutput) ToPipelineArtifactStorePtrOutputWithContext(ctx context.Context) PipelineArtifactStorePtrOutput

func (PipelineArtifactStorePtrOutput) Type

The type of the artifact store, such as Amazon S3

type PipelineInput

type PipelineInput interface {
	pulumi.Input

	ToPipelineOutput() PipelineOutput
	ToPipelineOutputWithContext(ctx context.Context) PipelineOutput
}

type PipelineMap

type PipelineMap map[string]PipelineInput

func (PipelineMap) ElementType

func (PipelineMap) ElementType() reflect.Type

func (PipelineMap) ToPipelineMapOutput

func (i PipelineMap) ToPipelineMapOutput() PipelineMapOutput

func (PipelineMap) ToPipelineMapOutputWithContext

func (i PipelineMap) ToPipelineMapOutputWithContext(ctx context.Context) PipelineMapOutput

type PipelineMapInput

type PipelineMapInput interface {
	pulumi.Input

	ToPipelineMapOutput() PipelineMapOutput
	ToPipelineMapOutputWithContext(context.Context) PipelineMapOutput
}

PipelineMapInput is an input type that accepts PipelineMap and PipelineMapOutput values. You can construct a concrete instance of `PipelineMapInput` via:

PipelineMap{ "key": PipelineArgs{...} }

type PipelineMapOutput

type PipelineMapOutput struct{ *pulumi.OutputState }

func (PipelineMapOutput) ElementType

func (PipelineMapOutput) ElementType() reflect.Type

func (PipelineMapOutput) MapIndex

func (PipelineMapOutput) ToPipelineMapOutput

func (o PipelineMapOutput) ToPipelineMapOutput() PipelineMapOutput

func (PipelineMapOutput) ToPipelineMapOutputWithContext

func (o PipelineMapOutput) ToPipelineMapOutputWithContext(ctx context.Context) PipelineMapOutput

type PipelineOutput

type PipelineOutput struct{ *pulumi.OutputState }

func (PipelineOutput) ElementType

func (PipelineOutput) ElementType() reflect.Type

func (PipelineOutput) ToPipelineOutput

func (o PipelineOutput) ToPipelineOutput() PipelineOutput

func (PipelineOutput) ToPipelineOutputWithContext

func (o PipelineOutput) ToPipelineOutputWithContext(ctx context.Context) PipelineOutput

func (PipelineOutput) ToPipelinePtrOutput

func (o PipelineOutput) ToPipelinePtrOutput() PipelinePtrOutput

func (PipelineOutput) ToPipelinePtrOutputWithContext

func (o PipelineOutput) ToPipelinePtrOutputWithContext(ctx context.Context) PipelinePtrOutput

type PipelinePtrInput

type PipelinePtrInput interface {
	pulumi.Input

	ToPipelinePtrOutput() PipelinePtrOutput
	ToPipelinePtrOutputWithContext(ctx context.Context) PipelinePtrOutput
}

type PipelinePtrOutput

type PipelinePtrOutput struct{ *pulumi.OutputState }

func (PipelinePtrOutput) Elem added in v4.15.0

func (PipelinePtrOutput) ElementType

func (PipelinePtrOutput) ElementType() reflect.Type

func (PipelinePtrOutput) ToPipelinePtrOutput

func (o PipelinePtrOutput) ToPipelinePtrOutput() PipelinePtrOutput

func (PipelinePtrOutput) ToPipelinePtrOutputWithContext

func (o PipelinePtrOutput) ToPipelinePtrOutputWithContext(ctx context.Context) PipelinePtrOutput

type PipelineStage

type PipelineStage struct {
	// The action(s) to include in the stage. Defined as an `action` block below
	Actions []PipelineStageAction `pulumi:"actions"`
	// The name of the stage.
	Name string `pulumi:"name"`
}

type PipelineStageAction

type PipelineStageAction struct {
	// A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Possible values are `Approval`, `Build`, `Deploy`, `Invoke`, `Source` and `Test`.
	Category string `pulumi:"category"`
	// A map of the action declaration's configuration. Configurations options for action types and providers can be found in the [Pipeline Structure Reference](http://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements) and [Action Structure Reference](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference.html) documentation.
	Configuration map[string]string `pulumi:"configuration"`
	// A list of artifact names to be worked on.
	InputArtifacts []string `pulumi:"inputArtifacts"`
	// The action declaration's name.
	Name string `pulumi:"name"`
	// The namespace all output variables will be accessed from.
	Namespace *string `pulumi:"namespace"`
	// A list of artifact names to output. Output artifact names must be unique within a pipeline.
	OutputArtifacts []string `pulumi:"outputArtifacts"`
	// The creator of the action being called. Possible values are `AWS`, `Custom` and `ThirdParty`.
	Owner string `pulumi:"owner"`
	// The provider of the service being called by the action. Valid providers are determined by the action category. Provider names are listed in the [Action Structure Reference](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference.html) documentation.
	Provider string `pulumi:"provider"`
	// The region in which to run the action.
	Region *string `pulumi:"region"`
	// The ARN of the IAM service role that will perform the declared action. This is assumed through the roleArn for the pipeline.
	RoleArn *string `pulumi:"roleArn"`
	// The order in which actions are run.
	RunOrder *int `pulumi:"runOrder"`
	// A string that identifies the action type.
	Version string `pulumi:"version"`
}

type PipelineStageActionArgs

type PipelineStageActionArgs struct {
	// A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Possible values are `Approval`, `Build`, `Deploy`, `Invoke`, `Source` and `Test`.
	Category pulumi.StringInput `pulumi:"category"`
	// A map of the action declaration's configuration. Configurations options for action types and providers can be found in the [Pipeline Structure Reference](http://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements) and [Action Structure Reference](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference.html) documentation.
	Configuration pulumi.StringMapInput `pulumi:"configuration"`
	// A list of artifact names to be worked on.
	InputArtifacts pulumi.StringArrayInput `pulumi:"inputArtifacts"`
	// The action declaration's name.
	Name pulumi.StringInput `pulumi:"name"`
	// The namespace all output variables will be accessed from.
	Namespace pulumi.StringPtrInput `pulumi:"namespace"`
	// A list of artifact names to output. Output artifact names must be unique within a pipeline.
	OutputArtifacts pulumi.StringArrayInput `pulumi:"outputArtifacts"`
	// The creator of the action being called. Possible values are `AWS`, `Custom` and `ThirdParty`.
	Owner pulumi.StringInput `pulumi:"owner"`
	// The provider of the service being called by the action. Valid providers are determined by the action category. Provider names are listed in the [Action Structure Reference](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference.html) documentation.
	Provider pulumi.StringInput `pulumi:"provider"`
	// The region in which to run the action.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// The ARN of the IAM service role that will perform the declared action. This is assumed through the roleArn for the pipeline.
	RoleArn pulumi.StringPtrInput `pulumi:"roleArn"`
	// The order in which actions are run.
	RunOrder pulumi.IntPtrInput `pulumi:"runOrder"`
	// A string that identifies the action type.
	Version pulumi.StringInput `pulumi:"version"`
}

func (PipelineStageActionArgs) ElementType

func (PipelineStageActionArgs) ElementType() reflect.Type

func (PipelineStageActionArgs) ToPipelineStageActionOutput

func (i PipelineStageActionArgs) ToPipelineStageActionOutput() PipelineStageActionOutput

func (PipelineStageActionArgs) ToPipelineStageActionOutputWithContext

func (i PipelineStageActionArgs) ToPipelineStageActionOutputWithContext(ctx context.Context) PipelineStageActionOutput

type PipelineStageActionArray

type PipelineStageActionArray []PipelineStageActionInput

func (PipelineStageActionArray) ElementType

func (PipelineStageActionArray) ElementType() reflect.Type

func (PipelineStageActionArray) ToPipelineStageActionArrayOutput

func (i PipelineStageActionArray) ToPipelineStageActionArrayOutput() PipelineStageActionArrayOutput

func (PipelineStageActionArray) ToPipelineStageActionArrayOutputWithContext

func (i PipelineStageActionArray) ToPipelineStageActionArrayOutputWithContext(ctx context.Context) PipelineStageActionArrayOutput

type PipelineStageActionArrayInput

type PipelineStageActionArrayInput interface {
	pulumi.Input

	ToPipelineStageActionArrayOutput() PipelineStageActionArrayOutput
	ToPipelineStageActionArrayOutputWithContext(context.Context) PipelineStageActionArrayOutput
}

PipelineStageActionArrayInput is an input type that accepts PipelineStageActionArray and PipelineStageActionArrayOutput values. You can construct a concrete instance of `PipelineStageActionArrayInput` via:

PipelineStageActionArray{ PipelineStageActionArgs{...} }

type PipelineStageActionArrayOutput

type PipelineStageActionArrayOutput struct{ *pulumi.OutputState }

func (PipelineStageActionArrayOutput) ElementType

func (PipelineStageActionArrayOutput) Index

func (PipelineStageActionArrayOutput) ToPipelineStageActionArrayOutput

func (o PipelineStageActionArrayOutput) ToPipelineStageActionArrayOutput() PipelineStageActionArrayOutput

func (PipelineStageActionArrayOutput) ToPipelineStageActionArrayOutputWithContext

func (o PipelineStageActionArrayOutput) ToPipelineStageActionArrayOutputWithContext(ctx context.Context) PipelineStageActionArrayOutput

type PipelineStageActionInput

type PipelineStageActionInput interface {
	pulumi.Input

	ToPipelineStageActionOutput() PipelineStageActionOutput
	ToPipelineStageActionOutputWithContext(context.Context) PipelineStageActionOutput
}

PipelineStageActionInput is an input type that accepts PipelineStageActionArgs and PipelineStageActionOutput values. You can construct a concrete instance of `PipelineStageActionInput` via:

PipelineStageActionArgs{...}

type PipelineStageActionOutput

type PipelineStageActionOutput struct{ *pulumi.OutputState }

func (PipelineStageActionOutput) Category

A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Possible values are `Approval`, `Build`, `Deploy`, `Invoke`, `Source` and `Test`.

func (PipelineStageActionOutput) Configuration

A map of the action declaration's configuration. Configurations options for action types and providers can be found in the [Pipeline Structure Reference](http://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements) and [Action Structure Reference](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference.html) documentation.

func (PipelineStageActionOutput) ElementType

func (PipelineStageActionOutput) ElementType() reflect.Type

func (PipelineStageActionOutput) InputArtifacts

A list of artifact names to be worked on.

func (PipelineStageActionOutput) Name

The action declaration's name.

func (PipelineStageActionOutput) Namespace

The namespace all output variables will be accessed from.

func (PipelineStageActionOutput) OutputArtifacts

A list of artifact names to output. Output artifact names must be unique within a pipeline.

func (PipelineStageActionOutput) Owner

The creator of the action being called. Possible values are `AWS`, `Custom` and `ThirdParty`.

func (PipelineStageActionOutput) Provider

The provider of the service being called by the action. Valid providers are determined by the action category. Provider names are listed in the [Action Structure Reference](https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference.html) documentation.

func (PipelineStageActionOutput) Region

The region in which to run the action.

func (PipelineStageActionOutput) RoleArn

The ARN of the IAM service role that will perform the declared action. This is assumed through the roleArn for the pipeline.

func (PipelineStageActionOutput) RunOrder

The order in which actions are run.

func (PipelineStageActionOutput) ToPipelineStageActionOutput

func (o PipelineStageActionOutput) ToPipelineStageActionOutput() PipelineStageActionOutput

func (PipelineStageActionOutput) ToPipelineStageActionOutputWithContext

func (o PipelineStageActionOutput) ToPipelineStageActionOutputWithContext(ctx context.Context) PipelineStageActionOutput

func (PipelineStageActionOutput) Version

A string that identifies the action type.

type PipelineStageArgs

type PipelineStageArgs struct {
	// The action(s) to include in the stage. Defined as an `action` block below
	Actions PipelineStageActionArrayInput `pulumi:"actions"`
	// The name of the stage.
	Name pulumi.StringInput `pulumi:"name"`
}

func (PipelineStageArgs) ElementType

func (PipelineStageArgs) ElementType() reflect.Type

func (PipelineStageArgs) ToPipelineStageOutput

func (i PipelineStageArgs) ToPipelineStageOutput() PipelineStageOutput

func (PipelineStageArgs) ToPipelineStageOutputWithContext

func (i PipelineStageArgs) ToPipelineStageOutputWithContext(ctx context.Context) PipelineStageOutput

type PipelineStageArray

type PipelineStageArray []PipelineStageInput

func (PipelineStageArray) ElementType

func (PipelineStageArray) ElementType() reflect.Type

func (PipelineStageArray) ToPipelineStageArrayOutput

func (i PipelineStageArray) ToPipelineStageArrayOutput() PipelineStageArrayOutput

func (PipelineStageArray) ToPipelineStageArrayOutputWithContext

func (i PipelineStageArray) ToPipelineStageArrayOutputWithContext(ctx context.Context) PipelineStageArrayOutput

type PipelineStageArrayInput

type PipelineStageArrayInput interface {
	pulumi.Input

	ToPipelineStageArrayOutput() PipelineStageArrayOutput
	ToPipelineStageArrayOutputWithContext(context.Context) PipelineStageArrayOutput
}

PipelineStageArrayInput is an input type that accepts PipelineStageArray and PipelineStageArrayOutput values. You can construct a concrete instance of `PipelineStageArrayInput` via:

PipelineStageArray{ PipelineStageArgs{...} }

type PipelineStageArrayOutput

type PipelineStageArrayOutput struct{ *pulumi.OutputState }

func (PipelineStageArrayOutput) ElementType

func (PipelineStageArrayOutput) ElementType() reflect.Type

func (PipelineStageArrayOutput) Index

func (PipelineStageArrayOutput) ToPipelineStageArrayOutput

func (o PipelineStageArrayOutput) ToPipelineStageArrayOutput() PipelineStageArrayOutput

func (PipelineStageArrayOutput) ToPipelineStageArrayOutputWithContext

func (o PipelineStageArrayOutput) ToPipelineStageArrayOutputWithContext(ctx context.Context) PipelineStageArrayOutput

type PipelineStageInput

type PipelineStageInput interface {
	pulumi.Input

	ToPipelineStageOutput() PipelineStageOutput
	ToPipelineStageOutputWithContext(context.Context) PipelineStageOutput
}

PipelineStageInput is an input type that accepts PipelineStageArgs and PipelineStageOutput values. You can construct a concrete instance of `PipelineStageInput` via:

PipelineStageArgs{...}

type PipelineStageOutput

type PipelineStageOutput struct{ *pulumi.OutputState }

func (PipelineStageOutput) Actions

The action(s) to include in the stage. Defined as an `action` block below

func (PipelineStageOutput) ElementType

func (PipelineStageOutput) ElementType() reflect.Type

func (PipelineStageOutput) Name

The name of the stage.

func (PipelineStageOutput) ToPipelineStageOutput

func (o PipelineStageOutput) ToPipelineStageOutput() PipelineStageOutput

func (PipelineStageOutput) ToPipelineStageOutputWithContext

func (o PipelineStageOutput) ToPipelineStageOutputWithContext(ctx context.Context) PipelineStageOutput

type PipelineState

type PipelineState struct {
	// The codepipeline ARN.
	Arn pulumi.StringPtrInput
	// One or more artifactStore blocks. Artifact stores are documented below.
	ArtifactStore PipelineArtifactStorePtrInput
	// The name of the pipeline.
	Name pulumi.StringPtrInput
	// A service role Amazon Resource Name (ARN) that grants AWS CodePipeline permission to make calls to AWS services on your behalf.
	RoleArn pulumi.StringPtrInput
	// A stage block. Stages are documented below.
	Stages PipelineStageArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
}

func (PipelineState) ElementType

func (PipelineState) ElementType() reflect.Type

type Webhook

type Webhook struct {
	pulumi.CustomResourceState

	// The CodePipeline webhook's ARN.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The type of authentication  to use. One of `IP`, `GITHUB_HMAC`, or `UNAUTHENTICATED`.
	Authentication pulumi.StringOutput `pulumi:"authentication"`
	// An `auth` block. Required for `IP` and `GITHUB_HMAC`. Auth blocks are documented below.
	AuthenticationConfiguration WebhookAuthenticationConfigurationPtrOutput `pulumi:"authenticationConfiguration"`
	// One or more `filter` blocks. Filter blocks are documented below.
	Filters WebhookFilterArrayOutput `pulumi:"filters"`
	// The name of the webhook.
	Name pulumi.StringOutput `pulumi:"name"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The name of the action in a pipeline you want to connect to the webhook. The action must be from the source (first) stage of the pipeline.
	TargetAction pulumi.StringOutput `pulumi:"targetAction"`
	// The name of the pipeline.
	TargetPipeline pulumi.StringOutput `pulumi:"targetPipeline"`
	// The CodePipeline webhook's URL. POST events to this endpoint to trigger the target.
	Url pulumi.StringOutput `pulumi:"url"`
}

Provides a CodePipeline Webhook.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v4/go/aws/codepipeline"
"github.com/pulumi/pulumi-github/sdk/v4/go/github"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		barPipeline, err := codepipeline.NewPipeline(ctx, "barPipeline", &codepipeline.PipelineArgs{
			RoleArn: pulumi.Any(aws_iam_role.Bar.Arn),
			ArtifactStore: &codepipeline.PipelineArtifactStoreArgs{
				Location: pulumi.Any(aws_s3_bucket.Bar.Bucket),
				Type:     pulumi.String("S3"),
				EncryptionKey: &codepipeline.PipelineArtifactStoreEncryptionKeyArgs{
					Id:   pulumi.Any(data.Aws_kms_alias.S3kmskey.Arn),
					Type: pulumi.String("KMS"),
				},
			},
			Stages: codepipeline.PipelineStageArray{
				&codepipeline.PipelineStageArgs{
					Name: pulumi.String("Source"),
					Actions: codepipeline.PipelineStageActionArray{
						&codepipeline.PipelineStageActionArgs{
							Name:     pulumi.String("Source"),
							Category: pulumi.String("Source"),
							Owner:    pulumi.String("ThirdParty"),
							Provider: pulumi.String("GitHub"),
							Version:  pulumi.String("1"),
							OutputArtifacts: pulumi.StringArray{
								pulumi.String("test"),
							},
							Configuration: pulumi.StringMap{
								"Owner":  pulumi.String("my-organization"),
								"Repo":   pulumi.String("test"),
								"Branch": pulumi.String("master"),
							},
						},
					},
				},
				&codepipeline.PipelineStageArgs{
					Name: pulumi.String("Build"),
					Actions: codepipeline.PipelineStageActionArray{
						&codepipeline.PipelineStageActionArgs{
							Name:     pulumi.String("Build"),
							Category: pulumi.String("Build"),
							Owner:    pulumi.String("AWS"),
							Provider: pulumi.String("CodeBuild"),
							InputArtifacts: pulumi.StringArray{
								pulumi.String("test"),
							},
							Version: pulumi.String("1"),
							Configuration: pulumi.StringMap{
								"ProjectName": pulumi.String("test"),
							},
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		webhookSecret := "super-secret"
		barWebhook, err := codepipeline.NewWebhook(ctx, "barWebhook", &codepipeline.WebhookArgs{
			Authentication: pulumi.String("GITHUB_HMAC"),
			TargetAction:   pulumi.String("Source"),
			TargetPipeline: barPipeline.Name,
			AuthenticationConfiguration: &codepipeline.WebhookAuthenticationConfigurationArgs{
				SecretToken: pulumi.String(webhookSecret),
			},
			Filters: codepipeline.WebhookFilterArray{
				&codepipeline.WebhookFilterArgs{
					JsonPath:    pulumi.String(fmt.Sprintf("%v%v", "$", ".ref")),
					MatchEquals: pulumi.String("refs/heads/{Branch}"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = github.NewRepositoryWebhook(ctx, "barRepositoryWebhook", &github.RepositoryWebhookArgs{
			Repository: pulumi.Any(github_repository.Repo.Name),
			Configuration: &RepositoryWebhookConfigurationArgs{
				Url:         barWebhook.Url,
				ContentType: pulumi.String("json"),
				InsecureSsl: pulumi.Bool(true),
				Secret:      pulumi.String(webhookSecret),
			},
			Events: pulumi.StringArray{
				pulumi.String("push"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

CodePipeline Webhooks can be imported by their ARN, e.g.,

```sh

$ pulumi import aws:codepipeline/webhook:Webhook example arn:aws:codepipeline:us-west-2:123456789012:webhook:example

```

func GetWebhook

func GetWebhook(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *WebhookState, opts ...pulumi.ResourceOption) (*Webhook, error)

GetWebhook gets an existing Webhook resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewWebhook

func NewWebhook(ctx *pulumi.Context,
	name string, args *WebhookArgs, opts ...pulumi.ResourceOption) (*Webhook, error)

NewWebhook registers a new resource with the given unique name, arguments, and options.

func (*Webhook) ElementType

func (*Webhook) ElementType() reflect.Type

func (*Webhook) ToWebhookOutput

func (i *Webhook) ToWebhookOutput() WebhookOutput

func (*Webhook) ToWebhookOutputWithContext

func (i *Webhook) ToWebhookOutputWithContext(ctx context.Context) WebhookOutput

func (*Webhook) ToWebhookPtrOutput

func (i *Webhook) ToWebhookPtrOutput() WebhookPtrOutput

func (*Webhook) ToWebhookPtrOutputWithContext

func (i *Webhook) ToWebhookPtrOutputWithContext(ctx context.Context) WebhookPtrOutput

type WebhookArgs

type WebhookArgs struct {
	// The type of authentication  to use. One of `IP`, `GITHUB_HMAC`, or `UNAUTHENTICATED`.
	Authentication pulumi.StringInput
	// An `auth` block. Required for `IP` and `GITHUB_HMAC`. Auth blocks are documented below.
	AuthenticationConfiguration WebhookAuthenticationConfigurationPtrInput
	// One or more `filter` blocks. Filter blocks are documented below.
	Filters WebhookFilterArrayInput
	// The name of the webhook.
	Name pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// The name of the action in a pipeline you want to connect to the webhook. The action must be from the source (first) stage of the pipeline.
	TargetAction pulumi.StringInput
	// The name of the pipeline.
	TargetPipeline pulumi.StringInput
}

The set of arguments for constructing a Webhook resource.

func (WebhookArgs) ElementType

func (WebhookArgs) ElementType() reflect.Type

type WebhookArray

type WebhookArray []WebhookInput

func (WebhookArray) ElementType

func (WebhookArray) ElementType() reflect.Type

func (WebhookArray) ToWebhookArrayOutput

func (i WebhookArray) ToWebhookArrayOutput() WebhookArrayOutput

func (WebhookArray) ToWebhookArrayOutputWithContext

func (i WebhookArray) ToWebhookArrayOutputWithContext(ctx context.Context) WebhookArrayOutput

type WebhookArrayInput

type WebhookArrayInput interface {
	pulumi.Input

	ToWebhookArrayOutput() WebhookArrayOutput
	ToWebhookArrayOutputWithContext(context.Context) WebhookArrayOutput
}

WebhookArrayInput is an input type that accepts WebhookArray and WebhookArrayOutput values. You can construct a concrete instance of `WebhookArrayInput` via:

WebhookArray{ WebhookArgs{...} }

type WebhookArrayOutput

type WebhookArrayOutput struct{ *pulumi.OutputState }

func (WebhookArrayOutput) ElementType

func (WebhookArrayOutput) ElementType() reflect.Type

func (WebhookArrayOutput) Index

func (WebhookArrayOutput) ToWebhookArrayOutput

func (o WebhookArrayOutput) ToWebhookArrayOutput() WebhookArrayOutput

func (WebhookArrayOutput) ToWebhookArrayOutputWithContext

func (o WebhookArrayOutput) ToWebhookArrayOutputWithContext(ctx context.Context) WebhookArrayOutput

type WebhookAuthenticationConfiguration

type WebhookAuthenticationConfiguration struct {
	// A valid CIDR block for `IP` filtering. Required for `IP`.
	AllowedIpRange *string `pulumi:"allowedIpRange"`
	// The shared secret for the GitHub repository webhook. Set this as `secret` in your `githubRepositoryWebhook`'s `configuration` block. Required for `GITHUB_HMAC`.
	SecretToken *string `pulumi:"secretToken"`
}

type WebhookAuthenticationConfigurationArgs

type WebhookAuthenticationConfigurationArgs struct {
	// A valid CIDR block for `IP` filtering. Required for `IP`.
	AllowedIpRange pulumi.StringPtrInput `pulumi:"allowedIpRange"`
	// The shared secret for the GitHub repository webhook. Set this as `secret` in your `githubRepositoryWebhook`'s `configuration` block. Required for `GITHUB_HMAC`.
	SecretToken pulumi.StringPtrInput `pulumi:"secretToken"`
}

func (WebhookAuthenticationConfigurationArgs) ElementType

func (WebhookAuthenticationConfigurationArgs) ToWebhookAuthenticationConfigurationOutput

func (i WebhookAuthenticationConfigurationArgs) ToWebhookAuthenticationConfigurationOutput() WebhookAuthenticationConfigurationOutput

func (WebhookAuthenticationConfigurationArgs) ToWebhookAuthenticationConfigurationOutputWithContext

func (i WebhookAuthenticationConfigurationArgs) ToWebhookAuthenticationConfigurationOutputWithContext(ctx context.Context) WebhookAuthenticationConfigurationOutput

func (WebhookAuthenticationConfigurationArgs) ToWebhookAuthenticationConfigurationPtrOutput

func (i WebhookAuthenticationConfigurationArgs) ToWebhookAuthenticationConfigurationPtrOutput() WebhookAuthenticationConfigurationPtrOutput

func (WebhookAuthenticationConfigurationArgs) ToWebhookAuthenticationConfigurationPtrOutputWithContext

func (i WebhookAuthenticationConfigurationArgs) ToWebhookAuthenticationConfigurationPtrOutputWithContext(ctx context.Context) WebhookAuthenticationConfigurationPtrOutput

type WebhookAuthenticationConfigurationInput

type WebhookAuthenticationConfigurationInput interface {
	pulumi.Input

	ToWebhookAuthenticationConfigurationOutput() WebhookAuthenticationConfigurationOutput
	ToWebhookAuthenticationConfigurationOutputWithContext(context.Context) WebhookAuthenticationConfigurationOutput
}

WebhookAuthenticationConfigurationInput is an input type that accepts WebhookAuthenticationConfigurationArgs and WebhookAuthenticationConfigurationOutput values. You can construct a concrete instance of `WebhookAuthenticationConfigurationInput` via:

WebhookAuthenticationConfigurationArgs{...}

type WebhookAuthenticationConfigurationOutput

type WebhookAuthenticationConfigurationOutput struct{ *pulumi.OutputState }

func (WebhookAuthenticationConfigurationOutput) AllowedIpRange

A valid CIDR block for `IP` filtering. Required for `IP`.

func (WebhookAuthenticationConfigurationOutput) ElementType

func (WebhookAuthenticationConfigurationOutput) SecretToken

The shared secret for the GitHub repository webhook. Set this as `secret` in your `githubRepositoryWebhook`'s `configuration` block. Required for `GITHUB_HMAC`.

func (WebhookAuthenticationConfigurationOutput) ToWebhookAuthenticationConfigurationOutput

func (o WebhookAuthenticationConfigurationOutput) ToWebhookAuthenticationConfigurationOutput() WebhookAuthenticationConfigurationOutput

func (WebhookAuthenticationConfigurationOutput) ToWebhookAuthenticationConfigurationOutputWithContext

func (o WebhookAuthenticationConfigurationOutput) ToWebhookAuthenticationConfigurationOutputWithContext(ctx context.Context) WebhookAuthenticationConfigurationOutput

func (WebhookAuthenticationConfigurationOutput) ToWebhookAuthenticationConfigurationPtrOutput

func (o WebhookAuthenticationConfigurationOutput) ToWebhookAuthenticationConfigurationPtrOutput() WebhookAuthenticationConfigurationPtrOutput

func (WebhookAuthenticationConfigurationOutput) ToWebhookAuthenticationConfigurationPtrOutputWithContext

func (o WebhookAuthenticationConfigurationOutput) ToWebhookAuthenticationConfigurationPtrOutputWithContext(ctx context.Context) WebhookAuthenticationConfigurationPtrOutput

type WebhookAuthenticationConfigurationPtrInput

type WebhookAuthenticationConfigurationPtrInput interface {
	pulumi.Input

	ToWebhookAuthenticationConfigurationPtrOutput() WebhookAuthenticationConfigurationPtrOutput
	ToWebhookAuthenticationConfigurationPtrOutputWithContext(context.Context) WebhookAuthenticationConfigurationPtrOutput
}

WebhookAuthenticationConfigurationPtrInput is an input type that accepts WebhookAuthenticationConfigurationArgs, WebhookAuthenticationConfigurationPtr and WebhookAuthenticationConfigurationPtrOutput values. You can construct a concrete instance of `WebhookAuthenticationConfigurationPtrInput` via:

        WebhookAuthenticationConfigurationArgs{...}

or:

        nil

type WebhookAuthenticationConfigurationPtrOutput

type WebhookAuthenticationConfigurationPtrOutput struct{ *pulumi.OutputState }

func (WebhookAuthenticationConfigurationPtrOutput) AllowedIpRange

A valid CIDR block for `IP` filtering. Required for `IP`.

func (WebhookAuthenticationConfigurationPtrOutput) Elem

func (WebhookAuthenticationConfigurationPtrOutput) ElementType

func (WebhookAuthenticationConfigurationPtrOutput) SecretToken

The shared secret for the GitHub repository webhook. Set this as `secret` in your `githubRepositoryWebhook`'s `configuration` block. Required for `GITHUB_HMAC`.

func (WebhookAuthenticationConfigurationPtrOutput) ToWebhookAuthenticationConfigurationPtrOutput

func (o WebhookAuthenticationConfigurationPtrOutput) ToWebhookAuthenticationConfigurationPtrOutput() WebhookAuthenticationConfigurationPtrOutput

func (WebhookAuthenticationConfigurationPtrOutput) ToWebhookAuthenticationConfigurationPtrOutputWithContext

func (o WebhookAuthenticationConfigurationPtrOutput) ToWebhookAuthenticationConfigurationPtrOutputWithContext(ctx context.Context) WebhookAuthenticationConfigurationPtrOutput

type WebhookFilter

type WebhookFilter struct {
	// The [JSON path](https://github.com/json-path/JsonPath) to filter on.
	JsonPath string `pulumi:"jsonPath"`
	// The value to match on (e.g., `refs/heads/{Branch}`). See [AWS docs](https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_WebhookFilterRule.html) for details.
	MatchEquals string `pulumi:"matchEquals"`
}

type WebhookFilterArgs

type WebhookFilterArgs struct {
	// The [JSON path](https://github.com/json-path/JsonPath) to filter on.
	JsonPath pulumi.StringInput `pulumi:"jsonPath"`
	// The value to match on (e.g., `refs/heads/{Branch}`). See [AWS docs](https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_WebhookFilterRule.html) for details.
	MatchEquals pulumi.StringInput `pulumi:"matchEquals"`
}

func (WebhookFilterArgs) ElementType

func (WebhookFilterArgs) ElementType() reflect.Type

func (WebhookFilterArgs) ToWebhookFilterOutput

func (i WebhookFilterArgs) ToWebhookFilterOutput() WebhookFilterOutput

func (WebhookFilterArgs) ToWebhookFilterOutputWithContext

func (i WebhookFilterArgs) ToWebhookFilterOutputWithContext(ctx context.Context) WebhookFilterOutput

type WebhookFilterArray

type WebhookFilterArray []WebhookFilterInput

func (WebhookFilterArray) ElementType

func (WebhookFilterArray) ElementType() reflect.Type

func (WebhookFilterArray) ToWebhookFilterArrayOutput

func (i WebhookFilterArray) ToWebhookFilterArrayOutput() WebhookFilterArrayOutput

func (WebhookFilterArray) ToWebhookFilterArrayOutputWithContext

func (i WebhookFilterArray) ToWebhookFilterArrayOutputWithContext(ctx context.Context) WebhookFilterArrayOutput

type WebhookFilterArrayInput

type WebhookFilterArrayInput interface {
	pulumi.Input

	ToWebhookFilterArrayOutput() WebhookFilterArrayOutput
	ToWebhookFilterArrayOutputWithContext(context.Context) WebhookFilterArrayOutput
}

WebhookFilterArrayInput is an input type that accepts WebhookFilterArray and WebhookFilterArrayOutput values. You can construct a concrete instance of `WebhookFilterArrayInput` via:

WebhookFilterArray{ WebhookFilterArgs{...} }

type WebhookFilterArrayOutput

type WebhookFilterArrayOutput struct{ *pulumi.OutputState }

func (WebhookFilterArrayOutput) ElementType

func (WebhookFilterArrayOutput) ElementType() reflect.Type

func (WebhookFilterArrayOutput) Index

func (WebhookFilterArrayOutput) ToWebhookFilterArrayOutput

func (o WebhookFilterArrayOutput) ToWebhookFilterArrayOutput() WebhookFilterArrayOutput

func (WebhookFilterArrayOutput) ToWebhookFilterArrayOutputWithContext

func (o WebhookFilterArrayOutput) ToWebhookFilterArrayOutputWithContext(ctx context.Context) WebhookFilterArrayOutput

type WebhookFilterInput

type WebhookFilterInput interface {
	pulumi.Input

	ToWebhookFilterOutput() WebhookFilterOutput
	ToWebhookFilterOutputWithContext(context.Context) WebhookFilterOutput
}

WebhookFilterInput is an input type that accepts WebhookFilterArgs and WebhookFilterOutput values. You can construct a concrete instance of `WebhookFilterInput` via:

WebhookFilterArgs{...}

type WebhookFilterOutput

type WebhookFilterOutput struct{ *pulumi.OutputState }

func (WebhookFilterOutput) ElementType

func (WebhookFilterOutput) ElementType() reflect.Type

func (WebhookFilterOutput) JsonPath

The [JSON path](https://github.com/json-path/JsonPath) to filter on.

func (WebhookFilterOutput) MatchEquals

func (o WebhookFilterOutput) MatchEquals() pulumi.StringOutput

The value to match on (e.g., `refs/heads/{Branch}`). See [AWS docs](https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_WebhookFilterRule.html) for details.

func (WebhookFilterOutput) ToWebhookFilterOutput

func (o WebhookFilterOutput) ToWebhookFilterOutput() WebhookFilterOutput

func (WebhookFilterOutput) ToWebhookFilterOutputWithContext

func (o WebhookFilterOutput) ToWebhookFilterOutputWithContext(ctx context.Context) WebhookFilterOutput

type WebhookInput

type WebhookInput interface {
	pulumi.Input

	ToWebhookOutput() WebhookOutput
	ToWebhookOutputWithContext(ctx context.Context) WebhookOutput
}

type WebhookMap

type WebhookMap map[string]WebhookInput

func (WebhookMap) ElementType

func (WebhookMap) ElementType() reflect.Type

func (WebhookMap) ToWebhookMapOutput

func (i WebhookMap) ToWebhookMapOutput() WebhookMapOutput

func (WebhookMap) ToWebhookMapOutputWithContext

func (i WebhookMap) ToWebhookMapOutputWithContext(ctx context.Context) WebhookMapOutput

type WebhookMapInput

type WebhookMapInput interface {
	pulumi.Input

	ToWebhookMapOutput() WebhookMapOutput
	ToWebhookMapOutputWithContext(context.Context) WebhookMapOutput
}

WebhookMapInput is an input type that accepts WebhookMap and WebhookMapOutput values. You can construct a concrete instance of `WebhookMapInput` via:

WebhookMap{ "key": WebhookArgs{...} }

type WebhookMapOutput

type WebhookMapOutput struct{ *pulumi.OutputState }

func (WebhookMapOutput) ElementType

func (WebhookMapOutput) ElementType() reflect.Type

func (WebhookMapOutput) MapIndex

func (WebhookMapOutput) ToWebhookMapOutput

func (o WebhookMapOutput) ToWebhookMapOutput() WebhookMapOutput

func (WebhookMapOutput) ToWebhookMapOutputWithContext

func (o WebhookMapOutput) ToWebhookMapOutputWithContext(ctx context.Context) WebhookMapOutput

type WebhookOutput

type WebhookOutput struct{ *pulumi.OutputState }

func (WebhookOutput) ElementType

func (WebhookOutput) ElementType() reflect.Type

func (WebhookOutput) ToWebhookOutput

func (o WebhookOutput) ToWebhookOutput() WebhookOutput

func (WebhookOutput) ToWebhookOutputWithContext

func (o WebhookOutput) ToWebhookOutputWithContext(ctx context.Context) WebhookOutput

func (WebhookOutput) ToWebhookPtrOutput

func (o WebhookOutput) ToWebhookPtrOutput() WebhookPtrOutput

func (WebhookOutput) ToWebhookPtrOutputWithContext

func (o WebhookOutput) ToWebhookPtrOutputWithContext(ctx context.Context) WebhookPtrOutput

type WebhookPtrInput

type WebhookPtrInput interface {
	pulumi.Input

	ToWebhookPtrOutput() WebhookPtrOutput
	ToWebhookPtrOutputWithContext(ctx context.Context) WebhookPtrOutput
}

type WebhookPtrOutput

type WebhookPtrOutput struct{ *pulumi.OutputState }

func (WebhookPtrOutput) Elem added in v4.15.0

func (WebhookPtrOutput) ElementType

func (WebhookPtrOutput) ElementType() reflect.Type

func (WebhookPtrOutput) ToWebhookPtrOutput

func (o WebhookPtrOutput) ToWebhookPtrOutput() WebhookPtrOutput

func (WebhookPtrOutput) ToWebhookPtrOutputWithContext

func (o WebhookPtrOutput) ToWebhookPtrOutputWithContext(ctx context.Context) WebhookPtrOutput

type WebhookState

type WebhookState struct {
	// The CodePipeline webhook's ARN.
	Arn pulumi.StringPtrInput
	// The type of authentication  to use. One of `IP`, `GITHUB_HMAC`, or `UNAUTHENTICATED`.
	Authentication pulumi.StringPtrInput
	// An `auth` block. Required for `IP` and `GITHUB_HMAC`. Auth blocks are documented below.
	AuthenticationConfiguration WebhookAuthenticationConfigurationPtrInput
	// One or more `filter` blocks. Filter blocks are documented below.
	Filters WebhookFilterArrayInput
	// The name of the webhook.
	Name pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider .
	TagsAll pulumi.StringMapInput
	// The name of the action in a pipeline you want to connect to the webhook. The action must be from the source (first) stage of the pipeline.
	TargetAction pulumi.StringPtrInput
	// The name of the pipeline.
	TargetPipeline pulumi.StringPtrInput
	// The CodePipeline webhook's URL. POST events to this endpoint to trigger the target.
	Url pulumi.StringPtrInput
}

func (WebhookState) ElementType

func (WebhookState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL