project-provisioner

donaldrich80/project-provisioner/gitlab

Terraform Module HCL GITLAB

Terraform module for configuring and maintaining your Gitlab repositories and Gitlab-CI pipelines.

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

terraform-gitlab-project-provisioner About This module is designed to codify the features, settings, branches, environmental variables, accessibility, and build pipelines of Gitlab projects using the Hashicorp provider. In addition to being able to provision new projects, it also useful for ensuring standardized and immutable settings to all of your projects quickly and easily. Parameters that were formerly set project by project, can now be set on a global basis. Use Cases - Provisioning a newly created self-hosted GitLab instance prior to uploading code - Simplified method to manage/update repositories on either self-hosted or Gitlab.com Functionality General project settings Container registry, wiki, issues, etc Merge/branch settings Branches Declare an arbitrary number of branches, wit

Inputs (31)
NameTypeDescriptionDefault
default_branchstringThe default branch for the project"master"
cron_timezonestringTimezone for Cron scheduled pipelines"America/Chicago"
protected_branchesmapMap of project names to configuration.{ "master": { "merge_access_level"
snippets_enabledboolEnable snippets for the projectfalse
merge_methodstringMerge method to use on merge requests"merge"
only_allow_merge_if_pipeline_succeedsboolSet to true if you want allow merges only if a pipeline succeedstrue
namestringThe name of the project"name"
pathstringNumeric project ID"path"
descriptionstringA description of the project"Managed by Terraform"
remove_source_branch_after_mergeboolWhether to remove a branch after its mergedtrue
container_registry_enabledboolEnable container registry for the projectfalse
initialize_with_readmeboolCreate master branch with first commit containing a README.md filefalse
packages_enabledboolEnable packages for the projectfalse
request_access_enabledboolAllow users to request member accessfalse
shared_runners_enabledboolEnable shared runners for this projectfalse
pipelines_enabledboolEnable pipelines for this projecttrue
only_allow_merge_if_all_discussions_are_resolvedboolSet to true if you want allow merges only if all discussions are resolvedtrue
visibility_levelstringSet to public to create a public project. Valid values are private, internal, pu"private"
wiki_enabledboolEnable wiki for the projectfalse
scheduled_pipelinesmapMap of scheduled_pipelines to configuration.{}
Outputs (1)
gitlab_project_id — Id of created GitLab project
Resources (4)
gitlab_branch_protectiongitlab_pipeline_triggergitlab_projectgitlab_tag_protection
Details
FrameworkTerraform Module
LanguageHCL
Version1.6.0
Cloud GITLAB
★ Stars2
Forks3
Total downloads890
Inputs31
Outputs1
Resources4
Submodules5
Namespacedonaldrich80
Updated