com.pulumi.aws.codepipeline.kotlin.WebhookArgs.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-aws-kotlin Show documentation
Show all versions of pulumi-aws-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.aws.codepipeline.kotlin
import com.pulumi.aws.codepipeline.WebhookArgs.builder
import com.pulumi.aws.codepipeline.kotlin.inputs.WebhookAuthenticationConfigurationArgs
import com.pulumi.aws.codepipeline.kotlin.inputs.WebhookAuthenticationConfigurationArgsBuilder
import com.pulumi.aws.codepipeline.kotlin.inputs.WebhookFilterArgs
import com.pulumi.aws.codepipeline.kotlin.inputs.WebhookFilterArgsBuilder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Pair
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.Map
import kotlin.jvm.JvmName
/**
* Provides a CodePipeline Webhook.
* ## Example Usage
*
* ```yaml
* resources:
* bar:
* type: aws:codepipeline:Pipeline
* properties:
* name: tf-test-pipeline
* roleArn: ${barAwsIamRole.arn}
* artifactStores:
* - location: ${barAwsS3Bucket.bucket}
* type: S3
* encryptionKey:
* id: ${s3kmskey.arn}
* type: KMS
* stages:
* - name: Source
* actions:
* - name: Source
* category: Source
* owner: ThirdParty
* provider: GitHub
* version: '1'
* outputArtifacts:
* - test
* configuration:
* Owner: my-organization
* Repo: test
* Branch: master
* - name: Build
* actions:
* - name: Build
* category: Build
* owner: AWS
* provider: CodeBuild
* inputArtifacts:
* - test
* version: '1'
* configuration:
* ProjectName: test
* barWebhook:
* type: aws:codepipeline:Webhook
* name: bar
* properties:
* name: test-webhook-github-bar
* authentication: GITHUB_HMAC
* targetAction: Source
* targetPipeline: ${bar.name}
* authenticationConfiguration:
* secretToken: ${webhookSecret}
* filters:
* - jsonPath: $.ref
* matchEquals: refs/heads/{Branch}
* # Wire the CodePipeline webhook into a GitHub repository.
* barRepositoryWebhook:
* type: github:RepositoryWebhook
* name: bar
* properties:
* repository: ${repo.name}
* name: web
* configuration:
* url: ${barWebhook.url}
* contentType: json
* insecureSsl: true
* secret: ${webhookSecret}
* events:
* - push
* variables:
* webhookSecret: super-secret
* ```
*
* ## Import
* Using `pulumi import`, import CodePipeline Webhooks using their ARN. For example:
* ```sh
* $ pulumi import aws:codepipeline/webhook:Webhook example arn:aws:codepipeline:us-west-2:123456789012:webhook:example
* ```
* @property authentication The type of authentication to use. One of `IP`, `GITHUB_HMAC`, or `UNAUTHENTICATED`.
* @property authenticationConfiguration An `auth` block. Required for `IP` and `GITHUB_HMAC`. Auth blocks are documented below.
* @property filters One or more `filter` blocks. Filter blocks are documented below.
* @property name The name of the webhook.
* @property tags A map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
* @property targetAction 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.
* @property targetPipeline The name of the pipeline.
*/
public data class WebhookArgs(
public val authentication: Output? = null,
public val authenticationConfiguration: Output? = null,
public val filters: Output>? = null,
public val name: Output? = null,
public val tags: Output
© 2015 - 2024 Weber Informatics LLC | Privacy Policy