Skip to main content

Pipeline

Resource Pipeline in pulumi-buildkite.
17 min read

Resource Pipeline in pulumi-buildkite.

Pulumi type: buildkite:index/pipeline:Pipeline.

name is the Pulumi resource name. Nested object fields are documented under that object. They are not arguments of this resource.

Example#

Only required arguments are set. A string in angle brackets stands in for that argument. Any other value is an option or example written in the SDK description.

Arguments#

PropertyTypeRequiredDescription
allowRebuildsbooleannoWhether rebuilds are allowed for this pipeline.
archivedbooleannoWhether to archive this pipeline. Archived pipelines are hidden from most views and cannot run new builds.
branchConfigurationstringnoConfigure the pipeline to only build on this branch conditional.
cancelIntermediateBuildsbooleannoWhether to cancel builds when a new commit is pushed to a matching branch.
cancelIntermediateBuildsBranchFilterstringnoFilter the cancelIntermediateBuilds setting based on this branch condition.
cloneMirrorUrlstringnoThe optional repository URL agents use as a Git clone mirror. Requires the pipeline clone mirror feature to be enabled for the organization.
clusterIdstringnoAttach this pipeline to the given cluster GraphQL ID.
colorstringnoA color hex code to represent this pipeline.
defaultBranchstringnoDefault branch of the pipeline.
defaultTeamIdstringnoThe GraphQL ID of a team to initially assign to the pipeline. This is required by the Buildkite API when creating a new pipeline. The team assigned here will be given 'Manage Build and Read' access. Further team associations can be managed with the buildkite.PipelineTeam resource after the pipeline is created.
defaultTimeoutInMinutesnumbernoSet pipeline wide timeout for command steps.
descriptionstringnoDescription for the pipeline. Can include emoji 🙌.
emojistringnoAn emoji that represents this pipeline.
githubWebhooksEnabledbooleannoWhether GitHub webhook processing is enabled for the pipeline. Only applies to GitHub and GitHub Enterprise repositories and requires the organization to be enrolled in the newer webhook triggers. If omitted, the setting is left unchanged and is not read.
maximumTimeoutInMinutesnumbernoSet pipeline wide maximum timeout for command steps.
namestringnoName to give the pipeline.
pipelineTemplateIdstringnoThe GraphQL ID of the pipeline template applied to this pipeline.
providerSettingsPipelineProviderSettings (input)noControl settings depending on the VCS provider used in repository.
repositorystringyesURL to the repository this pipeline is configured for.
skipIntermediateBuildsbooleannoWhether to skip queued builds if a new commit is pushed to a matching branch.
skipIntermediateBuildsBranchFilterstringnoFilter the skipIntermediateBuilds setting based on this branch condition.
slugstringnoA custom identifier for the pipeline. If provided, this slug will be used as the pipeline's URL path instead of automatically converting the pipeline name. If not provided, the slug will be derived from the pipeline name.
stepsstringnoThe YAML steps to configure for the pipeline. Can also accept the steps attribute from the buildkite.getSignedPipelineSteps data source to enable a signed pipeline. Defaults to buildkite-agent pipeline upload.
tagsstring[]noTags to attribute to the pipeline. Useful for searching by in the UI.
visibilitystringnoThe visibility of the pipeline. Can be PUBLIC or PRIVATE. Only use PUBLIC visibility for pipelines without sensitive information. Defaults to PRIVATE.

Outputs#

Computed outputs are produced by the provider. They are not constructor arguments.

