Project

Create a Project Resource

new Project(name: string, args?: ProjectArgs, opts?: CustomResourceOptions);
@overload
def Project(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            approvals_before_merge: Optional[int] = None,
            archived: Optional[bool] = None,
            container_registry_enabled: Optional[bool] = None,
            default_branch: Optional[str] = None,
            description: Optional[str] = None,
            group_with_project_templates_id: Optional[int] = None,
            import_url: Optional[str] = None,
            initialize_with_readme: Optional[bool] = None,
            issues_enabled: Optional[bool] = None,
            lfs_enabled: Optional[bool] = None,
            merge_method: Optional[str] = None,
            merge_requests_enabled: Optional[bool] = None,
            mirror: Optional[bool] = None,
            mirror_overwrites_diverged_branches: Optional[bool] = None,
            mirror_trigger_builds: Optional[bool] = None,
            name: Optional[str] = None,
            namespace_id: Optional[int] = None,
            only_allow_merge_if_all_discussions_are_resolved: Optional[bool] = None,
            only_allow_merge_if_pipeline_succeeds: Optional[bool] = None,
            only_mirror_protected_branches: Optional[bool] = None,
            packages_enabled: Optional[bool] = None,
            pages_access_level: Optional[str] = None,
            path: Optional[str] = None,
            pipelines_enabled: Optional[bool] = None,
            push_rules: Optional[ProjectPushRulesArgs] = None,
            remove_source_branch_after_merge: Optional[bool] = None,
            request_access_enabled: Optional[bool] = None,
            shared_runners_enabled: Optional[bool] = None,
            snippets_enabled: Optional[bool] = None,
            tags: Optional[Sequence[str]] = None,
            template_name: Optional[str] = None,
            template_project_id: Optional[int] = None,
            use_custom_template: Optional[bool] = None,
            visibility_level: Optional[str] = None,
            wiki_enabled: Optional[bool] = None)
@overload
def Project(resource_name: str,
            args: Optional[ProjectArgs] = None,
            opts: Optional[ResourceOptions] = None)
