You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
105 lines
2.5 KiB
Terraform
105 lines
2.5 KiB
Terraform
2 years ago
|
variable "namespace" {
|
||
|
description = "Namespace where Gose is deployed"
|
||
|
type = string
|
||
|
default = "default"
|
||
|
}
|
||
|
|
||
|
variable "image_registry" {
|
||
|
description = "Image registry, e.g. gcr.io, docker.io"
|
||
|
type = string
|
||
|
default = "ghcr.io"
|
||
|
}
|
||
|
|
||
|
variable "image_repository" {
|
||
|
description = "Image to start for this pod"
|
||
|
type = string
|
||
|
default = "stv0g/gose"
|
||
|
}
|
||
|
|
||
|
variable "image_tag" {
|
||
|
description = "Image tag to use"
|
||
|
type = string
|
||
|
default = "latest"
|
||
|
}
|
||
|
|
||
|
variable "container_name" {
|
||
|
description = "Name of the Gose container"
|
||
|
type = string
|
||
|
default = "gose"
|
||
|
}
|
||
|
|
||
|
variable "match_labels" {
|
||
|
description = "Match labels to add to the Gose deployment, will be merged with labels"
|
||
|
type = map(any)
|
||
|
default = {}
|
||
|
}
|
||
|
|
||
|
variable "labels" {
|
||
|
description = "Labels to add to the Gose deployment"
|
||
|
type = map(any)
|
||
|
default = {}
|
||
|
}
|
||
|
|
||
|
variable "host" {
|
||
|
description = "Public facing hostname for Gose"
|
||
|
type = string
|
||
|
default = "http://localhost:8080"
|
||
|
}
|
||
|
|
||
|
variable "config" {
|
||
|
description = "Gose config"
|
||
|
type = object({
|
||
|
listen = optional(string)
|
||
|
base_url = optional(string)
|
||
|
static = optional(string)
|
||
|
max_upload_size = optional(string)
|
||
|
servers = optional(list(object({
|
||
|
bucket = string
|
||
|
endpoint = string
|
||
|
region = string
|
||
|
path_style = optional(string)
|
||
|
no_ssl = optional(string)
|
||
|
access_key = string
|
||
|
secret_key = string
|
||
|
max_upload_size = optional(string)
|
||
|
part_size = optional(string)
|
||
|
setup = optional(object({
|
||
|
bucket = optional(bool)
|
||
|
cors = optional(bool)
|
||
|
lifecycle = optional(bool)
|
||
|
abort_incomplete_uploads = optional(number)
|
||
|
}))
|
||
|
})))
|
||
|
expiration = optional(list(object({
|
||
|
id = string
|
||
|
title = string
|
||
|
days = number
|
||
|
})))
|
||
|
shortener = optional(object({
|
||
|
endpoint = string
|
||
|
method = string
|
||
|
response = string
|
||
|
}))
|
||
|
notification = optional(object({
|
||
|
urls = list(string)
|
||
|
template = string
|
||
|
mail = object({
|
||
|
url = string
|
||
|
template = string
|
||
|
})
|
||
|
}))
|
||
|
})
|
||
|
}
|
||
|
|
||
|
variable "service_name" {
|
||
|
description = "Name of service to deploy"
|
||
|
type = string
|
||
|
default = "gose"
|
||
|
}
|
||
|
|
||
|
variable "service_type" {
|
||
|
description = "Type of service to deploy"
|
||
|
type = string
|
||
|
default = "ClusterIP"
|
||
|
}
|