Requirements

The following requirements are needed by this module:

Modules

The following Modules are called:

loki-stack

Source: ../

Version:

Required Inputs

The following input variables are required:

logs_storage

Description: MinIO S3 bucket configuration values for the bucket where the logs will be stored.

Type:

object({
    bucket_name = string
    endpoint    = string
    access_key  = string
    secret_key  = string
    insecure    = optional(bool, true)
  })

Optional Inputs

The following input variables are optional (have default values):

argocd_project

Description: Name of the Argo CD AppProject where the Application should be created. If not set, the Application will be created in a new AppProject only for this Application.

Type: string

Default: null

argocd_labels

Description: Labels to attach to the Argo CD Application resource.

Type: map(string)

Default: {}

destination_cluster

Description: Destination cluster where the application should be deployed.

Type: string

Default: "in-cluster"

target_revision

Description: Override of target revision of the application chart.

Type: string

Default: "v7.0.0"

helm_values

Description: Helm chart value overrides. They should be passed as a list of HCL structures.

Type: any

Default: []

app_autosync

Description: Automated sync options for the Argo CD Application resource.

Type:

object({
    allow_empty = optional(bool)
    prune       = optional(bool)
    self_heal   = optional(bool)
  })

Default:

{
  "allow_empty": false,
  "prune": true,
  "self_heal": true
}

dependency_ids

Description: IDs of the other modules on which this module depends on.

Type: map(string)

Default: {}

ingress

Description: Loki frontend ingress configuration.

Type:

object({
    hosts          = list(string)
    cluster_issuer = string
    allowed_ips    = optional(list(string), [])
  })

Default: null

retention

Description: Logs retention period. To deactivate retention, pass 0s.

Type: string

Default: "30d"

Outputs

The following outputs are exported:

id

Description: ID to pass other modules in order to refer to this module as a dependency.

loki_credentials

Description: Credentials to access the Loki ingress, if activated. = Requirements

Name Version

>= 5

>= 1

>= 3

>= 3

>= 1

Modules

Name Source Version

Inputs

Name Description Type Default Required

MinIO S3 bucket configuration values for the bucket where the logs will be stored.

object({
    bucket_name = string
    endpoint    = string
    access_key  = string
    secret_key  = string
    insecure    = optional(bool, true)
  })

n/a

yes

Name of the Argo CD AppProject where the Application should be created. If not set, the Application will be created in a new AppProject only for this Application.

string

null

no

Labels to attach to the Argo CD Application resource.

map(string)

{}

no

Destination cluster where the application should be deployed.

string

"in-cluster"

no

Override of target revision of the application chart.

string

"v7.0.0"

no

Helm chart value overrides. They should be passed as a list of HCL structures.

any

[]

no

Automated sync options for the Argo CD Application resource.

object({
    allow_empty = optional(bool)
    prune       = optional(bool)
    self_heal   = optional(bool)
  })
{
  "allow_empty": false,
  "prune": true,
  "self_heal": true
}

no

IDs of the other modules on which this module depends on.

map(string)

{}

no

Loki frontend ingress configuration.

object({
    hosts          = list(string)
    cluster_issuer = string
    allowed_ips    = optional(list(string), [])
  })

null

no

Logs retention period. To deactivate retention, pass 0s.

string

"30d"

no

Outputs

Name Description

id

ID to pass other modules in order to refer to this module as a dependency.

Credentials to access the Loki ingress, if activated.