func NewProject(ctx *Context, name string, args *ProjectArgs, opts ...ResourceOption) (*Project, error)
public Project(string name, ProjectArgs? args = null, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args ProjectArgs
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 ProjectArgs
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 ProjectArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args ProjectArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

Project Resource Properties

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

Inputs

The Project resource accepts the following input properties:

ApprovalsBeforeMerge int
Number of merge request approvals required for merging. Default is 0.
Archived bool
Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
ContainerRegistryEnabled bool
Enable container registry for the project.
DefaultBranch string
The default branch for the project.
Description string
A description of the project.
GroupWithProjectTemplatesId int
For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires use_custom_template to be true (enterprise edition).
ImportUrl string
Git URL to a repository to be imported.
InitializeWithReadme bool
Create master branch with first commit containing a README.md file.
IssuesEnabled bool
Enable issue tracking for the project.
LfsEnabled bool
Enable LFS for the project.
MergeMethod string
Set to ff to create fast-forward merges Valid values are merge, rebase_merge, ff Repositories are created with merge by default
MergeRequestsEnabled bool
Enable merge requests for the project.
Mirror bool
Enables pull mirroring in a project. Default is false. For further information on mirroring, consult the gitlab documentation.
MirrorOverwritesDivergedBranches bool
Pull mirror overwrites diverged branches.
MirrorTriggerBuilds bool
Pull mirroring triggers builds. Default is false.
Name string
The name of the project.
NamespaceId int
The namespace (group or user) of the project. Defaults to your user. See gitlab.Group for an example.
OnlyAllowMergeIfAllDiscussionsAreResolved bool
Set to true if you want allow merges only if all discussions are resolved.
OnlyAllowMergeIfPipelineSucceeds bool
Set to true if you want allow merges only if a pipeline succeeds.
OnlyMirrorProtectedBranches bool
Only mirror protected branches.
PackagesEnabled bool
Enable packages repository for the project.
PagesAccessLevel string
Enable pages access control Valid values are disabled, private, enabled, public. private is the default.
Path string
The path of the repository.
PipelinesEnabled bool
Enable pipelines for the project.
PushRules Pulumi.GitLab.Inputs.ProjectPushRulesArgs
Push rules for the project (documented below).
RemoveSourceBranchAfterMerge bool
Enable Delete source branch option by default for all new merge requests.
RequestAccessEnabled bool
Allow users to request member access.
SharedRunnersEnabled bool
Enable shared runners for this project.
SnippetsEnabled bool
Enable snippets for the project.
Tags List<string>
Tags (topics) of the project.
TemplateName string
When used without use_custom_template, name of a built-in project template. When used with use_custom_template, name of a custom project template. This option is mutually exclusive with template_project_id.
TemplateProjectId int
When used with use_custom_template, project ID of a custom project template. This is preferable to using template_name since template_name may be ambiguous (enterprise edition). This option is mutually exclusive with template_name.
UseCustomTemplate bool
Use either custom instance or group (with group_with_project_templates_id) project template (enterprise edition).
VisibilityLevel string
Set to public to create a public project. Valid values are private, internal, public. Repositories are created as private by default.
WikiEnabled bool
Enable wiki for the project.
ApprovalsBeforeMerge int
Number of merge request approvals required for merging. Default is 0.
Archived bool
Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
ContainerRegistryEnabled bool
Enable container registry for the project.
DefaultBranch string
The default branch for the project.
Description string
A description of the project.
GroupWithProjectTemplatesId int
For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires use_custom_template to be true (enterprise edition).
ImportUrl string
Git URL to a repository to be imported.
InitializeWithReadme bool
Create master branch with first commit containing a README.md file.
IssuesEnabled bool
Enable issue tracking for the project.
LfsEnabled bool
Enable LFS for the project.
MergeMethod string
Set to ff to create fast-forward merges Valid values are merge, rebase_merge, ff Repositories are created with merge by default
MergeRequestsEnabled bool
Enable merge requests for the project.
Mirror bool
Enables pull mirroring in a project. Default is false. For further information on mirroring, consult the gitlab documentation.
MirrorOverwritesDivergedBranches bool
Pull mirror overwrites diverged branches.
MirrorTriggerBuilds bool
Pull mirroring triggers builds. Default is false.
Name string
The name of the project.
NamespaceId int
The namespace (group or user) of the project. Defaults to your user. See gitlab.Group for an example.
OnlyAllowMergeIfAllDiscussionsAreResolved bool
Set to true if you want allow merges only if all discussions are resolved.
OnlyAllowMergeIfPipelineSucceeds bool
Set to true if you want allow merges only if a pipeline succeeds.
OnlyMirrorProtectedBranches bool
Only mirror protected branches.
PackagesEnabled bool
Enable packages repository for the project.
PagesAccessLevel string
Enable pages access control Valid values are disabled, private, enabled, public. private is the default.
Path string
The path of the repository.
PipelinesEnabled bool
Enable pipelines for the project.
PushRules ProjectPushRules
Push rules for the project (documented below).
RemoveSourceBranchAfterMerge bool
Enable Delete source branch option by default for all new merge requests.
RequestAccessEnabled bool
Allow users to request member access.
SharedRunnersEnabled bool
Enable shared runners for this project.
SnippetsEnabled bool
Enable snippets for the project.
Tags []string
Tags (topics) of the project.
TemplateName string
When used without use_custom_template, name of a built-in project template. When used with use_custom_template, name of a custom project template. This option is mutually exclusive with template_project_id.
TemplateProjectId int
When used with use_custom_template, project ID of a custom project template. This is preferable to using template_name since template_name may be ambiguous (enterprise edition). This option is mutually exclusive with template_name.
UseCustomTemplate bool
Use either custom instance or group (with group_with_project_templates_id) project template (enterprise edition).
VisibilityLevel string
Set to public to create a public project. Valid values are private, internal, public. Repositories are created as private by default.
WikiEnabled bool
Enable wiki for the project.
approvalsBeforeMerge number
Number of merge request approvals required for merging. Default is 0.
archived boolean
Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
containerRegistryEnabled boolean
Enable container registry for the project.
defaultBranch string
The default branch for the project.
description string
A description of the project.
groupWithProjectTemplatesId number
For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires use_custom_template to be true (enterprise edition).
importUrl string
Git URL to a repository to be imported.
initializeWithReadme boolean
Create master branch with first commit containing a README.md file.
issuesEnabled boolean
Enable issue tracking for the project.
lfsEnabled boolean
Enable LFS for the project.
mergeMethod string
Set to ff to create fast-forward merges Valid values are merge, rebase_merge, ff Repositories are created with merge by default
mergeRequestsEnabled boolean
Enable merge requests for the project.
mirror boolean
Enables pull mirroring in a project. Default is false. For further information on mirroring, consult the gitlab documentation.
mirrorOverwritesDivergedBranches boolean
Pull mirror overwrites diverged branches.
mirrorTriggerBuilds boolean
Pull mirroring triggers builds. Default is false.
name string
The name of the project.
namespaceId number
The namespace (group or user) of the project. Defaults to your user. See gitlab.Group for an example.
onlyAllowMergeIfAllDiscussionsAreResolved boolean
Set to true if you want allow merges only if all discussions are resolved.
onlyAllowMergeIfPipelineSucceeds boolean
Set to true if you want allow merges only if a pipeline succeeds.
onlyMirrorProtectedBranches boolean
Only mirror protected branches.
packagesEnabled boolean
Enable packages repository for the project.
pagesAccessLevel string
Enable pages access control Valid values are disabled, private, enabled, public. private is the default.
path string
The path of the repository.
pipelinesEnabled boolean
Enable pipelines for the project.
pushRules ProjectPushRulesArgs
Push rules for the project (documented below).
removeSourceBranchAfterMerge boolean
Enable Delete source branch option by default for all new merge requests.
requestAccessEnabled boolean
Allow users to request member access.
sharedRunnersEnabled boolean
Enable shared runners for this project.
snippetsEnabled boolean
Enable snippets for the project.
tags string[]
Tags (topics) of the project.
templateName string
When used without use_custom_template, name of a built-in project template. When used with use_custom_template, name of a custom project template. This option is mutually exclusive with template_project_id.
templateProjectId number
When used with use_custom_template, project ID of a custom project template. This is preferable to using template_name since template_name may be ambiguous (enterprise edition). This option is mutually exclusive with template_name.
useCustomTemplate boolean
Use either custom instance or group (with group_with_project_templates_id) project template (enterprise edition).
visibilityLevel string
Set to public to create a public project. Valid values are private, internal, public. Repositories are created as private by default.
wikiEnabled boolean
Enable wiki for the project.
approvals_before_merge int
Number of merge request approvals required for merging. Default is 0.
archived bool
Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
container_registry_enabled bool
Enable container registry for the project.
default_branch str
The default branch for the project.
description str
A description of the project.
group_with_project_templates_id int
For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires use_custom_template to be true (enterprise edition).
import_url str
Git URL to a repository to be imported.
initialize_with_readme bool
Create master branch with first commit containing a README.md file.
issues_enabled bool
Enable issue tracking for the project.
lfs_enabled bool
Enable LFS for the project.
merge_method str
Set to ff to create fast-forward merges Valid values are merge, rebase_merge, ff Repositories are created with merge by default
merge_requests_enabled bool
Enable merge requests for the project.
mirror bool
Enables pull mirroring in a project. Default is false. For further information on mirroring, consult the gitlab documentation.
mirror_overwrites_diverged_branches bool
Pull mirror overwrites diverged branches.
mirror_trigger_builds bool
Pull mirroring triggers builds. Default is false.
name str
The name of the project.
namespace_id int
The namespace (group or user) of the project. Defaults to your user. See gitlab.Group for an example.
only_allow_merge_if_all_discussions_are_resolved bool
Set to true if you want allow merges only if all discussions are resolved.
only_allow_merge_if_pipeline_succeeds bool
Set to true if you want allow merges only if a pipeline succeeds.
only_mirror_protected_branches bool
Only mirror protected branches.
packages_enabled bool
Enable packages repository for the project.
pages_access_level str
Enable pages access control Valid values are disabled, private, enabled, public. private is the default.
path str
The path of the repository.
pipelines_enabled bool
Enable pipelines for the project.
push_rules ProjectPushRulesArgs
Push rules for the project (documented below).
remove_source_branch_after_merge bool
Enable Delete source branch option by default for all new merge requests.
request_access_enabled bool
Allow users to request member access.
shared_runners_enabled bool
Enable shared runners for this project.
snippets_enabled bool
Enable snippets for the project.
tags Sequence[str]
Tags (topics) of the project.
template_name str
When used without use_custom_template, name of a built-in project template. When used with use_custom_template, name of a custom project template. This option is mutually exclusive with template_project_id.
template_project_id int
When used with use_custom_template, project ID of a custom project template. This is preferable to using template_name since template_name may be ambiguous (enterprise edition). This option is mutually exclusive with template_name.
use_custom_template bool
Use either custom instance or group (with group_with_project_templates_id) project template (enterprise edition).
visibility_level str
Set to public to create a public project. Valid values are private, internal, public. Repositories are created as private by default.
wiki_enabled bool
Enable wiki for the project.

Outputs

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

HttpUrlToRepo string
URL that can be provided to git clone to clone the repository via HTTP.
Id string
The provider-assigned unique ID for this managed resource.
PathWithNamespace string
The path of the repository with namespace.
RunnersToken string
Registration token to use during runner setup.
SshUrlToRepo string
URL that can be provided to git clone to clone the repository via SSH.
WebUrl string
URL that can be used to find the project in a browser.
HttpUrlToRepo string
URL that can be provided to git clone to clone the repository via HTTP.
Id string
The provider-assigned unique ID for this managed resource.
PathWithNamespace string
The path of the repository with namespace.
RunnersToken string
Registration token to use during runner setup.
SshUrlToRepo string
URL that can be provided to git clone to clone the repository via SSH.
WebUrl string
URL that can be used to find the project in a browser.
httpUrlToRepo string
URL that can be provided to git clone to clone the repository via HTTP.
id string
The provider-assigned unique ID for this managed resource.
pathWithNamespace string
The path of the repository with namespace.
runnersToken string
Registration token to use during runner setup.
sshUrlToRepo string
URL that can be provided to git clone to clone the repository via SSH.
webUrl string
URL that can be used to find the project in a browser.
http_url_to_repo str
URL that can be provided to git clone to clone the repository via HTTP.
id str
The provider-assigned unique ID for this managed resource.
path_with_namespace str
The path of the repository with namespace.
runners_token str
Registration token to use during runner setup.
ssh_url_to_repo str
URL that can be provided to git clone to clone the repository via SSH.
web_url str
URL that can be used to find the project in a browser.

Look up an Existing Project Resource

Get an existing Project 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?: ProjectState, opts?: CustomResourceOptions): Project
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        approvals_before_merge: Optional[int] = None,
        archived: Optional[bool] = None,
        container_registry_enabled: Optional[bool] = None,
        default_branch: Optional[str] = None,
        description: Optional[str] = None,
        group_with_project_templates_id: Optional[int] = None,
        http_url_to_repo: Optional[str] = None,
        import_url: Optional[str] = None,
        initialize_with_readme: Optional[bool] = None,
        issues_enabled: Optional[bool] = None,
        lfs_enabled: Optional[bool] = None,
        merge_method: Optional[str] = None,
        merge_requests_enabled: Optional[bool] = None,
        mirror: Optional[bool] = None,
        mirror_overwrites_diverged_branches: Optional[bool] = None,
        mirror_trigger_builds: Optional[bool] = None,
        name: Optional[str] = None,
        namespace_id: Optional[int] = None,
        only_allow_merge_if_all_discussions_are_resolved: Optional[bool] = None,
        only_allow_merge_if_pipeline_succeeds: Optional[bool] = None,
        only_mirror_protected_branches: Optional[bool] = None,
        packages_enabled: Optional[bool] = None,
        pages_access_level: Optional[str] = None,
        path: Optional[str] = None,
        path_with_namespace: Optional[str] = None,
        pipelines_enabled: Optional[bool] = None,
        push_rules: Optional[ProjectPushRulesArgs] = None,
        remove_source_branch_after_merge: Optional[bool] = None,
        request_access_enabled: Optional[bool] = None,
        runners_token: Optional[str] = None,
        shared_runners_enabled: Optional[bool] = None,
        snippets_enabled: Optional[bool] = None,
        ssh_url_to_repo: Optional[str] = None,
        tags: Optional[Sequence[str]] = None,
        template_name: Optional[str] = None,
        template_project_id: Optional[int] = None,
        use_custom_template: Optional[bool] = None,
        visibility_level: Optional[str] = None,
        web_url: Optional[str] = None,
        wiki_enabled: Optional[bool] = None) -> Project
