published on Friday, Oct 16, 2026 by Pulumi
published on Friday, Oct 16, 2026 by Pulumi
The gitlab.MemberRole resource manages the lifecycle of a custom member role.
Custom roles allow an organization to create user roles with the precise privileges and permissions required for that organization’s needs.
This resource requires an Ultimate license.
Most custom roles are considered billable users that use a seat. Custom roles billing and seat usage
There can be only 10 custom roles on your instance or namespace. See issue 450929 for more details.
READ_ADMIN_*permissions grant read-only access to the Admin Area and cannot be used on a member role. Use thegitlab.AdminRoleresource to create a custom admin role instead.
Upstream API: GitLab GraphQL API docs
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as gitlab from "@pulumi/gitlab";
// Example is creating a role for a security analyst to be able to read vulnerabilities for repos in example-org on gitlab.com.
const securityAnalyst = new gitlab.MemberRole("security_analyst", {
name: "Security Analyst",
description: "This is a read only role for security analysts",
groupPath: "example-org",
baseAccessLevel: "REPORTER",
enabledPermissions: ["READ_VULNERABILITY"],
});
// Example is creating a role for an enhanced developer to be able to manage CI/CD variables and vulnerabilities on self managed gitlab instance.
const enhancedDeveloper = new gitlab.MemberRole("enhanced_developer", {
name: "Enhanced Developer",
description: "This role gives the developers additional access to manage CI/CD variables and vulnerabilities",
baseAccessLevel: "DEVELOPER",
enabledPermissions: [
"ADMIN_CICD_VARIABLES",
"ADMIN_VULNERABILITY",
],
});
import pulumi
import pulumi_gitlab as gitlab
# Example is creating a role for a security analyst to be able to read vulnerabilities for repos in example-org on gitlab.com.
security_analyst = gitlab.MemberRole("security_analyst",
name="Security Analyst",
description="This is a read only role for security analysts",
group_path="example-org",
base_access_level="REPORTER",
enabled_permissions=["READ_VULNERABILITY"])
# Example is creating a role for an enhanced developer to be able to manage CI/CD variables and vulnerabilities on self managed gitlab instance.
enhanced_developer = gitlab.MemberRole("enhanced_developer",
name="Enhanced Developer",
description="This role gives the developers additional access to manage CI/CD variables and vulnerabilities",
base_access_level="DEVELOPER",
enabled_permissions=[
"ADMIN_CICD_VARIABLES",
"ADMIN_VULNERABILITY",
])
package main
import (
"github.com/pulumi/pulumi-gitlab/sdk/v10/go/gitlab"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Example is creating a role for a security analyst to be able to read vulnerabilities for repos in example-org on gitlab.com.
_, err := gitlab.NewMemberRole(ctx, "security_analyst", &gitlab.MemberRoleArgs{
Name: pulumi.String("Security Analyst"),
Description: pulumi.String("This is a read only role for security analysts"),
GroupPath: pulumi.String("example-org"),
BaseAccessLevel: pulumi.String("REPORTER"),
EnabledPermissions: pulumi.StringArray{
pulumi.String("READ_VULNERABILITY"),
},
})
if err != nil {
return err
}
// Example is creating a role for an enhanced developer to be able to manage CI/CD variables and vulnerabilities on self managed gitlab instance.
_, err = gitlab.NewMemberRole(ctx, "enhanced_developer", &gitlab.MemberRoleArgs{
Name: pulumi.String("Enhanced Developer"),
Description: pulumi.String("This role gives the developers additional access to manage CI/CD variables and vulnerabilities"),
BaseAccessLevel: pulumi.String("DEVELOPER"),
EnabledPermissions: pulumi.StringArray{
pulumi.String("ADMIN_CICD_VARIABLES"),
pulumi.String("ADMIN_VULNERABILITY"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using GitLab = Pulumi.GitLab;
return await Deployment.RunAsync(() =>
{
// Example is creating a role for a security analyst to be able to read vulnerabilities for repos in example-org on gitlab.com.
var securityAnalyst = new GitLab.MemberRole("security_analyst", new()
{
Name = "Security Analyst",
Description = "This is a read only role for security analysts",
GroupPath = "example-org",
BaseAccessLevel = "REPORTER",
EnabledPermissions = new[]
{
"READ_VULNERABILITY",
},
});
// Example is creating a role for an enhanced developer to be able to manage CI/CD variables and vulnerabilities on self managed gitlab instance.
var enhancedDeveloper = new GitLab.MemberRole("enhanced_developer", new()
{
Name = "Enhanced Developer",
Description = "This role gives the developers additional access to manage CI/CD variables and vulnerabilities",
BaseAccessLevel = "DEVELOPER",
EnabledPermissions = new[]
{
"ADMIN_CICD_VARIABLES",
"ADMIN_VULNERABILITY",
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gitlab.MemberRole;
import com.pulumi.gitlab.MemberRoleArgs;
import java.util.ArrayList;
import java.util.Arrays;
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) {
// Example is creating a role for a security analyst to be able to read vulnerabilities for repos in example-org on gitlab.com.
var securityAnalyst = new MemberRole("securityAnalyst", MemberRoleArgs.builder()
.name("Security Analyst")
.description("This is a read only role for security analysts")
.groupPath("example-org")
.baseAccessLevel("REPORTER")
.enabledPermissions("READ_VULNERABILITY")
.build());
// Example is creating a role for an enhanced developer to be able to manage CI/CD variables and vulnerabilities on self managed gitlab instance.
var enhancedDeveloper = new MemberRole("enhancedDeveloper", MemberRoleArgs.builder()
.name("Enhanced Developer")
.description("This role gives the developers additional access to manage CI/CD variables and vulnerabilities")
.baseAccessLevel("DEVELOPER")
.enabledPermissions(
"ADMIN_CICD_VARIABLES",
"ADMIN_VULNERABILITY")
.build());
}
}
resources:
# Example is creating a role for a security analyst to be able to read vulnerabilities for repos in example-org on gitlab.com.
securityAnalyst:
type: gitlab:MemberRole
name: security_analyst
properties:
name: Security Analyst
description: This is a read only role for security analysts
groupPath: example-org
baseAccessLevel: REPORTER
enabledPermissions:
- READ_VULNERABILITY
# Example is creating a role for an enhanced developer to be able to manage CI/CD variables and vulnerabilities on self managed gitlab instance.
enhancedDeveloper:
type: gitlab:MemberRole
name: enhanced_developer
properties:
name: Enhanced Developer
description: This role gives the developers additional access to manage CI/CD variables and vulnerabilities
baseAccessLevel: DEVELOPER
enabledPermissions:
- ADMIN_CICD_VARIABLES
- ADMIN_VULNERABILITY
terraform {
required_providers {
gitlab = {
source = "pulumi/gitlab"
}
}
}
# Example is creating a role for a security analyst to be able to read vulnerabilities for repos in example-org on gitlab.com.
resource "gitlab_member_role" "security_analyst" {
lifecycle {
create_before_destroy = true
}
name = "Security Analyst"
description = "This is a read only role for security analysts"
group_path = "example-org"
base_access_level = "REPORTER"
enabled_permissions = ["READ_VULNERABILITY"]
}
# Example is creating a role for an enhanced developer to be able to manage CI/CD variables and vulnerabilities on self managed gitlab instance.
resource "gitlab_member_role" "enhanced_developer" {
lifecycle {
create_before_destroy = true
}
name = "Enhanced Developer"
description = "This role gives the developers additional access to manage CI/CD variables and vulnerabilities"
base_access_level = "DEVELOPER"
enabled_permissions = ["ADMIN_CICD_VARIABLES", "ADMIN_VULNERABILITY"]
}
Create MemberRole Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new MemberRole(name: string, args: MemberRoleArgs, opts?: CustomResourceOptions);@overload
def MemberRole(resource_name: str,
args: MemberRoleArgs,
opts: Optional[ResourceOptions] = None)
@overload
def MemberRole(resource_name: str,
opts: Optional[ResourceOptions] = None,
base_access_level: Optional[str] = None,
enabled_permissions: Optional[Sequence[str]] = None,
description: Optional[str] = None,
group_path: Optional[str] = None,
name: Optional[str] = None)func NewMemberRole(ctx *Context, name string, args MemberRoleArgs, opts ...ResourceOption) (*MemberRole, error)public MemberRole(string name, MemberRoleArgs args, CustomResourceOptions? opts = null)
public MemberRole(String name, MemberRoleArgs args)
public MemberRole(String name, MemberRoleArgs args, CustomResourceOptions options)
type: gitlab:MemberRole
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "gitlab_member_role" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args MemberRoleArgs
- 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 MemberRoleArgs
- 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 MemberRoleArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args MemberRoleArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args MemberRoleArgs
- 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 memberRoleResource = new GitLab.MemberRole("memberRoleResource", new()
{
BaseAccessLevel = "string",
EnabledPermissions = new[]
{
"string",
},
Description = "string",
GroupPath = "string",
Name = "string",
});
example, err := gitlab.NewMemberRole(ctx, "memberRoleResource", &gitlab.MemberRoleArgs{
BaseAccessLevel: pulumi.String("string"),
EnabledPermissions: pulumi.StringArray{
pulumi.String("string"),
},
Description: pulumi.String("string"),
GroupPath: pulumi.String("string"),
Name: pulumi.String("string"),
})
resource "gitlab_member_role" "memberRoleResource" {
lifecycle {
create_before_destroy = true
}
base_access_level = "string"
enabled_permissions = ["string"]
description = "string"
group_path = "string"
name = "string"
}
var memberRoleResource = new MemberRole("memberRoleResource", MemberRoleArgs.builder()
.baseAccessLevel("string")
.enabledPermissions("string")
.description("string")
.groupPath("string")
.name("string")
.build());
member_role_resource = gitlab.MemberRole("memberRoleResource",
base_access_level="string",
enabled_permissions=["string"],
description="string",
group_path="string",
name="string")
const memberRoleResource = new gitlab.MemberRole("memberRoleResource", {
baseAccessLevel: "string",
enabledPermissions: ["string"],
description: "string",
groupPath: "string",
name: "string",
});
type: gitlab:MemberRole
properties:
baseAccessLevel: string
description: string
enabledPermissions:
- string
groupPath: string
name: string
MemberRole 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 MemberRole resource accepts the following input properties:
- Base
Access stringLevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - Enabled
Permissions List<string> - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - Description string
- Description for the member role.
- Group
Path string - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- Name string
- Name for the member role.
- Base
Access stringLevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - Enabled
Permissions []string - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - Description string
- Description for the member role.
- Group
Path string - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- Name string
- Name for the member role.
- base_
access_ stringlevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - enabled_
permissions list(string) - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - description string
- Description for the member role.
- group_
path string - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- name string
- Name for the member role.
- base
Access StringLevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - enabled
Permissions List<String> - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - description String
- Description for the member role.
- group
Path String - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- name String
- Name for the member role.
- base
Access stringLevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - enabled
Permissions string[] - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - description string
- Description for the member role.
- group
Path string - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- name string
- Name for the member role.
- base_
access_ strlevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - enabled_
permissions Sequence[str] - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - description str
- Description for the member role.
- group_
path str - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- name str
- Name for the member role.
- base
Access StringLevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - enabled
Permissions List<String> - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - description String
- Description for the member role.
- group
Path String - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- name String
- Name for the member role.
Outputs
All input properties are implicitly available as output properties. Additionally, the MemberRole resource produces the following output properties:
- created_
at string - Timestamp of when the member role was created.
- edit_
path string - The Web UI path to edit the member role
- id string
- The provider-assigned unique ID for this managed resource.
- iid number
- The id integer value extracted from the
idattribute
- created_
at str - Timestamp of when the member role was created.
- edit_
path str - The Web UI path to edit the member role
- id str
- The provider-assigned unique ID for this managed resource.
- iid int
- The id integer value extracted from the
idattribute
Look up Existing MemberRole Resource
Get an existing MemberRole 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?: MemberRoleState, opts?: CustomResourceOptions): MemberRole@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
base_access_level: Optional[str] = None,
created_at: Optional[str] = None,
description: Optional[str] = None,
edit_path: Optional[str] = None,
enabled_permissions: Optional[Sequence[str]] = None,
group_path: Optional[str] = None,
iid: Optional[int] = None,
name: Optional[str] = None) -> MemberRolefunc GetMemberRole(ctx *Context, name string, id IDInput, state *MemberRoleState, opts ...ResourceOption) (*MemberRole, error)public static MemberRole Get(string name, Input<string> id, MemberRoleState? state, CustomResourceOptions? opts = null)public static MemberRole get(String name, Output<String> id, MemberRoleState state, CustomResourceOptions options)resources: _: type: gitlab:MemberRole get: id: ${id}import {
to = gitlab_member_role.example
id = "${id}"
}
- 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.
- Base
Access stringLevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - Created
At string - Timestamp of when the member role was created.
- Description string
- Description for the member role.
- Edit
Path string - The Web UI path to edit the member role
- Enabled
Permissions List<string> - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - Group
Path string - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- Iid int
- The id integer value extracted from the
idattribute - Name string
- Name for the member role.
- Base
Access stringLevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - Created
At string - Timestamp of when the member role was created.
- Description string
- Description for the member role.
- Edit
Path string - The Web UI path to edit the member role
- Enabled
Permissions []string - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - Group
Path string - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- Iid int
- The id integer value extracted from the
idattribute - Name string
- Name for the member role.
- base_
access_ stringlevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - created_
at string - Timestamp of when the member role was created.
- description string
- Description for the member role.
- edit_
path string - The Web UI path to edit the member role
- enabled_
permissions list(string) - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - group_
path string - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- iid number
- The id integer value extracted from the
idattribute - name string
- Name for the member role.
- base
Access StringLevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - created
At String - Timestamp of when the member role was created.
- description String
- Description for the member role.
- edit
Path String - The Web UI path to edit the member role
- enabled
Permissions List<String> - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - group
Path String - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- iid Integer
- The id integer value extracted from the
idattribute - name String
- Name for the member role.
- base
Access stringLevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - created
At string - Timestamp of when the member role was created.
- description string
- Description for the member role.
- edit
Path string - The Web UI path to edit the member role
- enabled
Permissions string[] - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - group
Path string - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- iid number
- The id integer value extracted from the
idattribute - name string
- Name for the member role.
- base_
access_ strlevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - created_
at str - Timestamp of when the member role was created.
- description str
- Description for the member role.
- edit_
path str - The Web UI path to edit the member role
- enabled_
permissions Sequence[str] - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - group_
path str - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- iid int
- The id integer value extracted from the
idattribute - name str
- Name for the member role.
- base
Access StringLevel - The base access level for the custom role. Valid values are:
DEVELOPER,GUEST,MAINTAINER,MINIMAL_ACCESS,OWNER,REPORTER,SECURITY_MANAGER - created
At String - Timestamp of when the member role was created.
- description String
- Description for the member role.
- edit
Path String - The Web UI path to edit the member role
- enabled
Permissions List<String> - All permissions enabled for the custom role. Valid values are:
ADMIN_AI_CATALOG_ITEM,ADMIN_AI_CATALOG_ITEM_CONSUMER,ADMIN_CICD_VARIABLES,ADMIN_COMPLIANCE_FRAMEWORK,ADMIN_GROUP_MEMBER,ADMIN_INTEGRATIONS,ADMIN_MERGE_REQUEST,ADMIN_PROTECTED_BRANCH,ADMIN_PROTECTED_ENVIRONMENTS,ADMIN_PUSH_RULES,ADMIN_RUNNERS,ADMIN_SECURITY_ATTRIBUTES,ADMIN_TERRAFORM_STATE,ADMIN_VULNERABILITY,ADMIN_WEB_HOOK,APPLY_SECURITY_SCAN_PROFILES,ARCHIVE_PROJECT,MANAGE_DEPLOY_TOKENS,MANAGE_GROUP_ACCESS_TOKENS,MANAGE_MERGE_REQUEST_SETTINGS,MANAGE_PROJECT_ACCESS_TOKENS,MANAGE_SECURITY_POLICY_LINK,READ_CODE,READ_COMPLIANCE_DASHBOARD,READ_CRM_CONTACT,READ_DEPENDENCY,READ_RUNNERS,READ_VULNERABILITY,REMOVE_GROUP,REMOVE_PROJECT,UPDATE_SEC_AI_WORKFLOW_SETTINGS - group
Path String - Full path of the namespace to create the member role in. Required for SAAS Not allowed for self-managed
- iid Number
- The id integer value extracted from the
idattribute - name String
- Name for the member role.
Import
Starting in Terraform v1.5.0, you can use an import block to import gitlab.MemberRole. For example:
Importing using the CLI is supported with the following syntax:
GitLab member role can be imported using the id made up of gid://gitlab/MemberRole/<ID> for example:
$ pulumi import gitlab:index/memberRole:MemberRole example 'gid://gitlab/MemberRole/123'
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
gitlabTerraform Provider.
published on Friday, Oct 16, 2026 by Pulumi