Skip to content

antmelekhin/terraform-gitlab-project

Repository files navigation

GitLab project module

This module manages GitLab projects.

Requirements

Name Version
terraform >= 0.13
gitlab >= 17.5.0

Providers

Name Version
gitlab >= 17.5.0

Modules

No modules.

Resources

Name Type
gitlab_project.this resource

Inputs

Name Description Type Default Required
name The name of the project. string n/a yes
allow_merge_on_skipped_pipeline Set to true if you want to treat skipped pipelines as if they finished with success. bool false no
archive_on_destroy Set to true to archive the project instead of deleting on destroy. bool false no
archived Whether the project is in read-only mode (archived). bool false no
description A description of the project. string null no
merge_method Set the merge method. Valid values are merge, rebase_merge, ff. string "merge" no
merge_pipelines_enabled Enable or disable merge pipelines. bool false no
merge_requests_access_level Set the merge requests access level. Valid values are disabled, private, enabled. string "enabled" no
merge_requests_enabled Enable merge requests for the project. bool true no
merge_trains_enabled Enable or disable merge trains. Requires merge_pipelines_enabled to be set to true to take effect. bool false no
namespace_id The namespace (group or user) of the project. Defaults to your user. number null no
only_allow_merge_if_all_discussions_are_resolved Set to true if you want allow merges only if all discussions are resolved. bool false no
only_allow_merge_if_pipeline_succeeds Set to true if you want allow merges only if a pipeline succeeds. bool false no
path The path of the repository. string null no
remove_source_branch_after_merge Enable Delete source branch option by default for all new merge requests. bool false no
topics The list of topics for the project. set(string) [] no
visibility_level Set to public to create a public project. Valid values are private, internal, public. string "private" no

Outputs

Name Description
http_url_to_repo URL that can be provided to git clone to clone the repository via HTTPS.
id The ID of this resource.
name The name of the project.
path_with_namespace The path of the repository with namespace.
ssh_url_to_repo URL that can be provided to git clone to clone the repository via SSH.
web_url URL that can be used to find the project in a browser.