func GetProject(ctx *Context, name string, id IDInput, state *ProjectState, opts ...ResourceOption) (*Project, error)
public static Project Get(string name, Input<string> id, ProjectState? state, CustomResourceOptions? opts = null)
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.

The following state arguments are supported:

ApprovalsBeforeMerge int
Number of merge request approvals required for merging. Default is 0.
Archived bool
Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
ContainerRegistryEnabled bool
Enable container registry for the project.
DefaultBranch string
The default branch for the project.
Description string
A description of the project.
GroupWithProjectTemplatesId int
For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires use_custom_template to be true (enterprise edition).
HttpUrlToRepo string
URL that can be provided to git clone to clone the repository via HTTP.
ImportUrl string
Git URL to a repository to be imported.
InitializeWithReadme bool
Create master branch with first commit containing a README.md file.
IssuesEnabled bool
Enable issue tracking for the project.
LfsEnabled bool
Enable LFS for the project.
MergeMethod string
Set to ff to create fast-forward merges Valid values are merge, rebase_merge, ff Repositories are created with merge by default
MergeRequestsEnabled bool
Enable merge requests for the project.
Mirror bool
Enables pull mirroring in a project. Default is false. For further information on mirroring, consult the gitlab documentation.
MirrorOverwritesDivergedBranches bool
Pull mirror overwrites diverged branches.
MirrorTriggerBuilds bool
Pull mirroring triggers builds. Default is false.
Name string
The name of the project.
NamespaceId int
The namespace (group or user) of the project. Defaults to your user. See gitlab.Group for an example.
OnlyAllowMergeIfAllDiscussionsAreResolved bool
Set to true if you want allow merges only if all discussions are resolved.
OnlyAllowMergeIfPipelineSucceeds bool
Set to true if you want allow merges only if a pipeline succeeds.
OnlyMirrorProtectedBranches bool
Only mirror protected branches.
PackagesEnabled bool
Enable packages repository for the project.
PagesAccessLevel string
Enable pages access control Valid values are disabled, private, enabled, public. private is the default.
Path string
The path of the repository.
PathWithNamespace string
The path of the repository with namespace.
PipelinesEnabled bool
Enable pipelines for the project.
PushRules Pulumi.GitLab.Inputs.ProjectPushRulesArgs
Push rules for the project (documented below).
RemoveSourceBranchAfterMerge bool
Enable Delete source branch option by default for all new merge requests.
RequestAccessEnabled bool
Allow users to request member access.
RunnersToken string
Registration token to use during runner setup.
SharedRunnersEnabled bool
Enable shared runners for this project.
SnippetsEnabled bool
Enable snippets for the project.
SshUrlToRepo string
URL that can be provided to git clone to clone the repository via SSH.
Tags List<string>
Tags (topics) of the project.
TemplateName string
When used without use_custom_template, name of a built-in project template. When used with use_custom_template, name of a custom project template. This option is mutually exclusive with template_project_id.
TemplateProjectId int
When used with use_custom_template, project ID of a custom project template. This is preferable to using template_name since template_name may be ambiguous (enterprise edition). This option is mutually exclusive with template_name.
UseCustomTemplate bool
Use either custom instance or group (with group_with_project_templates_id) project template (enterprise edition).
VisibilityLevel string
Set to public to create a public project. Valid values are private, internal, public. Repositories are created as private by default.
WebUrl string
URL that can be used to find the project in a browser.
WikiEnabled bool
Enable wiki for the project.
ApprovalsBeforeMerge int
Number of merge request approvals required for merging. Default is 0.
Archived bool
Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
ContainerRegistryEnabled bool
Enable container registry for the project.
DefaultBranch string
The default branch for the project.
Description string
A description of the project.
GroupWithProjectTemplatesId int
For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires use_custom_template to be true (enterprise edition).
HttpUrlToRepo string
URL that can be provided to git clone to clone the repository via HTTP.
ImportUrl string
Git URL to a repository to be imported.
InitializeWithReadme bool
Create master branch with first commit containing a README.md file.
IssuesEnabled bool
Enable issue tracking for the project.
LfsEnabled bool
Enable LFS for the project.
MergeMethod string
Set to ff to create fast-forward merges Valid values are merge, rebase_merge, ff Repositories are created with merge by default
MergeRequestsEnabled bool
Enable merge requests for the project.
Mirror bool
Enables pull mirroring in a project. Default is false. For further information on mirroring, consult the gitlab documentation.
MirrorOverwritesDivergedBranches bool
Pull mirror overwrites diverged branches.
MirrorTriggerBuilds bool
Pull mirroring triggers builds. Default is false.
Name string
The name of the project.
NamespaceId int
The namespace (group or user) of the project. Defaults to your user. See gitlab.Group for an example.
OnlyAllowMergeIfAllDiscussionsAreResolved bool
Set to true if you want allow merges only if all discussions are resolved.
OnlyAllowMergeIfPipelineSucceeds bool
Set to true if you want allow merges only if a pipeline succeeds.
OnlyMirrorProtectedBranches bool
Only mirror protected branches.
PackagesEnabled bool
Enable packages repository for the project.
PagesAccessLevel string
Enable pages access control Valid values are disabled, private, enabled, public. private is the default.
Path string
The path of the repository.
PathWithNamespace string
The path of the repository with namespace.
PipelinesEnabled bool
Enable pipelines for the project.
PushRules ProjectPushRules
Push rules for the project (documented below).
RemoveSourceBranchAfterMerge bool
Enable Delete source branch option by default for all new merge requests.
RequestAccessEnabled bool
Allow users to request member access.
RunnersToken string
Registration token to use during runner setup.
SharedRunnersEnabled bool
Enable shared runners for this project.
SnippetsEnabled bool
Enable snippets for the project.
SshUrlToRepo string
URL that can be provided to git clone to clone the repository via SSH.
Tags []string
Tags (topics) of the project.
TemplateName string
When used without use_custom_template, name of a built-in project template. When used with use_custom_template, name of a custom project template. This option is mutually exclusive with template_project_id.
TemplateProjectId int
When used with use_custom_template, project ID of a custom project template. This is preferable to using template_name since template_name may be ambiguous (enterprise edition). This option is mutually exclusive with template_name.
UseCustomTemplate bool
Use either custom instance or group (with group_with_project_templates_id) project template (enterprise edition).
VisibilityLevel string
Set to public to create a public project. Valid values are private, internal, public. Repositories are created as private by default.
WebUrl string
URL that can be used to find the project in a browser.
WikiEnabled bool
Enable wiki for the project.
approvalsBeforeMerge number
Number of merge request approvals required for merging. Default is 0.
archived boolean
Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
containerRegistryEnabled boolean
Enable container registry for the project.
defaultBranch string
The default branch for the project.
description string
A description of the project.
groupWithProjectTemplatesId number
For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires use_custom_template to be true (enterprise edition).
httpUrlToRepo string
URL that can be provided to git clone to clone the repository via HTTP.
importUrl string
Git URL to a repository to be imported.
initializeWithReadme boolean
Create master branch with first commit containing a README.md file.
issuesEnabled boolean
Enable issue tracking for the project.
lfsEnabled boolean
Enable LFS for the project.
mergeMethod string
Set to ff to create fast-forward merges Valid values are merge, rebase_merge, ff Repositories are created with merge by default
mergeRequestsEnabled boolean
Enable merge requests for the project.
mirror boolean
Enables pull mirroring in a project. Default is false. For further information on mirroring, consult the gitlab documentation.
mirrorOverwritesDivergedBranches boolean
Pull mirror overwrites diverged branches.
mirrorTriggerBuilds boolean
Pull mirroring triggers builds. Default is false.
name string
The name of the project.
namespaceId number
The namespace (group or user) of the project. Defaults to your user. See gitlab.Group for an example.
onlyAllowMergeIfAllDiscussionsAreResolved boolean
Set to true if you want allow merges only if all discussions are resolved.
onlyAllowMergeIfPipelineSucceeds boolean
Set to true if you want allow merges only if a pipeline succeeds.
onlyMirrorProtectedBranches boolean
Only mirror protected branches.
packagesEnabled boolean
Enable packages repository for the project.
pagesAccessLevel string
Enable pages access control Valid values are disabled, private, enabled, public. private is the default.
path string
The path of the repository.
pathWithNamespace string
The path of the repository with namespace.
pipelinesEnabled boolean
Enable pipelines for the project.
pushRules ProjectPushRulesArgs
Push rules for the project (documented below).
removeSourceBranchAfterMerge boolean
Enable Delete source branch option by default for all new merge requests.
requestAccessEnabled boolean
Allow users to request member access.
runnersToken string
Registration token to use during runner setup.
sharedRunnersEnabled boolean
Enable shared runners for this project.
snippetsEnabled boolean
Enable snippets for the project.
sshUrlToRepo string
URL that can be provided to git clone to clone the repository via SSH.
tags string[]
Tags (topics) of the project.
templateName string
When used without use_custom_template, name of a built-in project template. When used with use_custom_template, name of a custom project template. This option is mutually exclusive with template_project_id.
templateProjectId number
When used with use_custom_template, project ID of a custom project template. This is preferable to using template_name since template_name may be ambiguous (enterprise edition). This option is mutually exclusive with template_name.
useCustomTemplate boolean
Use either custom instance or group (with group_with_project_templates_id) project template (enterprise edition).
visibilityLevel string
Set to public to create a public project. Valid values are private, internal, public. Repositories are created as private by default.
webUrl string
URL that can be used to find the project in a browser.
wikiEnabled boolean
Enable wiki for the project.
approvals_before_merge int
Number of merge request approvals required for merging. Default is 0.
archived bool
Whether the project is in read-only mode (archived). Repositories can be archived/unarchived by toggling this parameter.
container_registry_enabled bool
Enable container registry for the project.
default_branch str
The default branch for the project.
description str
A description of the project.
group_with_project_templates_id int
For group-level custom templates, specifies ID of group from which all the custom project templates are sourced. Leave empty for instance-level templates. Requires use_custom_template to be true (enterprise edition).
http_url_to_repo str
URL that can be provided to git clone to clone the repository via HTTP.
import_url str
Git URL to a repository to be imported.
initialize_with_readme bool
Create master branch with first commit containing a README.md file.
issues_enabled bool
Enable issue tracking for the project.
lfs_enabled bool
Enable LFS for the project.
merge_method str
Set to ff to create fast-forward merges Valid values are merge, rebase_merge, ff Repositories are created with merge by default
merge_requests_enabled bool
Enable merge requests for the project.
mirror bool
Enables pull mirroring in a project. Default is false. For further information on mirroring, consult the gitlab documentation.
mirror_overwrites_diverged_branches bool
Pull mirror overwrites diverged branches.
mirror_trigger_builds bool
Pull mirroring triggers builds. Default is false.
name str
The name of the project.
namespace_id int
The namespace (group or user) of the project. Defaults to your user. See gitlab.Group for an example.
only_allow_merge_if_all_discussions_are_resolved bool
Set to true if you want allow merges only if all discussions are resolved.
only_allow_merge_if_pipeline_succeeds bool
Set to true if you want allow merges only if a pipeline succeeds.
only_mirror_protected_branches bool
Only mirror protected branches.
packages_enabled bool
Enable packages repository for the project.
pages_access_level str
Enable pages access control Valid values are disabled, private, enabled, public. private is the default.
path str
The path of the repository.
path_with_namespace str
The path of the repository with namespace.
pipelines_enabled bool
Enable pipelines for the project.
push_rules ProjectPushRulesArgs
Push rules for the project (documented below).
remove_source_branch_after_merge bool
Enable Delete source branch option by default for all new merge requests.
request_access_enabled bool
Allow users to request member access.
runners_token str
Registration token to use during runner setup.
shared_runners_enabled bool
Enable shared runners for this project.
snippets_enabled bool
Enable snippets for the project.
ssh_url_to_repo str
URL that can be provided to git clone to clone the repository via SSH.
tags Sequence[str]
Tags (topics) of the project.
template_name str
When used without use_custom_template, name of a built-in project template. When used with use_custom_template, name of a custom project template. This option is mutually exclusive with template_project_id.
template_project_id int
When used with use_custom_template, project ID of a custom project template. This is preferable to using template_name since template_name may be ambiguous (enterprise edition). This option is mutually exclusive with template_name.
use_custom_template bool
Use either custom instance or group (with group_with_project_templates_id) project template (enterprise edition).
visibility_level str
Set to public to create a public project. Valid values are private, internal, public. Repositories are created as private by default.
web_url str
URL that can be used to find the project in a browser.
wiki_enabled bool
Enable wiki for the project.

Supporting Types

ProjectPushRules

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.
CommitMessageNegativeRegex string
No commit message is allowed to match this regex, for example ssh\:\/\/.
CommitMessageRegex string
All commit messages must match this regex, e.g. Fixed \d+\..*.
DenyDeleteTag bool
Deny deleting a tag.
FileNameRegex string
All commited 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 through GPG.
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.
CommitMessageNegativeRegex string
No commit message is allowed to match this regex, for example ssh\:\/\/.
CommitMessageRegex string
All commit messages must match this regex, e.g. Fixed \d+\..*.
DenyDeleteTag bool
Deny deleting a tag.
FileNameRegex string
All commited 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 through GPG.
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.
commitMessageNegativeRegex string
No commit message is allowed to match this regex, for example ssh\:\/\/.
commitMessageRegex string
All commit messages must match this regex, e.g. Fixed \d+\..*.
denyDeleteTag boolean
Deny deleting a tag.
fileNameRegex string
All commited 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 through GPG.
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_message_negative_regex str
No commit message is allowed to match this regex, for example 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 commited 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 through GPG.

Package Details

Repository
https://github.com/pulumi/pulumi-gitlab
License
Apache-2.0
Notes
This Pulumi package is based on the gitlab Terraform Provider.