PropertyTypeComputedDescription
allowRebuildsbooleannoWhether rebuilds are allowed for this pipeline.
archivedbooleannoWhether to archive this pipeline. Archived pipelines are hidden from most views and cannot run new builds.
badgeUrlstringyesThe badge URL showing build state.
branchConfigurationstringnoConfigure the pipeline to only build on this branch conditional.
cancelIntermediateBuildsbooleannoWhether to cancel builds when a new commit is pushed to a matching branch.
cancelIntermediateBuildsBranchFilterstringnoFilter the cancelIntermediateBuilds setting based on this branch condition.
cloneMirrorUrlstringnoThe optional repository URL agents use as a Git clone mirror. Requires the pipeline clone mirror feature to be enabled for the organization.
clusterIdstringnoAttach this pipeline to the given cluster GraphQL ID.
clusterNamestringyesThe name of the cluster the pipeline is (optionally) attached to.
colorstringnoA color hex code to represent this pipeline.
defaultBranchstringnoDefault branch of the pipeline.
defaultTeamIdstringnoThe GraphQL ID of a team to initially assign to the pipeline. This is required by the Buildkite API when creating a new pipeline. The team assigned here will be given 'Manage Build and Read' access. Further team associations can be managed with the buildkite.PipelineTeam resource after the pipeline is created.
defaultTimeoutInMinutesnumbernoSet pipeline wide timeout for command steps.
descriptionstringnoDescription for the pipeline. Can include emoji 🙌.
emojistringnoAn emoji that represents this pipeline.
githubWebhooksEnabledbooleannoWhether GitHub webhook processing is enabled for the pipeline. Only applies to GitHub and GitHub Enterprise repositories and requires the organization to be enrolled in the newer webhook triggers. If omitted, the setting is left unchanged and is not read.
maximumTimeoutInMinutesnumbernoSet pipeline wide maximum timeout for command steps.
namestringnoName to give the pipeline.
pipelineTemplateIdstringnoThe GraphQL ID of the pipeline template applied to this pipeline.
providerSettingsPipelineProviderSettings (output)noControl settings depending on the VCS provider used in repository.
repositorystringnoURL to the repository this pipeline is configured for.
skipIntermediateBuildsbooleannoWhether to skip queued builds if a new commit is pushed to a matching branch.
skipIntermediateBuildsBranchFilterstringnoFilter the skipIntermediateBuilds setting based on this branch condition.
slugstringnoA custom identifier for the pipeline. If provided, this slug will be used as the pipeline's URL path instead of automatically converting the pipeline name. If not provided, the slug will be derived from the pipeline name.
stepsstringnoThe YAML steps to configure for the pipeline. Can also accept the steps attribute from the buildkite.getSignedPipelineSteps data source to enable a signed pipeline. Defaults to buildkite-agent pipeline upload.
tagsstring[]noTags to attribute to the pipeline. Useful for searching by in the UI.
uuidstringyesThe UUID of the pipeline.
visibilitystringnoThe visibility of the pipeline. Can be PUBLIC or PRIVATE. Only use PUBLIC visibility for pipelines without sensitive information. Defaults to PRIVATE.
webhookUrlstringyesThe webhook URL used to trigger builds from VCS providers.

PipelineProviderSettings (input)#

Input object PipelineProviderSettings. Fields below belong to this object, not to the parent.

