Branch Protection V3Args
data class BranchProtectionV3Args(val branch: Output<String>? = null, val enforceAdmins: Output<Boolean>? = null, val repository: Output<String>? = null, val requireConversationResolution: Output<Boolean>? = null, val requireSignedCommits: Output<Boolean>? = null, val requiredPullRequestReviews: Output<BranchProtectionV3RequiredPullRequestReviewsArgs>? = null, val requiredStatusChecks: Output<BranchProtectionV3RequiredStatusChecksArgs>? = null, val restrictions: Output<BranchProtectionV3RestrictionsArgs>? = null) : ConvertibleToJava<BranchProtectionV3Args>
Protects a GitHub branch. The github.BranchProtection
resource has moved to the GraphQL API, while this resource will continue to leverage the REST API. This resource allows you to configure branch protection for repositories in your organization. When applied, the branch will be protected from forced pushes and deletion. Additional constraints, such as required status checks or restrictions on users, teams, and apps, can also be configured.
Example Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.github.BranchProtectionV3;
import com.pulumi.github.BranchProtectionV3Args;
import com.pulumi.github.inputs.BranchProtectionV3RestrictionsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new BranchProtectionV3("example", BranchProtectionV3Args.builder()
.repository(github_repository.example().name())
.branch("main")
.restrictions(BranchProtectionV3RestrictionsArgs.builder()
.users("foo-user")
.build())
.build());
}
}
Content copied to clipboard
Import
GitHub Branch Protection can be imported using an ID made up of repository:branch
, e.g.
$ pulumi import github:index/branchProtectionV3:BranchProtectionV3 terraform terraform:main
Content copied to clipboard
Constructors
Link copied to clipboard
fun BranchProtectionV3Args(branch: Output<String>? = null, enforceAdmins: Output<Boolean>? = null, repository: Output<String>? = null, requireConversationResolution: Output<Boolean>? = null, requireSignedCommits: Output<Boolean>? = null, requiredPullRequestReviews: Output<BranchProtectionV3RequiredPullRequestReviewsArgs>? = null, requiredStatusChecks: Output<BranchProtectionV3RequiredStatusChecksArgs>? = null, restrictions: Output<BranchProtectionV3RestrictionsArgs>? = null)