1. Packages
  2. GitLab
  3. API Docs
  4. ProjectPushRules
GitLab v8.1.0 published on Friday, Jun 21, 2024 by Pulumi

gitlab.ProjectPushRules

Explore with Pulumi AI

gitlab logo
GitLab v8.1.0 published on Friday, Jun 21, 2024 by Pulumi

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as gitlab from "@pulumi/gitlab";
    
    const sample = new gitlab.ProjectPushRules("sample", {
        project: "42",
        authorEmailRegex: "@gitlab.com$",
        branchNameRegex: "(feat|fix)\\/*",
        commitCommitterCheck: true,
        commitCommitterNameCheck: true,
        commitMessageNegativeRegex: "ssh\\:\\/\\/",
        commitMessageRegex: "(feat|fix):.*",
        denyDeleteTag: false,
        fileNameRegex: "(jar|exe)$",
        maxFileSize: 4,
        memberCheck: true,
        preventSecrets: true,
        rejectUnsignedCommits: false,
    });
    
    import pulumi
    import pulumi_gitlab as gitlab
    
    sample = gitlab.ProjectPushRules("sample",
        project="42",
        author_email_regex="@gitlab.com$",
        branch_name_regex="(feat|fix)\\/*",
        commit_committer_check=True,
        commit_committer_name_check=True,
        commit_message_negative_regex="ssh\\:\\/\\/",
        commit_message_regex="(feat|fix):.*",
        deny_delete_tag=False,
        file_name_regex="(jar|exe)$",
        max_file_size=4,
        member_check=True,
        prevent_secrets=True,
        reject_unsigned_commits=False)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gitlab/sdk/v8/go/gitlab"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := gitlab.NewProjectPushRules(ctx, "sample", &gitlab.ProjectPushRulesArgs{
    			Project:                    pulumi.String("42"),
    			AuthorEmailRegex:           pulumi.String("@gitlab.com$"),
    			BranchNameRegex:            pulumi.String("(feat|fix)\\/*"),
    			CommitCommitterCheck:       pulumi.Bool(true),
    			CommitCommitterNameCheck:   pulumi.Bool(true),
    			CommitMessageNegativeRegex: pulumi.String("ssh\\:\\/\\/"),
    			CommitMessageRegex:         pulumi.String("(feat|fix):.*"),
    			DenyDeleteTag:              pulumi.Bool(false),
    			FileNameRegex:              pulumi.String("(jar|exe)$"),
    			MaxFileSize:                pulumi.Int(4),
    			MemberCheck:                pulumi.Bool(true),
    			PreventSecrets:             pulumi.Bool(true),
    			RejectUnsignedCommits:      pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using GitLab = Pulumi.GitLab;
    
    return await Deployment.RunAsync(() => 
    {
        var sample = new GitLab.ProjectPushRules("sample", new()
        {
            Project = "42",
            AuthorEmailRegex = "@gitlab.com$",
            BranchNameRegex = "(feat|fix)\\/*",
            CommitCommitterCheck = true,
            CommitCommitterNameCheck = true,
            CommitMessageNegativeRegex = "ssh\\:\\/\\/",
            CommitMessageRegex = "(feat|fix):.*",
            DenyDeleteTag = false,
            FileNameRegex = "(jar|exe)$",
            MaxFileSize = 4,
            MemberCheck = true,
            PreventSecrets = true,
            RejectUnsignedCommits = false,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gitlab.ProjectPushRules;
    import com.pulumi.gitlab.ProjectPushRulesArgs;
    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 sample = new ProjectPushRules("sample", ProjectPushRulesArgs.builder()
                .project(42)
                .authorEmailRegex("@gitlab.com$")
                .branchNameRegex("(feat|fix)\\/*")
                .commitCommitterCheck(true)
                .commitCommitterNameCheck(true)
                .commitMessageNegativeRegex("ssh\\:\\/\\/")
                .commitMessageRegex("(feat|fix):.*")
                .denyDeleteTag(false)
                .fileNameRegex("(jar|exe)$")
                .maxFileSize(4)
                .memberCheck(true)
                .preventSecrets(true)
                .rejectUnsignedCommits(false)
                .build());
    
        }
    }
    
    resources:
      sample:
        type: gitlab:ProjectPushRules
        properties:
          project: 42
          authorEmailRegex: '@gitlab.com$'
          branchNameRegex: (feat|fix)\/*
          commitCommitterCheck: true
          commitCommitterNameCheck: true
          commitMessageNegativeRegex: ssh\:\/\/
          commitMessageRegex: (feat|fix):.*
          denyDeleteTag: false
          fileNameRegex: (jar|exe)$
          maxFileSize: 4
          memberCheck: true
          preventSecrets: true
          rejectUnsignedCommits: false
    

    Create ProjectPushRules Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ProjectPushRules(name: string, args: ProjectPushRulesArgs, opts?: CustomResourceOptions);
    @overload
    def ProjectPushRules(resource_name: str,
                         args: ProjectPushRulesInitArgs,
                         opts: Optional[ResourceOptions] = None)
    
    @overload
    def ProjectPushRules(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         project: Optional[str] = None,
                         deny_delete_tag: Optional[bool] = None,
                         commit_committer_check: Optional[bool] = None,
                         commit_committer_name_check: Optional[bool] = None,
                         commit_message_negative_regex: Optional[str] = None,
                         commit_message_regex: Optional[str] = None,
                         author_email_regex: Optional[str] = None,
                         file_name_regex: Optional[str] = None,
                         max_file_size: Optional[int] = None,
                         member_check: Optional[bool] = None,
                         prevent_secrets: Optional[bool] = None,
                         branch_name_regex: Optional[str] = None,
                         reject_unsigned_commits: Optional[bool] = None)
    func NewProjectPushRules(ctx *Context, name string, args ProjectPushRulesArgs, opts ...ResourceOption) (*ProjectPushRules, error)
    public ProjectPushRules(string name, ProjectPushRulesArgs args, CustomResourceOptions? opts = null)
    public ProjectPushRules(String name, ProjectPushRulesArgs args)
    public ProjectPushRules(String name, ProjectPushRulesArgs args, CustomResourceOptions options)
    
    type: gitlab:ProjectPushRules
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ProjectPushRulesArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ProjectPushRulesInitArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ProjectPushRulesArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ProjectPushRulesArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ProjectPushRulesArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var projectPushRulesResource = new GitLab.ProjectPushRules("projectPushRulesResource", new()
    {
        Project = "string",
        DenyDeleteTag = false,
        CommitCommitterCheck = false,
        CommitCommitterNameCheck = false,
        CommitMessageNegativeRegex = "string",
        CommitMessageRegex = "string",
        AuthorEmailRegex = "string",
        FileNameRegex = "string",
        MaxFileSize = 0,
        MemberCheck = false,
        PreventSecrets = false,
        BranchNameRegex = "string",
        RejectUnsignedCommits = false,
    });
    
    example, err := gitlab.NewProjectPushRules(ctx, "projectPushRulesResource", &gitlab.ProjectPushRulesArgs{
    	Project:                    pulumi.String("string"),
    	DenyDeleteTag:              pulumi.Bool(false),
    	CommitCommitterCheck:       pulumi.Bool(false),
    	CommitCommitterNameCheck:   pulumi.Bool(false),
    	CommitMessageNegativeRegex: pulumi.String("string"),
    	CommitMessageRegex:         pulumi.String("string"),
    	AuthorEmailRegex:           pulumi.String("string"),
    	FileNameRegex:              pulumi.String("string"),
    	MaxFileSize:                pulumi.Int(0),
    	MemberCheck:                pulumi.Bool(false),
    	PreventSecrets:             pulumi.Bool(false),
    	BranchNameRegex:            pulumi.String("string"),
    	RejectUnsignedCommits:      pulumi.Bool(false),
    })
    
    var projectPushRulesResource = new ProjectPushRules("projectPushRulesResource", ProjectPushRulesArgs.builder()
        .project("string")
        .denyDeleteTag(false)
        .commitCommitterCheck(false)
        .commitCommitterNameCheck(false)
        .commitMessageNegativeRegex("string")
        .commitMessageRegex("string")
        .authorEmailRegex("string")
        .fileNameRegex("string")
        .maxFileSize(0)
        .memberCheck(false)
        .preventSecrets(false)
        .branchNameRegex("string")
        .rejectUnsignedCommits(false)
        .build());
    
    project_push_rules_resource = gitlab.ProjectPushRules("projectPushRulesResource",
        project="string",
        deny_delete_tag=False,
        commit_committer_check=False,
        commit_committer_name_check=False,
        commit_message_negative_regex="string",
        commit_message_regex="string",
        author_email_regex="string",
        file_name_regex="string",
        max_file_size=0,
        member_check=False,
        prevent_secrets=False,
        branch_name_regex="string",
        reject_unsigned_commits=False)
    
    const projectPushRulesResource = new gitlab.ProjectPushRules("projectPushRulesResource", {
        project: "string",
        denyDeleteTag: false,
        commitCommitterCheck: false,
        commitCommitterNameCheck: false,
        commitMessageNegativeRegex: "string",
        commitMessageRegex: "string",
        authorEmailRegex: "string",
        fileNameRegex: "string",
        maxFileSize: 0,
        memberCheck: false,
        preventSecrets: false,
        branchNameRegex: "string",
        rejectUnsignedCommits: false,
    });
    
    type: gitlab:ProjectPushRules
    properties:
        authorEmailRegex: string
        branchNameRegex: string
        commitCommitterCheck: false
        commitCommitterNameCheck: false
        commitMessageNegativeRegex: string
        commitMessageRegex: string
        denyDeleteTag: false
        fileNameRegex: string
        maxFileSize: 0
        memberCheck: false
        preventSecrets: false
        project: string
        rejectUnsignedCommits: false
    

    ProjectPushRules Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The ProjectPushRules resource accepts the following input properties:

    Project string
    The ID or URL-encoded path of the project.
    AuthorEmailRegex string
    All commit author emails must match this regex, e.g. @my-company.com$.
    BranchNameRegex string
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    CommitCommitterCheck bool
    Users can only push commits to this repository that were committed with one of their own verified emails.
    CommitCommitterNameCheck bool
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    CommitMessageNegativeRegex string
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    CommitMessageRegex string
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    DenyDeleteTag bool
    Deny deleting a tag.
    FileNameRegex string
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    MaxFileSize int
    Maximum file size (MB).
    MemberCheck bool
    Restrict commits by author (email) to existing GitLab users.
    PreventSecrets bool
    GitLab will reject any files that are likely to contain secrets.
    RejectUnsignedCommits bool
    Reject commit when it’s not signed.
    Project string
    The ID or URL-encoded path of the project.
    AuthorEmailRegex string
    All commit author emails must match this regex, e.g. @my-company.com$.
    BranchNameRegex string
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    CommitCommitterCheck bool
    Users can only push commits to this repository that were committed with one of their own verified emails.
    CommitCommitterNameCheck bool
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    CommitMessageNegativeRegex string
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    CommitMessageRegex string
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    DenyDeleteTag bool
    Deny deleting a tag.
    FileNameRegex string
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    MaxFileSize int
    Maximum file size (MB).
    MemberCheck bool
    Restrict commits by author (email) to existing GitLab users.
    PreventSecrets bool
    GitLab will reject any files that are likely to contain secrets.
    RejectUnsignedCommits bool
    Reject commit when it’s not signed.
    project String
    The ID or URL-encoded path of the project.
    authorEmailRegex String
    All commit author emails must match this regex, e.g. @my-company.com$.
    branchNameRegex String
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    commitCommitterCheck Boolean
    Users can only push commits to this repository that were committed with one of their own verified emails.
    commitCommitterNameCheck Boolean
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    commitMessageNegativeRegex String
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    commitMessageRegex String
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    denyDeleteTag Boolean
    Deny deleting a tag.
    fileNameRegex String
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    maxFileSize Integer
    Maximum file size (MB).
    memberCheck Boolean
    Restrict commits by author (email) to existing GitLab users.
    preventSecrets Boolean
    GitLab will reject any files that are likely to contain secrets.
    rejectUnsignedCommits Boolean
    Reject commit when it’s not signed.
    project string
    The ID or URL-encoded path of the project.
    authorEmailRegex string
    All commit author emails must match this regex, e.g. @my-company.com$.
    branchNameRegex string
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    commitCommitterCheck boolean
    Users can only push commits to this repository that were committed with one of their own verified emails.
    commitCommitterNameCheck boolean
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    commitMessageNegativeRegex string
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    commitMessageRegex string
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    denyDeleteTag boolean
    Deny deleting a tag.
    fileNameRegex string
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    maxFileSize number
    Maximum file size (MB).
    memberCheck boolean
    Restrict commits by author (email) to existing GitLab users.
    preventSecrets boolean
    GitLab will reject any files that are likely to contain secrets.
    rejectUnsignedCommits boolean
    Reject commit when it’s not signed.
    project str
    The ID or URL-encoded path of the project.
    author_email_regex str
    All commit author emails must match this regex, e.g. @my-company.com$.
    branch_name_regex str
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    commit_committer_check bool
    Users can only push commits to this repository that were committed with one of their own verified emails.
    commit_committer_name_check bool
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    commit_message_negative_regex str
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    commit_message_regex str
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    deny_delete_tag bool
    Deny deleting a tag.
    file_name_regex str
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    max_file_size int
    Maximum file size (MB).
    member_check bool
    Restrict commits by author (email) to existing GitLab users.
    prevent_secrets bool
    GitLab will reject any files that are likely to contain secrets.
    reject_unsigned_commits bool
    Reject commit when it’s not signed.
    project String
    The ID or URL-encoded path of the project.
    authorEmailRegex String
    All commit author emails must match this regex, e.g. @my-company.com$.
    branchNameRegex String
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    commitCommitterCheck Boolean
    Users can only push commits to this repository that were committed with one of their own verified emails.
    commitCommitterNameCheck Boolean
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    commitMessageNegativeRegex String
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    commitMessageRegex String
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    denyDeleteTag Boolean
    Deny deleting a tag.
    fileNameRegex String
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    maxFileSize Number
    Maximum file size (MB).
    memberCheck Boolean
    Restrict commits by author (email) to existing GitLab users.
    preventSecrets Boolean
    GitLab will reject any files that are likely to contain secrets.
    rejectUnsignedCommits Boolean
    Reject commit when it’s not signed.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ProjectPushRules resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing ProjectPushRules Resource

    Get an existing ProjectPushRules resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ProjectPushRulesState, opts?: CustomResourceOptions): ProjectPushRules
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            author_email_regex: Optional[str] = None,
            branch_name_regex: Optional[str] = None,
            commit_committer_check: Optional[bool] = None,
            commit_committer_name_check: Optional[bool] = None,
            commit_message_negative_regex: Optional[str] = None,
            commit_message_regex: Optional[str] = None,
            deny_delete_tag: Optional[bool] = None,
            file_name_regex: Optional[str] = None,
            max_file_size: Optional[int] = None,
            member_check: Optional[bool] = None,
            prevent_secrets: Optional[bool] = None,
            project: Optional[str] = None,
            reject_unsigned_commits: Optional[bool] = None) -> ProjectPushRules
    func GetProjectPushRules(ctx *Context, name string, id IDInput, state *ProjectPushRulesState, opts ...ResourceOption) (*ProjectPushRules, error)
    public static ProjectPushRules Get(string name, Input<string> id, ProjectPushRulesState? state, CustomResourceOptions? opts = null)
    public static ProjectPushRules get(String name, Output<String> id, ProjectPushRulesState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AuthorEmailRegex string
    All commit author emails must match this regex, e.g. @my-company.com$.
    BranchNameRegex string
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    CommitCommitterCheck bool
    Users can only push commits to this repository that were committed with one of their own verified emails.
    CommitCommitterNameCheck bool
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    CommitMessageNegativeRegex string
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    CommitMessageRegex string
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    DenyDeleteTag bool
    Deny deleting a tag.
    FileNameRegex string
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    MaxFileSize int
    Maximum file size (MB).
    MemberCheck bool
    Restrict commits by author (email) to existing GitLab users.
    PreventSecrets bool
    GitLab will reject any files that are likely to contain secrets.
    Project string
    The ID or URL-encoded path of the project.
    RejectUnsignedCommits bool
    Reject commit when it’s not signed.
    AuthorEmailRegex string
    All commit author emails must match this regex, e.g. @my-company.com$.
    BranchNameRegex string
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    CommitCommitterCheck bool
    Users can only push commits to this repository that were committed with one of their own verified emails.
    CommitCommitterNameCheck bool
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    CommitMessageNegativeRegex string
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    CommitMessageRegex string
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    DenyDeleteTag bool
    Deny deleting a tag.
    FileNameRegex string
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    MaxFileSize int
    Maximum file size (MB).
    MemberCheck bool
    Restrict commits by author (email) to existing GitLab users.
    PreventSecrets bool
    GitLab will reject any files that are likely to contain secrets.
    Project string
    The ID or URL-encoded path of the project.
    RejectUnsignedCommits bool
    Reject commit when it’s not signed.
    authorEmailRegex String
    All commit author emails must match this regex, e.g. @my-company.com$.
    branchNameRegex String
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    commitCommitterCheck Boolean
    Users can only push commits to this repository that were committed with one of their own verified emails.
    commitCommitterNameCheck Boolean
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    commitMessageNegativeRegex String
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    commitMessageRegex String
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    denyDeleteTag Boolean
    Deny deleting a tag.
    fileNameRegex String
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    maxFileSize Integer
    Maximum file size (MB).
    memberCheck Boolean
    Restrict commits by author (email) to existing GitLab users.
    preventSecrets Boolean
    GitLab will reject any files that are likely to contain secrets.
    project String
    The ID or URL-encoded path of the project.
    rejectUnsignedCommits Boolean
    Reject commit when it’s not signed.
    authorEmailRegex string
    All commit author emails must match this regex, e.g. @my-company.com$.
    branchNameRegex string
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    commitCommitterCheck boolean
    Users can only push commits to this repository that were committed with one of their own verified emails.
    commitCommitterNameCheck boolean
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    commitMessageNegativeRegex string
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    commitMessageRegex string
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    denyDeleteTag boolean
    Deny deleting a tag.
    fileNameRegex string
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    maxFileSize number
    Maximum file size (MB).
    memberCheck boolean
    Restrict commits by author (email) to existing GitLab users.
    preventSecrets boolean
    GitLab will reject any files that are likely to contain secrets.
    project string
    The ID or URL-encoded path of the project.
    rejectUnsignedCommits boolean
    Reject commit when it’s not signed.
    author_email_regex str
    All commit author emails must match this regex, e.g. @my-company.com$.
    branch_name_regex str
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    commit_committer_check bool
    Users can only push commits to this repository that were committed with one of their own verified emails.
    commit_committer_name_check bool
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    commit_message_negative_regex str
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    commit_message_regex str
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    deny_delete_tag bool
    Deny deleting a tag.
    file_name_regex str
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    max_file_size int
    Maximum file size (MB).
    member_check bool
    Restrict commits by author (email) to existing GitLab users.
    prevent_secrets bool
    GitLab will reject any files that are likely to contain secrets.
    project str
    The ID or URL-encoded path of the project.
    reject_unsigned_commits bool
    Reject commit when it’s not signed.
    authorEmailRegex String
    All commit author emails must match this regex, e.g. @my-company.com$.
    branchNameRegex String
    All branch names must match this regex, e.g. (feature|hotfix)\/*.
    commitCommitterCheck Boolean
    Users can only push commits to this repository that were committed with one of their own verified emails.
    commitCommitterNameCheck Boolean
    Users can only push commits to this repository if the commit author name is consistent with their GitLab account name.
    commitMessageNegativeRegex String
    No commit message is allowed to match this regex, e.g. ssh\:\/\/.
    commitMessageRegex String
    All commit messages must match this regex, e.g. Fixed \d+\..*.
    denyDeleteTag Boolean
    Deny deleting a tag.
    fileNameRegex String
    All committed filenames must not match this regex, e.g. (jar|exe)$.
    maxFileSize Number
    Maximum file size (MB).
    memberCheck Boolean
    Restrict commits by author (email) to existing GitLab users.
    preventSecrets Boolean
    GitLab will reject any files that are likely to contain secrets.
    project String
    The ID or URL-encoded path of the project.
    rejectUnsignedCommits Boolean
    Reject commit when it’s not signed.

    Import

    Gitlab project push rules can be imported with a key composed of <project_id>, e.g.

    $ pulumi import gitlab:index/projectPushRules:ProjectPushRules sample "42"
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    GitLab pulumi/pulumi-gitlab
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the gitlab Terraform Provider.
    gitlab logo
    GitLab v8.1.0 published on Friday, Jun 21, 2024 by Pulumi