PropertyTypeRequiredDescription
buildBranchesbooleannoWhether to create builds when branches are pushed.
buildCheckRunCompletedbooleannoWhether to create a build when a GitHub check run completes. Useful for chaining CI workflows by triggering a Buildkite pipeline after another CI system finishes.
buildCreateEventbooleannoWhether to create a build when a branch or tag is created on GitHub.
buildDeploymentStatusCreatedbooleannoWhether to create a build when a GitHub deployment status is created.
buildIssueCommentCreatedbooleannoWhether to create builds when an issue comment is created on a pull request.
buildIssuesbooleannoWhether authenticated GitHub issues webhook deliveries create builds. Supported for GitHub.com pipelines only. Defaults to false.
buildMergeGroupChecksRequestedbooleannoWhether to create merge queue builds for a merge queue enabled GitHub repository with required status checks
buildPullRequestBaseBranchChangedbooleannoWhether to create builds for pull requests when its base branch changes.
buildPullRequestConvertedToDraftbooleannoWhether to create a build when a pull request is converted to a draft.
buildPullRequestDequeuedbooleannoWhether to create builds when a pull request is removed from a merge queue. Requires buildPullRequests to be enabled.
buildPullRequestEditedbooleannoWhether to create a build when a pull request is edited (i.e. its title or description).
buildPullRequestForksbooleannoWhether to create builds for pull requests from third-party forks.
buildPullRequestLabelsChangedbooleannoWhether to create builds for pull requests when labels are added or removed.
buildPullRequestMergeCommitsbooleannoWhether to build the test merge commit (the merged result of a pull request with its base branch).
buildPullRequestReadyForReviewbooleannoWhether to create a build when a pull request changes to "Ready for review".
buildPullRequestReopenedbooleannoWhether to create builds when a pull request is reopened. Requires buildPullRequests to be enabled.
buildPullRequestReviewCommentCreatedbooleannoWhether to create builds when an inline review comment is created on a pull request. Requires buildPullRequests to be enabled.
buildPullRequestReviewDismissedbooleannoWhether to create a build when a pull request review is dismissed.
buildPullRequestReviewRequestedbooleannoWhether to create a build when a review is requested on a pull request.
buildPullRequestReviewSubmittedbooleannoWhether to create a build when a pull request review is submitted.
buildPullRequestsbooleannoWhether to create builds for commits that are part of a pull request.
buildReleaseCreatedbooleannoWhether to create a build when a GitHub release is created (including drafts).
buildReleasePublishedbooleannoWhether to create a build when a GitHub release is published.
buildReleaseReleasedbooleannoWhether to create a build when a GitHub release is published as final (excludes pre-releases and drafts).
buildTagsbooleannoWhether to create builds when tags are pushed.
cancelDeletedBranchBuildsbooleannoAutomatically cancel running builds for a branch if the branch is deleted.
cancelWhenMergeGroupDestroyedbooleannoWhether to cancel any running builds belonging to a removed merge group.
filterConditionstringnoThe condition to evaluate when deciding if a build should run. This is only valid when triggerMode is code. More details available in the documentation.
filterEnabledbooleannoWhether to filter builds to only run when the condition in filterCondition is true.
ignoreDefaultBranchPullRequestsbooleannoWhether to prevent caching pull requests with the source branch matching the default branch.
issueCommentCommandWordstringnoThe command word used to trigger builds from issue comments (e.g. "/bk"). Only comments starting with or containing this word will trigger builds. Defaults to "/bk".
issueCommentMatchModestringnoThe match mode for the issue comment command word. Valid values are "exact" and "contains". Defaults to "exact".
prefixPullRequestForkBranchNamesbooleannoPrefix branch names for third-party fork builds to ensure they don't trigger branch conditions. For example, the main branch from some-user will become some-user:main.
publishBlockedAsPendingbooleannoThe status to use for blocked builds. Pending can be used with required status checks to prevent merging pull requests with blocked builds.
publishCommitStatusbooleannoWhether to update the status of commits in Bitbucket, GitHub, or GitLab.
publishCommitStatusPerStepbooleannoWhether to create a separate status for each job in a build, allowing you to see the status of each job directly in Bitbucket or GitHub.
pullRequestBranchFilterConfigurationstringnoFilter pull requests builds by the branch filter.
pullRequestBranchFilterEnabledbooleannoFilter pull request builds.
reviewCommentCommandWordstringnoThe command word used to trigger builds from inline pull request review comments (e.g. "/bk"). Only review comments starting with or containing this word will trigger builds.
reviewCommentMatchModestringnoThe match mode for the review comment command word. Valid values are "exact" and "contains".
separatePullRequestStatusesbooleannoWhether to create a separate status for pull request builds, allowing you to require a passing pull request build in your required status checks in GitHub.
skipBuildsForExistingCommitsbooleannoWhether to skip creating a new build if an existing build for the commit and branch already exists. This option is only valid if the pipeline uses a GitHub repository.
skipPullRequestBuildsForExistingCommitsbooleannoWhether to skip creating a new build for a pull request if an existing build for the commit and branch already exists.
triggerModestringnoWhat type of event to trigger builds on. Must be one of: - code will create builds when code is pushed to GitHub. - deployment will create builds when a deployment is created in GitHub. - fork will create builds when the GitHub repository is forked. - none will not create any builds based on GitHub activity. > triggerMode is only valid if the pipeline uses a GitHub repository. > If not set, the default value is code and other provider settings defaults are applied.
useMergeGroupBaseCommitForGitDiffBasebooleannoWhen enabled, agents performing a git diff to determine steps to upload based on ifChangedcomparisons will use the base commit that points to the previous merge group rather than the base branch
useStepKeyAsCommitStatusbooleannoWhether to use step keys as commit status names for per-step commit statuses. Requires publishCommitStatus and publishCommitStatusPerStep to also be enabled. Defaults to false.

PipelineProviderSettings (output)#

Output object PipelineProviderSettings. Fields below belong to this object.

