1. Packages
  2. Oracle Cloud Infrastructure
  3. API Docs
  4. DevOps
  5. ProjectRepositorySetting
Oracle Cloud Infrastructure v2.17.0 published on Friday, Nov 15, 2024 by Pulumi

oci.DevOps.ProjectRepositorySetting

Explore with Pulumi AI

oci logo
Oracle Cloud Infrastructure v2.17.0 published on Friday, Nov 15, 2024 by Pulumi

    This resource provides the Project Repository Setting resource in Oracle Cloud Infrastructure Devops service.

    Updates the repository settings for a project.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as oci from "@pulumi/oci";
    
    const testProjectRepositorySetting = new oci.devops.ProjectRepositorySetting("test_project_repository_setting", {
        projectId: testProject.id,
        approvalRules: {
            items: [{
                minApprovalsCount: projectRepositorySettingApprovalRulesItemsMinApprovalsCount,
                name: projectRepositorySettingApprovalRulesItemsName,
                destinationBranch: projectRepositorySettingApprovalRulesItemsDestinationBranch,
                reviewers: [{
                    principalId: testPrincipal.id,
                }],
            }],
        },
        mergeSettings: {
            allowedMergeStrategies: projectRepositorySettingMergeSettingsAllowedMergeStrategies,
            defaultMergeStrategy: projectRepositorySettingMergeSettingsDefaultMergeStrategy,
        },
    });
    
    import pulumi
    import pulumi_oci as oci
    
    test_project_repository_setting = oci.dev_ops.ProjectRepositorySetting("test_project_repository_setting",
        project_id=test_project["id"],
        approval_rules={
            "items": [{
                "min_approvals_count": project_repository_setting_approval_rules_items_min_approvals_count,
                "name": project_repository_setting_approval_rules_items_name,
                "destination_branch": project_repository_setting_approval_rules_items_destination_branch,
                "reviewers": [{
                    "principal_id": test_principal["id"],
                }],
            }],
        },
        merge_settings={
            "allowed_merge_strategies": project_repository_setting_merge_settings_allowed_merge_strategies,
            "default_merge_strategy": project_repository_setting_merge_settings_default_merge_strategy,
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-oci/sdk/v2/go/oci/DevOps"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := DevOps.NewProjectRepositorySetting(ctx, "test_project_repository_setting", &DevOps.ProjectRepositorySettingArgs{
    			ProjectId: pulumi.Any(testProject.Id),
    			ApprovalRules: &devops.ProjectRepositorySettingApprovalRulesArgs{
    				Items: devops.ProjectRepositorySettingApprovalRulesItemArray{
    					&devops.ProjectRepositorySettingApprovalRulesItemArgs{
    						MinApprovalsCount: pulumi.Any(projectRepositorySettingApprovalRulesItemsMinApprovalsCount),
    						Name:              pulumi.Any(projectRepositorySettingApprovalRulesItemsName),
    						DestinationBranch: pulumi.Any(projectRepositorySettingApprovalRulesItemsDestinationBranch),
    						Reviewers: devops.ProjectRepositorySettingApprovalRulesItemReviewerArray{
    							&devops.ProjectRepositorySettingApprovalRulesItemReviewerArgs{
    								PrincipalId: pulumi.Any(testPrincipal.Id),
    							},
    						},
    					},
    				},
    			},
    			MergeSettings: &devops.ProjectRepositorySettingMergeSettingsArgs{
    				AllowedMergeStrategies: pulumi.Any(projectRepositorySettingMergeSettingsAllowedMergeStrategies),
    				DefaultMergeStrategy:   pulumi.Any(projectRepositorySettingMergeSettingsDefaultMergeStrategy),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Oci = Pulumi.Oci;
    
    return await Deployment.RunAsync(() => 
    {
        var testProjectRepositorySetting = new Oci.DevOps.ProjectRepositorySetting("test_project_repository_setting", new()
        {
            ProjectId = testProject.Id,
            ApprovalRules = new Oci.DevOps.Inputs.ProjectRepositorySettingApprovalRulesArgs
            {
                Items = new[]
                {
                    new Oci.DevOps.Inputs.ProjectRepositorySettingApprovalRulesItemArgs
                    {
                        MinApprovalsCount = projectRepositorySettingApprovalRulesItemsMinApprovalsCount,
                        Name = projectRepositorySettingApprovalRulesItemsName,
                        DestinationBranch = projectRepositorySettingApprovalRulesItemsDestinationBranch,
                        Reviewers = new[]
                        {
                            new Oci.DevOps.Inputs.ProjectRepositorySettingApprovalRulesItemReviewerArgs
                            {
                                PrincipalId = testPrincipal.Id,
                            },
                        },
                    },
                },
            },
            MergeSettings = new Oci.DevOps.Inputs.ProjectRepositorySettingMergeSettingsArgs
            {
                AllowedMergeStrategies = projectRepositorySettingMergeSettingsAllowedMergeStrategies,
                DefaultMergeStrategy = projectRepositorySettingMergeSettingsDefaultMergeStrategy,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.oci.DevOps.ProjectRepositorySetting;
    import com.pulumi.oci.DevOps.ProjectRepositorySettingArgs;
    import com.pulumi.oci.DevOps.inputs.ProjectRepositorySettingApprovalRulesArgs;
    import com.pulumi.oci.DevOps.inputs.ProjectRepositorySettingMergeSettingsArgs;
    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 testProjectRepositorySetting = new ProjectRepositorySetting("testProjectRepositorySetting", ProjectRepositorySettingArgs.builder()
                .projectId(testProject.id())
                .approvalRules(ProjectRepositorySettingApprovalRulesArgs.builder()
                    .items(ProjectRepositorySettingApprovalRulesItemArgs.builder()
                        .minApprovalsCount(projectRepositorySettingApprovalRulesItemsMinApprovalsCount)
                        .name(projectRepositorySettingApprovalRulesItemsName)
                        .destinationBranch(projectRepositorySettingApprovalRulesItemsDestinationBranch)
                        .reviewers(ProjectRepositorySettingApprovalRulesItemReviewerArgs.builder()
                            .principalId(testPrincipal.id())
                            .build())
                        .build())
                    .build())
                .mergeSettings(ProjectRepositorySettingMergeSettingsArgs.builder()
                    .allowedMergeStrategies(projectRepositorySettingMergeSettingsAllowedMergeStrategies)
                    .defaultMergeStrategy(projectRepositorySettingMergeSettingsDefaultMergeStrategy)
                    .build())
                .build());
    
        }
    }
    
    resources:
      testProjectRepositorySetting:
        type: oci:DevOps:ProjectRepositorySetting
        name: test_project_repository_setting
        properties:
          projectId: ${testProject.id}
          approvalRules:
            items:
              - minApprovalsCount: ${projectRepositorySettingApprovalRulesItemsMinApprovalsCount}
                name: ${projectRepositorySettingApprovalRulesItemsName}
                destinationBranch: ${projectRepositorySettingApprovalRulesItemsDestinationBranch}
                reviewers:
                  - principalId: ${testPrincipal.id}
          mergeSettings:
            allowedMergeStrategies: ${projectRepositorySettingMergeSettingsAllowedMergeStrategies}
            defaultMergeStrategy: ${projectRepositorySettingMergeSettingsDefaultMergeStrategy}
    

    Create ProjectRepositorySetting Resource

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

    Constructor syntax

    new ProjectRepositorySetting(name: string, args: ProjectRepositorySettingArgs, opts?: CustomResourceOptions);
    @overload
    def ProjectRepositorySetting(resource_name: str,
                                 args: ProjectRepositorySettingArgs,
                                 opts: Optional[ResourceOptions] = None)
    
    @overload
    def ProjectRepositorySetting(resource_name: str,
                                 opts: Optional[ResourceOptions] = None,
                                 project_id: Optional[str] = None,
                                 approval_rules: Optional[_devops.ProjectRepositorySettingApprovalRulesArgs] = None,
                                 merge_settings: Optional[_devops.ProjectRepositorySettingMergeSettingsArgs] = None)
    func NewProjectRepositorySetting(ctx *Context, name string, args ProjectRepositorySettingArgs, opts ...ResourceOption) (*ProjectRepositorySetting, error)
    public ProjectRepositorySetting(string name, ProjectRepositorySettingArgs args, CustomResourceOptions? opts = null)
    public ProjectRepositorySetting(String name, ProjectRepositorySettingArgs args)
    public ProjectRepositorySetting(String name, ProjectRepositorySettingArgs args, CustomResourceOptions options)
    
    type: oci:DevOps:ProjectRepositorySetting
    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 ProjectRepositorySettingArgs
    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 ProjectRepositorySettingArgs
    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 ProjectRepositorySettingArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ProjectRepositorySettingArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ProjectRepositorySettingArgs
    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 projectRepositorySettingResource = new Oci.DevOps.ProjectRepositorySetting("projectRepositorySettingResource", new()
    {
        ProjectId = "string",
        ApprovalRules = new Oci.DevOps.Inputs.ProjectRepositorySettingApprovalRulesArgs
        {
            Items = new[]
            {
                new Oci.DevOps.Inputs.ProjectRepositorySettingApprovalRulesItemArgs
                {
                    MinApprovalsCount = 0,
                    Name = "string",
                    DestinationBranch = "string",
                    Reviewers = new[]
                    {
                        new Oci.DevOps.Inputs.ProjectRepositorySettingApprovalRulesItemReviewerArgs
                        {
                            PrincipalId = "string",
                            PrincipalName = "string",
                            PrincipalState = "string",
                            PrincipalType = "string",
                        },
                    },
                },
            },
        },
        MergeSettings = new Oci.DevOps.Inputs.ProjectRepositorySettingMergeSettingsArgs
        {
            AllowedMergeStrategies = new[]
            {
                "string",
            },
            DefaultMergeStrategy = "string",
        },
    });
    
    example, err := DevOps.NewProjectRepositorySetting(ctx, "projectRepositorySettingResource", &DevOps.ProjectRepositorySettingArgs{
    	ProjectId: pulumi.String("string"),
    	ApprovalRules: &devops.ProjectRepositorySettingApprovalRulesArgs{
    		Items: devops.ProjectRepositorySettingApprovalRulesItemArray{
    			&devops.ProjectRepositorySettingApprovalRulesItemArgs{
    				MinApprovalsCount: pulumi.Int(0),
    				Name:              pulumi.String("string"),
    				DestinationBranch: pulumi.String("string"),
    				Reviewers: devops.ProjectRepositorySettingApprovalRulesItemReviewerArray{
    					&devops.ProjectRepositorySettingApprovalRulesItemReviewerArgs{
    						PrincipalId:    pulumi.String("string"),
    						PrincipalName:  pulumi.String("string"),
    						PrincipalState: pulumi.String("string"),
    						PrincipalType:  pulumi.String("string"),
    					},
    				},
    			},
    		},
    	},
    	MergeSettings: &devops.ProjectRepositorySettingMergeSettingsArgs{
    		AllowedMergeStrategies: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		DefaultMergeStrategy: pulumi.String("string"),
    	},
    })
    
    var projectRepositorySettingResource = new ProjectRepositorySetting("projectRepositorySettingResource", ProjectRepositorySettingArgs.builder()
        .projectId("string")
        .approvalRules(ProjectRepositorySettingApprovalRulesArgs.builder()
            .items(ProjectRepositorySettingApprovalRulesItemArgs.builder()
                .minApprovalsCount(0)
                .name("string")
                .destinationBranch("string")
                .reviewers(ProjectRepositorySettingApprovalRulesItemReviewerArgs.builder()
                    .principalId("string")
                    .principalName("string")
                    .principalState("string")
                    .principalType("string")
                    .build())
                .build())
            .build())
        .mergeSettings(ProjectRepositorySettingMergeSettingsArgs.builder()
            .allowedMergeStrategies("string")
            .defaultMergeStrategy("string")
            .build())
        .build());
    
    project_repository_setting_resource = oci.dev_ops.ProjectRepositorySetting("projectRepositorySettingResource",
        project_id="string",
        approval_rules={
            "items": [{
                "min_approvals_count": 0,
                "name": "string",
                "destination_branch": "string",
                "reviewers": [{
                    "principal_id": "string",
                    "principal_name": "string",
                    "principal_state": "string",
                    "principal_type": "string",
                }],
            }],
        },
        merge_settings={
            "allowed_merge_strategies": ["string"],
            "default_merge_strategy": "string",
        })
    
    const projectRepositorySettingResource = new oci.devops.ProjectRepositorySetting("projectRepositorySettingResource", {
        projectId: "string",
        approvalRules: {
            items: [{
                minApprovalsCount: 0,
                name: "string",
                destinationBranch: "string",
                reviewers: [{
                    principalId: "string",
                    principalName: "string",
                    principalState: "string",
                    principalType: "string",
                }],
            }],
        },
        mergeSettings: {
            allowedMergeStrategies: ["string"],
            defaultMergeStrategy: "string",
        },
    });
    
    type: oci:DevOps:ProjectRepositorySetting
    properties:
        approvalRules:
            items:
                - destinationBranch: string
                  minApprovalsCount: 0
                  name: string
                  reviewers:
                    - principalId: string
                      principalName: string
                      principalState: string
                      principalType: string
        mergeSettings:
            allowedMergeStrategies:
                - string
            defaultMergeStrategy: string
        projectId: string
    

    ProjectRepositorySetting Resource Properties

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

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The ProjectRepositorySetting resource accepts the following input properties:

    ProjectId string

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    ApprovalRules ProjectRepositorySettingApprovalRules
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    MergeSettings ProjectRepositorySettingMergeSettings
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.
    ProjectId string

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    ApprovalRules ProjectRepositorySettingApprovalRulesArgs
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    MergeSettings ProjectRepositorySettingMergeSettingsArgs
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.
    projectId String

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    approvalRules ProjectRepositorySettingApprovalRules
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    mergeSettings ProjectRepositorySettingMergeSettings
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.
    projectId string

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    approvalRules ProjectRepositorySettingApprovalRules
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    mergeSettings ProjectRepositorySettingMergeSettings
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.
    project_id str

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    approval_rules devops.ProjectRepositorySettingApprovalRulesArgs
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    merge_settings devops.ProjectRepositorySettingMergeSettingsArgs
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.
    projectId String

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    approvalRules Property Map
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    mergeSettings Property Map
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ProjectRepositorySetting 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 ProjectRepositorySetting Resource

    Get an existing ProjectRepositorySetting 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?: ProjectRepositorySettingState, opts?: CustomResourceOptions): ProjectRepositorySetting
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            approval_rules: Optional[_devops.ProjectRepositorySettingApprovalRulesArgs] = None,
            merge_settings: Optional[_devops.ProjectRepositorySettingMergeSettingsArgs] = None,
            project_id: Optional[str] = None) -> ProjectRepositorySetting
    func GetProjectRepositorySetting(ctx *Context, name string, id IDInput, state *ProjectRepositorySettingState, opts ...ResourceOption) (*ProjectRepositorySetting, error)
    public static ProjectRepositorySetting Get(string name, Input<string> id, ProjectRepositorySettingState? state, CustomResourceOptions? opts = null)
    public static ProjectRepositorySetting get(String name, Output<String> id, ProjectRepositorySettingState 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:
    ApprovalRules ProjectRepositorySettingApprovalRules
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    MergeSettings ProjectRepositorySettingMergeSettings
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.
    ProjectId string

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    ApprovalRules ProjectRepositorySettingApprovalRulesArgs
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    MergeSettings ProjectRepositorySettingMergeSettingsArgs
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.
    ProjectId string

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    approvalRules ProjectRepositorySettingApprovalRules
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    mergeSettings ProjectRepositorySettingMergeSettings
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.
    projectId String

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    approvalRules ProjectRepositorySettingApprovalRules
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    mergeSettings ProjectRepositorySettingMergeSettings
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.
    projectId string

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    approval_rules devops.ProjectRepositorySettingApprovalRulesArgs
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    merge_settings devops.ProjectRepositorySettingMergeSettingsArgs
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.
    project_id str

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    approvalRules Property Map
    (Updatable) List of approval rules which must be statisfied before pull requests which match the rules can be merged
    mergeSettings Property Map
    (Updatable) Enabled and disabled merge strategies for a project or repository, also contains a default strategy.
    projectId String

    Unique project identifier.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    Supporting Types

    ProjectRepositorySettingApprovalRules, ProjectRepositorySettingApprovalRulesArgs

    Items List<ProjectRepositorySettingApprovalRulesItem>
    (Updatable) List of approval rules.
    Items []ProjectRepositorySettingApprovalRulesItem
    (Updatable) List of approval rules.
    items List<ProjectRepositorySettingApprovalRulesItem>
    (Updatable) List of approval rules.
    items ProjectRepositorySettingApprovalRulesItem[]
    (Updatable) List of approval rules.
    items List<Property Map>
    (Updatable) List of approval rules.

    ProjectRepositorySettingApprovalRulesItem, ProjectRepositorySettingApprovalRulesItemArgs

    MinApprovalsCount int
    (Updatable) Minimum number of approvals which must be provided by the reviewers specified in the list before the rule can be satisfied
    Name string
    (Updatable) Name which is used to uniquely identify an approval rule.
    DestinationBranch string
    (Updatable) Branch name where pull requests targeting the branch must satisfy the approval rule. This value being null means the rule applies to all pull requests
    Reviewers List<ProjectRepositorySettingApprovalRulesItemReviewer>
    (Updatable) List of users who must provide approvals up to the minApprovalsCount specified in the rule. An empty list means the approvals can come from any user.
    MinApprovalsCount int
    (Updatable) Minimum number of approvals which must be provided by the reviewers specified in the list before the rule can be satisfied
    Name string
    (Updatable) Name which is used to uniquely identify an approval rule.
    DestinationBranch string
    (Updatable) Branch name where pull requests targeting the branch must satisfy the approval rule. This value being null means the rule applies to all pull requests
    Reviewers []ProjectRepositorySettingApprovalRulesItemReviewer
    (Updatable) List of users who must provide approvals up to the minApprovalsCount specified in the rule. An empty list means the approvals can come from any user.
    minApprovalsCount Integer
    (Updatable) Minimum number of approvals which must be provided by the reviewers specified in the list before the rule can be satisfied
    name String
    (Updatable) Name which is used to uniquely identify an approval rule.
    destinationBranch String
    (Updatable) Branch name where pull requests targeting the branch must satisfy the approval rule. This value being null means the rule applies to all pull requests
    reviewers List<ProjectRepositorySettingApprovalRulesItemReviewer>
    (Updatable) List of users who must provide approvals up to the minApprovalsCount specified in the rule. An empty list means the approvals can come from any user.
    minApprovalsCount number
    (Updatable) Minimum number of approvals which must be provided by the reviewers specified in the list before the rule can be satisfied
    name string
    (Updatable) Name which is used to uniquely identify an approval rule.
    destinationBranch string
    (Updatable) Branch name where pull requests targeting the branch must satisfy the approval rule. This value being null means the rule applies to all pull requests
    reviewers ProjectRepositorySettingApprovalRulesItemReviewer[]
    (Updatable) List of users who must provide approvals up to the minApprovalsCount specified in the rule. An empty list means the approvals can come from any user.
    min_approvals_count int
    (Updatable) Minimum number of approvals which must be provided by the reviewers specified in the list before the rule can be satisfied
    name str
    (Updatable) Name which is used to uniquely identify an approval rule.
    destination_branch str
    (Updatable) Branch name where pull requests targeting the branch must satisfy the approval rule. This value being null means the rule applies to all pull requests
    reviewers Sequence[devops.ProjectRepositorySettingApprovalRulesItemReviewer]
    (Updatable) List of users who must provide approvals up to the minApprovalsCount specified in the rule. An empty list means the approvals can come from any user.
    minApprovalsCount Number
    (Updatable) Minimum number of approvals which must be provided by the reviewers specified in the list before the rule can be satisfied
    name String
    (Updatable) Name which is used to uniquely identify an approval rule.
    destinationBranch String
    (Updatable) Branch name where pull requests targeting the branch must satisfy the approval rule. This value being null means the rule applies to all pull requests
    reviewers List<Property Map>
    (Updatable) List of users who must provide approvals up to the minApprovalsCount specified in the rule. An empty list means the approvals can come from any user.

    ProjectRepositorySettingApprovalRulesItemReviewer, ProjectRepositorySettingApprovalRulesItemReviewerArgs

    PrincipalId string
    (Updatable) Pull Request reviewer id
    PrincipalName string
    the name of the principal
    PrincipalState string
    The state of the principal, it can be active or inactive or suppressed for emails
    PrincipalType string
    the type of principal
    PrincipalId string
    (Updatable) Pull Request reviewer id
    PrincipalName string
    the name of the principal
    PrincipalState string
    The state of the principal, it can be active or inactive or suppressed for emails
    PrincipalType string
    the type of principal
    principalId String
    (Updatable) Pull Request reviewer id
    principalName String
    the name of the principal
    principalState String
    The state of the principal, it can be active or inactive or suppressed for emails
    principalType String
    the type of principal
    principalId string
    (Updatable) Pull Request reviewer id
    principalName string
    the name of the principal
    principalState string
    The state of the principal, it can be active or inactive or suppressed for emails
    principalType string
    the type of principal
    principal_id str
    (Updatable) Pull Request reviewer id
    principal_name str
    the name of the principal
    principal_state str
    The state of the principal, it can be active or inactive or suppressed for emails
    principal_type str
    the type of principal
    principalId String
    (Updatable) Pull Request reviewer id
    principalName String
    the name of the principal
    principalState String
    The state of the principal, it can be active or inactive or suppressed for emails
    principalType String
    the type of principal

    ProjectRepositorySettingMergeSettings, ProjectRepositorySettingMergeSettingsArgs

    AllowedMergeStrategies List<string>
    (Updatable) List of merge strategies which are allowed for a Project or Repository.
    DefaultMergeStrategy string
    (Updatable) Default type of merge strategy associated with the a Project or Repository.
    AllowedMergeStrategies []string
    (Updatable) List of merge strategies which are allowed for a Project or Repository.
    DefaultMergeStrategy string
    (Updatable) Default type of merge strategy associated with the a Project or Repository.
    allowedMergeStrategies List<String>
    (Updatable) List of merge strategies which are allowed for a Project or Repository.
    defaultMergeStrategy String
    (Updatable) Default type of merge strategy associated with the a Project or Repository.
    allowedMergeStrategies string[]
    (Updatable) List of merge strategies which are allowed for a Project or Repository.
    defaultMergeStrategy string
    (Updatable) Default type of merge strategy associated with the a Project or Repository.
    allowed_merge_strategies Sequence[str]
    (Updatable) List of merge strategies which are allowed for a Project or Repository.
    default_merge_strategy str
    (Updatable) Default type of merge strategy associated with the a Project or Repository.
    allowedMergeStrategies List<String>
    (Updatable) List of merge strategies which are allowed for a Project or Repository.
    defaultMergeStrategy String
    (Updatable) Default type of merge strategy associated with the a Project or Repository.

    Import

    ProjectRepositorySettings can be imported using the id, e.g.

    $ pulumi import oci:DevOps/projectRepositorySetting:ProjectRepositorySetting test_project_repository_setting "projects/{projectId}/repositorySettings"
    

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

    Package Details

    Repository
    oci pulumi/pulumi-oci
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the oci Terraform Provider.
    oci logo
    Oracle Cloud Infrastructure v2.17.0 published on Friday, Nov 15, 2024 by Pulumi