502053abef
ArtifactAPI now serves local docker repos as real container registries and the provider exposes an artifactapi_local_docker resource, but this config had no way to declare one. - Add a local_docker variable, module resource, config loader wiring, and terragrunt input, mirroring the other local_* kinds. - Declare a docker-internal registry. - Expand the README to cover the local_* and virtual kinds. Depends on a terraform-provider-artifactapi release exposing artifactapi_local_docker (and a matching .terraform.lock.hcl bump) before apply.
140 lines
3.8 KiB
Terraform
140 lines
3.8 KiB
Terraform
variable "remote_alpine" {
|
|
description = "Map of Alpine remote repositories"
|
|
type = map(object({
|
|
base_url = string
|
|
description = optional(string, "")
|
|
immutable_ttl = optional(number, 0)
|
|
mutable_ttl = optional(number, 7200)
|
|
immutable_patterns = optional(list(string), [])
|
|
mutable_patterns = optional(list(string), [])
|
|
stale_on_error = optional(bool, true)
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "remote_docker" {
|
|
description = "Map of Docker remote repositories"
|
|
type = map(object({
|
|
base_url = string
|
|
description = optional(string, "")
|
|
immutable_ttl = optional(number, 0)
|
|
mutable_ttl = optional(number, 300)
|
|
patterns = optional(list(string), [])
|
|
mutable_patterns = optional(list(string), [])
|
|
stale_on_error = optional(bool, true)
|
|
ban_tags_enabled = optional(bool, false)
|
|
ban_tags = optional(list(string), [])
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "remote_generic" {
|
|
description = "Map of generic remote repositories"
|
|
type = map(object({
|
|
base_url = string
|
|
description = optional(string, "")
|
|
immutable_ttl = optional(number, 0)
|
|
mutable_ttl = optional(number, 7200)
|
|
patterns = optional(list(string), [])
|
|
mutable_patterns = optional(list(string), [])
|
|
stale_on_error = optional(bool, true)
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "remote_goproxy" {
|
|
description = "Map of Go module proxy remote repositories"
|
|
type = map(object({
|
|
base_url = string
|
|
description = optional(string, "")
|
|
immutable_ttl = optional(number, 0)
|
|
mutable_ttl = optional(number, 300)
|
|
stale_on_error = optional(bool, true)
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "remote_helm" {
|
|
description = "Map of Helm chart remote repositories"
|
|
type = map(object({
|
|
base_url = string
|
|
description = optional(string, "")
|
|
immutable_ttl = optional(number, 0)
|
|
mutable_ttl = optional(number, 3600)
|
|
check_mutable = optional(bool, true)
|
|
immutable_patterns = optional(list(string), [])
|
|
stale_on_error = optional(bool, true)
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "remote_rpm" {
|
|
description = "Map of RPM remote repositories"
|
|
type = map(object({
|
|
base_url = string
|
|
description = optional(string, "")
|
|
immutable_ttl = optional(number, 0)
|
|
mutable_ttl = optional(number, 7200)
|
|
immutable_patterns = optional(list(string), [])
|
|
mutable_patterns = optional(list(string), [])
|
|
stale_on_error = optional(bool, true)
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "remote_pypi" {
|
|
description = "Map of PyPI remote repositories"
|
|
type = map(object({
|
|
base_url = string
|
|
description = optional(string, "")
|
|
immutable_ttl = optional(number, 0)
|
|
mutable_ttl = optional(number, 3600)
|
|
patterns = optional(list(string), [])
|
|
mutable_patterns = optional(list(string), [])
|
|
stale_on_error = optional(bool, true)
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "local_pypi" {
|
|
description = "Map of local PyPI repositories"
|
|
type = map(object({
|
|
description = optional(string, "")
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "local_rpm" {
|
|
description = "Map of local RPM repositories"
|
|
type = map(object({
|
|
description = optional(string, "")
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "local_terraform" {
|
|
description = "Map of local Terraform repositories"
|
|
type = map(object({
|
|
description = optional(string, "")
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "local_docker" {
|
|
description = "Map of local Docker repositories (real container registries)"
|
|
type = map(object({
|
|
description = optional(string, "")
|
|
}))
|
|
default = {}
|
|
}
|
|
|
|
variable "virtual" {
|
|
description = "Map of virtual repositories"
|
|
type = map(object({
|
|
package_type = string
|
|
description = optional(string, "")
|
|
members = list(string)
|
|
}))
|
|
default = {}
|
|
}
|