PropertyTypeAlways presentDescription
buildBranchesbooleanyesWhether to create builds when branches are pushed.
buildCheckRunCompletedbooleanyesWhether to create a build when a GitHub check run completes. Useful for chaining CI workflows by triggering a Buildkite pipeline after another CI system finishes.
buildCreateEventbooleanyesWhether to create a build when a branch or tag is created on GitHub.
buildDeploymentStatusCreatedbooleanyesWhether to create a build when a GitHub deployment status is created.
buildIssueCommentCreatedbooleanyesWhether to create builds when an issue comment is created on a pull request.
buildIssuesbooleanyesWhether authenticated GitHub issues webhook deliveries create builds. Supported for GitHub.com pipelines only. Defaults to false.
buildMergeGroupChecksRequestedbooleanyesWhether to create merge queue builds for a merge queue enabled GitHub repository with required status checks
buildPullRequestBaseBranchChangedbooleanyesWhether to create builds for pull requests when its base branch changes.
buildPullRequestConvertedToDraftbooleanyesWhether to create a build when a pull request is converted to a draft.
buildPullRequestDequeuedbooleanyesWhether to create builds when a pull request is removed from a merge queue. Requires buildPullRequests to be enabled.
buildPullRequestEditedbooleanyesWhether to create a build when a pull request is edited (i.e. its title or description).
buildPullRequestForksbooleanyesWhether to create builds for pull requests from third-party forks.
buildPullRequestLabelsChangedbooleanyesWhether to create builds for pull requests when labels are added or removed.
buildPullRequestMergeCommitsbooleanyesWhether to build the test merge commit (the merged result of a pull request with its base branch).
buildPullRequestReadyForReviewbooleanyesWhether to create a build when a pull request changes to "Ready for review".
buildPullRequestReopenedbooleanyesWhether to create builds when a pull request is reopened. Requires buildPullRequests to be enabled.
buildPullRequestReviewCommentCreatedbooleanyesWhether to create builds when an inline review comment is created on a pull request. Requires buildPullRequests to be enabled.
buildPullRequestReviewDismissedbooleanyesWhether to create a build when a pull request review is dismissed.
buildPullRequestReviewRequestedbooleanyesWhether to create a build when a review is requested on a pull request.
buildPullRequestReviewSubmittedbooleanyesWhether to create a build when a pull request review is submitted.
buildPullRequestsbooleanyesWhether to create builds for commits that are part of a pull request.
buildReleaseCreatedbooleanyesWhether to create a build when a GitHub release is created (including drafts).
buildReleasePublishedbooleanyesWhether to create a build when a GitHub release is published.
buildReleaseReleasedbooleanyesWhether to create a build when a GitHub release is published as final (excludes pre-releases and drafts).
buildTagsbooleanyesWhether to create builds when tags are pushed.
cancelDeletedBranchBuildsbooleanyesAutomatically cancel running builds for a branch if the branch is deleted.
cancelWhenMergeGroupDestroyedbooleanyesWhether to cancel any running builds belonging to a removed merge group.
filterConditionstringyesThe condition to evaluate when deciding if a build should run. This is only valid when triggerMode is code. More details available in the documentation.
filterEnabledbooleanyesWhether to filter builds to only run when the condition in filterCondition is true.
ignoreDefaultBranchPullRequestsbooleanyesWhether to prevent caching pull requests with the source branch matching the default branch.
issueCommentCommandWordstringyesThe command word used to trigger builds from issue comments (e.g. "/bk"). Only comments starting with or containing this word will trigger builds. Defaults to "/bk".
issueCommentMatchModestringyesThe match mode for the issue comment command word. Valid values are "exact" and "contains". Defaults to "exact".
prefixPullRequestForkBranchNamesbooleanyesPrefix branch names for third-party fork builds to ensure they don't trigger branch conditions. For example, the main branch from some-user will become some-user:main.
publishBlockedAsPendingbooleanyesThe status to use for blocked builds. Pending can be used with required status checks to prevent merging pull requests with blocked builds.
publishCommitStatusbooleanyesWhether to update the status of commits in Bitbucket, GitHub, or GitLab.
publishCommitStatusPerStepbooleanyesWhether to create a separate status for each job in a build, allowing you to see the status of each job directly in Bitbucket or GitHub.
pullRequestBranchFilterConfigurationstringyesFilter pull requests builds by the branch filter.
pullRequestBranchFilterEnabledbooleanyesFilter pull request builds.
reviewCommentCommandWordstringyesThe command word used to trigger builds from inline pull request review comments (e.g. "/bk"). Only review comments starting with or containing this word will trigger builds.
reviewCommentMatchModestringyesThe match mode for the review comment command word. Valid values are "exact" and "contains".
separatePullRequestStatusesbooleanyesWhether to create a separate status for pull request builds, allowing you to require a passing pull request build in your required status checks in GitHub.
skipBuildsForExistingCommitsbooleanyesWhether to skip creating a new build if an existing build for the commit and branch already exists. This option is only valid if the pipeline uses a GitHub repository.
skipPullRequestBuildsForExistingCommitsbooleanyesWhether to skip creating a new build for a pull request if an existing build for the commit and branch already exists.
triggerModestringyesWhat type of event to trigger builds on. Must be one of: - code will create builds when code is pushed to GitHub. - deployment will create builds when a deployment is created in GitHub. - fork will create builds when the GitHub repository is forked. - none will not create any builds based on GitHub activity. > triggerMode is only valid if the pipeline uses a GitHub repository. > If not set, the default value is code and other provider settings defaults are applied.
useMergeGroupBaseCommitForGitDiffBasebooleanyesWhen enabled, agents performing a git diff to determine steps to upload based on ifChangedcomparisons will use the base commit that points to the previous merge group rather than the base branch
useStepKeyAsCommitStatusbooleanyesWhether to use step keys as commit status names for per-step commit statuses. Requires publishCommitStatus and publishCommitStatusPerStep to also be enabled. Defaults to false.