project

dwp/project/gitlab

Terraform Module HCL GITLAB

Terraform module to manage GitLab projects (a.k.a. repositories)

Install
module "project" {
source = "dwp/project/gitlab"
version = "2.4.0"
}
plain text: /constructs/tfmod-dwp-project-gitlab/install.txt
⭐ Source on GitHub 📦 Registry page
README

project This module creates a GitLab project with a default set of permissions. Terraform module to manage GitLab projects with DWP default settings. This module is published on Terraform Registry and it should be referred to for usage documentation. Requirements - See the versions.tf file for required Terraform and provider versions. - GitLab personal access token with the following permissions: - api - A GitLub group Usage ``hcl module "my_gitlab_project" { source = "dwp/project/gitlab" group_id = 123 name = "my-project" } ` Example `hcl variable "gitlab_token" { type = string description = "GitLab personal access token for managing projects" } provider "gitlab" { token = var.gitlab_token } resource "gitlab_group" "my_group" { name = "my-group" path = "my-group" description = "An example

Inputs (31)
NameTypeDescriptionDefault
namestringThe name of the project to be created required
group_idnumberThe ID of the GitLab group that repositories will be created in required
merge_methodstring(Optional) Set to `ff` to create fast-forward merges. Valid values are `merge`, "ff"
initialize_with_readmebool(Optional) Create main branch with first commit containing a README.md file.false
lfs_enabledbool(Optional) Enable LFS for the project.false
disable_overriding_approvers_per_merge_requestbool(Optional) By default, users are able to edit the approval rules in merge requestrue
remove_source_branch_after_mergebool(Optional) Enable `Delete source branch` option by default for all new merge reqtrue
tag_create_access_levelstring(Optional) One of five levels of access to the project e.g. `no one`, `developer"maintainer"
reset_approvals_on_pushbool(Optional) Set to true if you want to remove all approvals in a merge request whtrue
descriptionstring(Optional) A description of the project.""
commit_committer_checkbool(Optional, bool) Users can only push commits to this repository that were committrue
member_checkbool(Optional) Restrict commits by author (email) to existing GitLab users.true
merge_requests_author_approvalbool(Optional) Set to true if you want to allow merge request authors to self-approvtrue
approvals_before_mergestring(Optional) Number of merge request approvals required for merging. Default is 0.1
prevent_secretsbool(Optional) GitLab will reject any files that are likely to contain secrets.true
merge_access_levelstring(Optional) One of five levels of access to the project e.g. `no one`, `developer"developer"
request_access_enabledbool(Optional) Allow users to request member access.true
wiki_enabledbool(Optional) Enable wiki for the project.false
deny_delete_tagbool(Optional) Deny deleting a tag.true
branch_name_regexstring(Optional) Regular expression to enforce on branch names""
merge_requests_disable_committers_approvalbool(Optional) Set to true if you want to prevent approval of merge requests by mergtrue
pages_access_levelstring(Optional) Enable pages access control. Valid values are `disabled`, `private`, "private"
Outputs (1)
project — The GitLab project resource
Resources (5)
gitlab_branch_protectiongitlab_projectgitlab_project_level_mr_approvalsgitlab_project_membershipgitlab_tag_protection
Topics & Tags
hacktoberfestgovuk
Details
FrameworkTerraform Module
LanguageHCL
Version2.4.0
Cloud GITLAB
★ Stars7
Forks6
Total downloads1.5k
Inputs31
Outputs1
Resources5
Namespacedwp
Updated