Files
gitlab-project/variable.tf
2025-11-01 23:32:29 +01:00

237 lines
5.1 KiB
HCL
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

variable "name" {
type = string
description = "Repository Name"
}
variable "forked_from_project_id" {
type = number
description = "Forked from"
default = 0
}
variable "description" {
type = string
description = "Repository Description"
}
variable "parent_group" {
type = string
description = "Parent Group"
}
variable "default_branch" {
type = string
description = "Default branch"
default = "master"
}
variable "ci_config_path" {
type = string
description = "CI PATH"
default = null
}
variable "tags" {
type = list(string)
description = "Tags"
default = []
}
variable "build_git_strategy" {
type = string
default = "clone"
description = "The Git strategy. Defaults to fetch."
}
variable "archived" {
type = bool
default = false
description = "Archived project"
}
variable "allowed_project_types_json" {
type = string
default = ""
description = "Path to allowed project types json"
}
variable "project_type" {
type = string
description = "Project type"
default = ""
validation {
condition = contains(keys(local.allowed_project_types), var.project_type)
error_message = "Unsupported project project_type"
}
}
variable "allowed_avatar_types_json" {
type = string
default = ""
description = "Path to allowed avatar types json"
}
variable "avatar" {
type = string
description = "Type of the avatar for the group (default: from type)"
default = ""
validation {
condition = contains(local.allowed_avatar_types, var.avatar)
error_message = "Unsupported group type"
}
}
variable "is_enable_conventional_commits_push_rule" {
type = bool
default = false
description = "Enable conventional commits push rule"
}
variable "protected_branches" {
type = map(object({
push_access_level = string
merge_access_level = string
}))
description = "Protected branches"
default = {
"master" = {
push_access_level = "maintainer"
merge_access_level = "developer"
}
}
}
variable "protected_tags" {
type = map(object({
create_access_level = string
}))
description = "Protected tags"
default = {
"v*" = {
create_access_level = "maintainer"
}
}
}
variable "is_enabled_checkmarx" {
type = bool
default = true
description = "Enable checkmarx"
}
variable "is_enabled_sonarqube" {
type = bool
default = true
description = "Enable sonarqube"
}
variable "sib_aplikacja" {
type = string
description = "[UPW] ID Aplikacja w zasobach SIB"
default = ""
}
variable "ci_variables" {
type = map(object({
value = string
description = optional(string)
protected = optional(bool)
masked = optional(bool)
environment_scope = optional(string)
}))
description = "CI variables to be set for the group"
default = null
}
variable "scoped_variables" {
description = <<-EOT
{
"VARIABLE_NAME" = {
description = "opis"
protected = optional(bool, false)
masked = optional(bool, false)
values = {
"environment_name" = "value"
"environment_2" = "value2"
}
}
}
EOT
type = map(object({
description = optional(string, "")
protected = optional(bool, false)
masked = optional(bool, false)
values = map(string)
}))
default = {}
}
variable "environments" {
type = map(string)
description = "Project environments"
default = {}
}
variable "attributes" {
type = map(string)
default = {}
description = "custom attributes to be set for the project"
}
variable "avatars_dir" {
description = "Avatars directory png files"
type = string
default = ""
}
variable "only_allow_merge_if_pipeline_succeeds" {
description = "Set to true if you want allow merges only if a pipeline succeeds."
type = bool
default = false
}
variable "allow_merge_on_skipped_pipeline" {
description = "Set to true if you want to treat skipped pipelines as if they finished with success."
type = bool
default = true
}
variable "group_runners_enabled" {
description = "Enable group runners for this project."
type = bool
default = true
}
variable "shared_runners_enabled" {
description = "Enable shared runners for this project."
type = bool
default = true
}
variable "build_timeout" {
description = "The maximum amount of time, in seconds, that a job can run."
type = number
default = 3600
}
variable "auto_cancel_pending_pipelines" {
description = "Auto-cancel pending pipelines. This isnt a boolean, but enabled/disabled."
type = string
default = "enabled"
}
variable "token_scope_groups" {
description = "CI_JOB_TOKEN group allowlist"
type = list(string)
default = []
}
variable "token_scope_repositories" {
description = "CI_JOB_TOKEN repositories allowlist"
type = list(string)
default = []
}