diff --git a/python/tests/integration/resources/main.tf b/python/tests/integration/resources/main.tf index bb280248..e663b39c 100644 --- a/python/tests/integration/resources/main.tf +++ b/python/tests/integration/resources/main.tf @@ -83,6 +83,14 @@ module "cos" { source = "git::https://github.com/canonical/observability-stack//terraform/cos-lite?ref=cd55b1d" model_uuid = var.cos_model_uuid internal_tls = false + alertmanager = { revision = 191 } + catalogue = { revision = 113 } + grafana = { revision = 180 } + loki = { revision = 217 } + prometheus = { revision = 287 } + traefik = { revision = 281 } + + } resource "juju_model" "spark" { diff --git a/terraform/charms/azure-storage-integrator/README.md b/terraform/charms/azure-storage-integrator/README.md index 30d08732..08d2292e 100644 --- a/terraform/charms/azure-storage-integrator/README.md +++ b/terraform/charms/azure-storage-integrator/README.md @@ -16,7 +16,7 @@ To be contributed upstream. | Name | Version | |------|---------| -| [juju](#provider\_juju) | 1.3.1 | +| [juju](#provider\_juju) | >=1.0.0 | ### Modules diff --git a/terraform/charms/s3-integrator-v1/README.md b/terraform/charms/s3-integrator-v1/README.md index f1b281e0..456d5b8f 100644 --- a/terraform/charms/s3-integrator-v1/README.md +++ b/terraform/charms/s3-integrator-v1/README.md @@ -16,7 +16,7 @@ To be contributed upstream. | Name | Version | |------|---------| -| [juju](#provider\_juju) | 1.3.1 | +| [juju](#provider\_juju) | >=1.0.0 | ### Modules diff --git a/terraform/charms/zookeeper/README.md b/terraform/charms/zookeeper/README.md index f72fa222..d05f8f0c 100644 --- a/terraform/charms/zookeeper/README.md +++ b/terraform/charms/zookeeper/README.md @@ -16,7 +16,7 @@ To be contributed upstream. | Name | Version | |------|---------| -| [juju](#provider\_juju) | 1.3.1 | +| [juju](#provider\_juju) | >=1.0.0 | ### Modules diff --git a/terraform/components/observability/README.md b/terraform/components/observability/README.md index bc1fb504..9262e95c 100644 --- a/terraform/components/observability/README.md +++ b/terraform/components/observability/README.md @@ -23,7 +23,7 @@ As such, it is easier to define our own component module for now. | Name | Version | |------|---------| -| [juju](#provider\_juju) | 1.3.1 | +| [juju](#provider\_juju) | >=1.0.0 | ### Modules @@ -34,23 +34,23 @@ No modules. | Name | Type | |------|------| | [juju_application.cos_configuration](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/application) | resource | -| [juju_application.grafana_agent](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/application) | resource | +| [juju_application.opentelemetry_collector](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/application) | resource | | [juju_application.pushgateway](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/application) | resource | | [juju_application.scrape_config](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/application) | resource | -| [juju_integration.cos_configuration_grafana_agent](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | -| [juju_integration.grafana_agent_grafana_dashboards](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | -| [juju_integration.grafana_agent_loki](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | -| [juju_integration.grafana_agent_prometheus](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | -| [juju_integration.history_server_grafana_agent_dashboard](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | -| [juju_integration.history_server_grafana_agent_logging](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | -| [juju_integration.history_server_grafana_agent_metrics](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | -| [juju_integration.integration_hub_grafana_agent_logging](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.cos_configuration_opentelemetry_collector](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.history_server_opentelemetry_collector_dashboard](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.history_server_opentelemetry_collector_logging](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.history_server_opentelemetry_collector_metrics](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.integration_hub_opentelemetry_collector_logging](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | | [juju_integration.integration_hub_pushgateway](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | -| [juju_integration.kyuubi_grafana_agent_dashboards](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | -| [juju_integration.kyuubi_grafana_agent_logging](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | -| [juju_integration.kyuubi_grafana_agent_metrics](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.kyuubi_opentelemetry_collector_dashboards](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.kyuubi_opentelemetry_collector_logging](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.kyuubi_opentelemetry_collector_metrics](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.opentelemetry_collector_grafana_dashboards](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.opentelemetry_collector_loki](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.opentelemetry_collector_prometheus](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | | [juju_integration.pushgateway_scrape_config](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | -| [juju_integration.scrape_config_grafana_agent](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | +| [juju_integration.scrape_config_opentelemetry_collector](https://registry.terraform.io/providers/juju/juju/latest/docs/resources/integration) | resource | | [juju_offer.grafana_dashboards](https://registry.terraform.io/providers/juju/juju/latest/docs/data-sources/offer) | data source | | [juju_offer.loki_logging](https://registry.terraform.io/providers/juju/juju/latest/docs/data-sources/offer) | data source | | [juju_offer.prometheus_receive_remote_write](https://registry.terraform.io/providers/juju/juju/latest/docs/data-sources/offer) | data source | @@ -61,7 +61,6 @@ No modules. |------|-------------|------|---------|:--------:| | [cos\_configuration](#input\_cos\_configuration) | n/a |
object({
app_name = optional(string, "cos-configuration")
base = optional(string, "ubuntu@22.04")
channel = optional(string, "1/stable")
config = optional(map(string), {
git_branch = "main"
git_depth = 1
git_repo = "https://github.com/canonical/spark-k8s-bundle"
grafana_dashboards_path = "resources/grafana/"
})
constraints = optional(string, "arch=amd64")
resources = optional(map(string), {})
revision = optional(number)
units = optional(number, 1)
}) | `{}` | no |
| [dashboards\_offer](#input\_dashboards\_offer) | URL of the `grafana_dashboard` interface offer. | `string` | n/a | yes |
-| [grafana\_agent](#input\_grafana\_agent) | n/a | object({
app_name = optional(string, "grafana-agent")
base = optional(string, "ubuntu@22.04")
channel = optional(string, "1/stable")
config = optional(map(string), {})
constraints = optional(string, "arch=amd64")
resources = optional(map(string), {})
revision = optional(number)
units = optional(number, 1)
}) | `{}` | no |
| [history\_server\_dashboard\_endpoint](#input\_history\_server\_dashboard\_endpoint) | In-model endpoint for the History Server dashboard integration. | object({
name = string
endpoint = string
}) | n/a | yes |
| [history\_server\_logging\_endpoint](#input\_history\_server\_logging\_endpoint) | In-model endpoint for the History Server logging integration. | object({
name = string
endpoint = string
}) | n/a | yes |
| [history\_server\_metrics\_endpoint](#input\_history\_server\_metrics\_endpoint) | In-model endpoint for the History Server metrics integration. | object({
name = string
endpoint = string
}) | n/a | yes |
@@ -73,6 +72,7 @@ No modules.
| [logging\_offer](#input\_logging\_offer) | URL of the `loki_push_api` interface offer. | `string` | n/a | yes |
| [metrics\_offer](#input\_metrics\_offer) | URL of the `prometheus_remote_write` interface offer. | `string` | n/a | yes |
| [model\_uuid](#input\_model\_uuid) | Reference to an existing model uuid. | `string` | n/a | yes |
+| [opentelemetry\_collector](#input\_opentelemetry\_collector) | n/a | object({
app_name = optional(string, "otelcol")
base = optional(string, "ubuntu@24.04")
channel = optional(string, "2/stable")
config = optional(map(string), {})
constraints = optional(string, "arch=amd64")
resources = optional(map(string), {})
revision = optional(number)
units = optional(number, 1)
}) | `{}` | no |
| [pushgateway](#input\_pushgateway) | n/a | object({
app_name = optional(string, "pushgateway")
base = optional(string, "ubuntu@22.04")
channel = optional(string, "1/stable")
config = optional(map(string), {})
constraints = optional(string, "arch=amd64")
resources = optional(map(string), {})
revision = optional(number)
storage_directives = optional(map(string), {
pushgateway-store = "10G"
})
units = optional(number, 1)
}) | `{}` | no |
| [scrape\_config](#input\_scrape\_config) | n/a | object({
app_name = optional(string, "scrape-config")
base = optional(string, "ubuntu@22.04")
channel = optional(string, "1/stable")
config = optional(map(string), {
scrape_interval = "10s"
})
constraints = optional(string, "arch=amd64")
resources = optional(map(string), {})
revision = optional(number)
units = optional(number, 1)
}) | `{}` | no |
diff --git a/terraform/components/observability/applications.tf b/terraform/components/observability/applications.tf
index d15284c4..04b3214c 100644
--- a/terraform/components/observability/applications.tf
+++ b/terraform/components/observability/applications.tf
@@ -1,19 +1,19 @@
# Copyright 2026 Canonical Ltd.
# See LICENSE file for licensing details.
-resource "juju_application" "grafana_agent" {
- name = var.grafana_agent.app_name
+resource "juju_application" "opentelemetry_collector" {
+ name = var.opentelemetry_collector.app_name
model_uuid = var.model_uuid
charm {
- name = "grafana-agent-k8s"
- channel = var.grafana_agent.channel
- revision = var.grafana_agent.revision != null ? var.grafana_agent.revision : local.revisions.grafana_agent
+ name = "opentelemetry-collector-k8s"
+ channel = var.opentelemetry_collector.channel
+ revision = var.opentelemetry_collector.revision != null ? var.opentelemetry_collector.revision : local.revisions.opentelemetry_collector
}
- constraints = var.grafana_agent.constraints
+ constraints = var.opentelemetry_collector.constraints
trust = true
- units = var.grafana_agent.units
+ units = var.opentelemetry_collector.units
}
resource "juju_application" "cos_configuration" {
diff --git a/terraform/components/observability/integrations.tf b/terraform/components/observability/integrations.tf
index 276e0bd2..97f6b792 100644
--- a/terraform/components/observability/integrations.tf
+++ b/terraform/components/observability/integrations.tf
@@ -15,7 +15,7 @@ data "juju_offer" "loki_logging" {
## Component internal integrations
-resource "juju_integration" "cos_configuration_grafana_agent" {
+resource "juju_integration" "cos_configuration_opentelemetry_collector" {
model_uuid = var.model_uuid
application {
@@ -24,7 +24,7 @@ resource "juju_integration" "cos_configuration_grafana_agent" {
}
application {
- name = juju_application.grafana_agent.name
+ name = juju_application.opentelemetry_collector.name
endpoint = "grafana-dashboards-consumer"
}
}
@@ -43,7 +43,7 @@ resource "juju_integration" "pushgateway_scrape_config" {
}
}
-resource "juju_integration" "scrape_config_grafana_agent" {
+resource "juju_integration" "scrape_config_opentelemetry_collector" {
model_uuid = var.model_uuid
application {
@@ -52,18 +52,18 @@ resource "juju_integration" "scrape_config_grafana_agent" {
}
application {
- name = juju_application.grafana_agent.name
+ name = juju_application.opentelemetry_collector.name
endpoint = "metrics-endpoint"
}
}
## Cross-model COS integrations
-resource "juju_integration" "grafana_agent_grafana_dashboards" {
+resource "juju_integration" "opentelemetry_collector_grafana_dashboards" {
model_uuid = var.model_uuid
application {
- name = juju_application.grafana_agent.name
+ name = juju_application.opentelemetry_collector.name
endpoint = "grafana-dashboards-provider"
}
@@ -73,20 +73,20 @@ resource "juju_integration" "grafana_agent_grafana_dashboards" {
lifecycle {
replace_triggered_by = [
- juju_application.grafana_agent.name,
- juju_application.grafana_agent.model,
- juju_application.grafana_agent.constraints,
- juju_application.grafana_agent.placement,
- juju_application.grafana_agent.charm.name,
+ juju_application.opentelemetry_collector.name,
+ juju_application.opentelemetry_collector.model,
+ juju_application.opentelemetry_collector.constraints,
+ juju_application.opentelemetry_collector.placement,
+ juju_application.opentelemetry_collector.charm.name,
]
}
}
-resource "juju_integration" "grafana_agent_prometheus" {
+resource "juju_integration" "opentelemetry_collector_prometheus" {
model_uuid = var.model_uuid
application {
- name = juju_application.grafana_agent.name
+ name = juju_application.opentelemetry_collector.name
endpoint = "send-remote-write"
}
@@ -96,21 +96,21 @@ resource "juju_integration" "grafana_agent_prometheus" {
lifecycle {
replace_triggered_by = [
- juju_application.grafana_agent.name,
- juju_application.grafana_agent.model,
- juju_application.grafana_agent.constraints,
- juju_application.grafana_agent.placement,
- juju_application.grafana_agent.charm.name,
+ juju_application.opentelemetry_collector.name,
+ juju_application.opentelemetry_collector.model,
+ juju_application.opentelemetry_collector.constraints,
+ juju_application.opentelemetry_collector.placement,
+ juju_application.opentelemetry_collector.charm.name,
]
}
}
-resource "juju_integration" "grafana_agent_loki" {
+resource "juju_integration" "opentelemetry_collector_loki" {
model_uuid = var.model_uuid
application {
- name = juju_application.grafana_agent.name
- endpoint = "logging-consumer"
+ name = juju_application.opentelemetry_collector.name
+ endpoint = "send-loki-logs"
}
application {
@@ -119,18 +119,18 @@ resource "juju_integration" "grafana_agent_loki" {
lifecycle {
replace_triggered_by = [
- juju_application.grafana_agent.name,
- juju_application.grafana_agent.model,
- juju_application.grafana_agent.constraints,
- juju_application.grafana_agent.placement,
- juju_application.grafana_agent.charm.name,
+ juju_application.opentelemetry_collector.name,
+ juju_application.opentelemetry_collector.model,
+ juju_application.opentelemetry_collector.constraints,
+ juju_application.opentelemetry_collector.placement,
+ juju_application.opentelemetry_collector.charm.name,
]
}
}
## Spark components integrations
-resource "juju_integration" "history_server_grafana_agent_dashboard" {
+resource "juju_integration" "history_server_opentelemetry_collector_dashboard" {
model_uuid = var.model_uuid
application {
@@ -139,12 +139,12 @@ resource "juju_integration" "history_server_grafana_agent_dashboard" {
}
application {
- name = juju_application.grafana_agent.name
+ name = juju_application.opentelemetry_collector.name
endpoint = "grafana-dashboards-consumer"
}
}
-resource "juju_integration" "history_server_grafana_agent_logging" {
+resource "juju_integration" "history_server_opentelemetry_collector_logging" {
model_uuid = var.model_uuid
application {
@@ -153,12 +153,12 @@ resource "juju_integration" "history_server_grafana_agent_logging" {
}
application {
- name = juju_application.grafana_agent.name
- endpoint = "logging-provider"
+ name = juju_application.opentelemetry_collector.name
+ endpoint = "receive-loki-logs"
}
}
-resource "juju_integration" "history_server_grafana_agent_metrics" {
+resource "juju_integration" "history_server_opentelemetry_collector_metrics" {
model_uuid = var.model_uuid
application {
@@ -167,7 +167,7 @@ resource "juju_integration" "history_server_grafana_agent_metrics" {
}
application {
- name = juju_application.grafana_agent.name
+ name = juju_application.opentelemetry_collector.name
endpoint = "metrics-endpoint"
}
}
@@ -186,7 +186,7 @@ resource "juju_integration" "integration_hub_pushgateway" {
}
}
-resource "juju_integration" "integration_hub_grafana_agent_logging" {
+resource "juju_integration" "integration_hub_opentelemetry_collector_logging" {
model_uuid = var.model_uuid
application {
@@ -195,12 +195,12 @@ resource "juju_integration" "integration_hub_grafana_agent_logging" {
}
application {
- name = juju_application.grafana_agent.name
- endpoint = "logging-provider"
+ name = juju_application.opentelemetry_collector.name
+ endpoint = "receive-loki-logs"
}
}
-resource "juju_integration" "kyuubi_grafana_agent_metrics" {
+resource "juju_integration" "kyuubi_opentelemetry_collector_metrics" {
model_uuid = var.model_uuid
application {
@@ -209,12 +209,12 @@ resource "juju_integration" "kyuubi_grafana_agent_metrics" {
}
application {
- name = juju_application.grafana_agent.name
+ name = juju_application.opentelemetry_collector.name
endpoint = "metrics-endpoint"
}
}
-resource "juju_integration" "kyuubi_grafana_agent_dashboards" {
+resource "juju_integration" "kyuubi_opentelemetry_collector_dashboards" {
model_uuid = var.model_uuid
application {
@@ -223,12 +223,12 @@ resource "juju_integration" "kyuubi_grafana_agent_dashboards" {
}
application {
- name = juju_application.grafana_agent.name
+ name = juju_application.opentelemetry_collector.name
endpoint = "grafana-dashboards-consumer"
}
}
-resource "juju_integration" "kyuubi_grafana_agent_logging" {
+resource "juju_integration" "kyuubi_opentelemetry_collector_logging" {
model_uuid = var.model_uuid
application {
@@ -237,8 +237,8 @@ resource "juju_integration" "kyuubi_grafana_agent_logging" {
}
application {
- name = juju_application.grafana_agent.name
- endpoint = "logging-provider"
+ name = juju_application.opentelemetry_collector.name
+ endpoint = "receive-loki-logs"
}
}
diff --git a/terraform/components/observability/locals.tf b/terraform/components/observability/locals.tf
index b3310a8c..e65ffdfe 100644
--- a/terraform/components/observability/locals.tf
+++ b/terraform/components/observability/locals.tf
@@ -3,9 +3,9 @@
locals {
revisions = {
- cos_configuration = 65
- grafana_agent = 164
- pushgateway = 27
- scrape_config = 67
+ cos_configuration = 65
+ opentelemetry_collector = 162
+ pushgateway = 27
+ scrape_config = 67
}
}
diff --git a/terraform/components/observability/outputs.tf b/terraform/components/observability/outputs.tf
index 8f082b95..43476206 100644
--- a/terraform/components/observability/outputs.tf
+++ b/terraform/components/observability/outputs.tf
@@ -4,26 +4,26 @@
output "components" {
description = "List of the deployed applications for this component module."
value = {
- grafana_agent = juju_application.grafana_agent
- cos_configuration = juju_application.cos_configuration
- pushgateway = juju_application.pushgateway
- scrape_config = juju_application.scrape_config
+ opentelemetry_collector = juju_application.opentelemetry_collector
+ cos_configuration = juju_application.cos_configuration
+ pushgateway = juju_application.pushgateway
+ scrape_config = juju_application.scrape_config
}
}
output "provides" {
description = "Map of all the provided endpoints."
value = {
- grafana_agent_metrics_endpoint = {
- name = juju_application.grafana_agent.name
+ opentelemetry_collector_metrics_endpoint = {
+ name = juju_application.opentelemetry_collector.name
endpoint = "metrics-endpoint"
}
- grafana_agent_logging_provider = {
- name = juju_application.grafana_agent.name
- endpoint = "logging-provider"
+ opentelemetry_collector_receive_loki_logs = {
+ name = juju_application.opentelemetry_collector.name
+ endpoint = "receive-loki-logs"
}
- grafana_agent_grafana_dashboards_consumer = {
- name = juju_application.grafana_agent.name
+ opentelemetry_collector_grafana_dashboards_consumer = {
+ name = juju_application.opentelemetry_collector.name
endpoint = "grafana-dashboards-consumer"
}
}
@@ -32,17 +32,17 @@ output "provides" {
output "requires" {
description = "Map of the required endpoints."
value = {
- grafana_agent_grafana_dashboards_provider = {
- name = juju_application.grafana_agent.name
+ opentelemetry_collector_grafana_dashboards_provider = {
+ name = juju_application.opentelemetry_collector.name
endpoint = "grafana-dashboards-provider"
}
- grafana_agent_send_remote_write = {
- name = juju_application.grafana_agent.name
+ opentelemetry_collector_send_remote_write = {
+ name = juju_application.opentelemetry_collector.name
endpoint = "send-remote-write"
}
- grafana_agent_logging_consumer = {
- name = juju_application.grafana_agent.name
- endpoint = "logging-consumer"
+ opentelemetry_collector_send_loki_logs = {
+ name = juju_application.opentelemetry_collector.name
+ endpoint = "send-loki-logs"
}
}
}
diff --git a/terraform/components/observability/variables.tf b/terraform/components/observability/variables.tf
index e546e30f..bce9a981 100644
--- a/terraform/components/observability/variables.tf
+++ b/terraform/components/observability/variables.tf
@@ -26,11 +26,11 @@ variable "cos_configuration" {
default = {}
}
-variable "grafana_agent" {
+variable "opentelemetry_collector" {
type = object({
- app_name = optional(string, "grafana-agent")
- base = optional(string, "ubuntu@22.04")
- channel = optional(string, "1/stable")
+ app_name = optional(string, "otelcol")
+ base = optional(string, "ubuntu@24.04")
+ channel = optional(string, "2/stable")
config = optional(map(string), {})
constraints = optional(string, "arch=amd64")
resources = optional(map(string), {})
diff --git a/terraform/components/spark/README.md b/terraform/components/spark/README.md
index d590f1c5..ce9df64d 100644
--- a/terraform/components/spark/README.md
+++ b/terraform/components/spark/README.md
@@ -19,7 +19,7 @@ Bundles the following charms:
| Name | Version |
|------|---------|
-| [juju](#provider\_juju) | 1.3.1 |
+| [juju](#provider\_juju) | >=1.0.0 |
### Modules
diff --git a/terraform/products/charmed-spark-3.4/README.md b/terraform/products/charmed-spark-3.4/README.md
index c69ceb21..bc34c11c 100644
--- a/terraform/products/charmed-spark-3.4/README.md
+++ b/terraform/products/charmed-spark-3.4/README.md
@@ -14,7 +14,7 @@
| Name | Version |
|------|---------|
-| [juju](#provider\_juju) | 1.3.1 |
+| [juju](#provider\_juju) | >=1.0.0 |
### Modules
@@ -54,7 +54,6 @@
| [cos\_offers](#input\_cos\_offers) | Observability stack offers. | object({
dashboard = string
logging = string
metrics = string
}) | `null` | no |
| [create\_model](#input\_create\_model) | Should terraform create the Juju models? If set to false, assume the models are created by a different mechanism. | `bool` | `true` | no |
| [data\_integrator\_revision](#input\_data\_integrator\_revision) | Charm revision for data-integrator | `number` | `null` | no |
-| [grafana\_agent\_revision](#input\_grafana\_agent\_revision) | Charm revision for grafana-agent-k8s | `number` | `null` | no |
| [history\_server\_config](#input\_history\_server\_config) | History Server configuration options | `map(any)` | `{}` | no |
| [history\_server\_image](#input\_history\_server\_image) | Image for spark-history-server-k8s | `string` | `null` | no |
| [history\_server\_revision](#input\_history\_server\_revision) | Charm revision for spark-history-server-k8s | `number` | `null` | no |
@@ -74,6 +73,7 @@
| [metastore\_revision](#input\_metastore\_revision) | Charm revision for postgresql-k8s (metastore) | `number` | `null` | no |
| [metastore\_size](#input\_metastore\_size) | Storage size for the metastore database | `string` | `"10G"` | no |
| [model\_uuid](#input\_model\_uuid) | Optional existing Juju model UUID to deploy Spark to. If provided, model creation is skipped in higher-level modules. | `string` | `null` | no |
+| [opentelemetry\_collector\_revision](#input\_opentelemetry\_collector\_revision) | Charm revision for opentelemetry-collector-k8s | `number` | `null` | no |
| [proxy](#input\_proxy) | Proxy information for the deployment. | object({
http = optional(string, "")
https = optional(string, "")
no-proxy = optional(string, "")
}) | `{}` | no |
| [s3\_config](#input\_s3\_config) | S3 integrator configuration | object({
attributes = optional(string)
bucket = optional(string)
endpoint = optional(string)
experimental-delete-older-than-days = optional(number)
path = optional(string)
region = optional(string)
s3-api-version = optional(string)
s3-uri-style = optional(string)
storage-class = optional(string)
tls-ca-chain = optional(string)
}) | `{}` | no |
| [s3\_revision](#input\_s3\_revision) | Charm revision for s3-integrator | `number` | `null` | no |
diff --git a/terraform/products/charmed-spark-3.4/locals.tf b/terraform/products/charmed-spark-3.4/locals.tf
index 28cfbc87..68674f53 100644
--- a/terraform/products/charmed-spark-3.4/locals.tf
+++ b/terraform/products/charmed-spark-3.4/locals.tf
@@ -3,17 +3,17 @@
locals {
revisions = {
- history_server = 96
- integration_hub = 119
- kyuubi = 149
- kyuubi_users = 774
- metastore = 774
- zookeeper = 78
- data_integrator = 362
- s3 = 330
- ssc = 586
- azure_storage = 270
- grafana_agent = 164
+ history_server = 96
+ integration_hub = 119
+ kyuubi = 149
+ kyuubi_users = 774
+ metastore = 774
+ zookeeper = 78
+ data_integrator = 362
+ s3 = 330
+ ssc = 586
+ azure_storage = 270
+ opentelemetry_collector = 162
# TODO: bump the revision to 1/stable when both of the following issue gets fixed:
# https://github.com/canonical/cos-configuration-k8s-operator/issues/128
# https://github.com/canonical/cos-configuration-k8s-operator/issues/84
diff --git a/terraform/products/charmed-spark-3.4/variables.tf b/terraform/products/charmed-spark-3.4/variables.tf
index 943e5354..9a78051e 100644
--- a/terraform/products/charmed-spark-3.4/variables.tf
+++ b/terraform/products/charmed-spark-3.4/variables.tf
@@ -63,8 +63,8 @@ variable "data_integrator_revision" {
default = null
}
-variable "grafana_agent_revision" {
- description = "Charm revision for grafana-agent-k8s"
+variable "opentelemetry_collector_revision" {
+ description = "Charm revision for opentelemetry-collector-k8s"
type = number
default = null
}
diff --git a/terraform/products/charmed-spark-3.5/README.md b/terraform/products/charmed-spark-3.5/README.md
index 44c10bca..75c34e30 100644
--- a/terraform/products/charmed-spark-3.5/README.md
+++ b/terraform/products/charmed-spark-3.5/README.md
@@ -14,7 +14,7 @@
| Name | Version |
|------|---------|
-| [juju](#provider\_juju) | 1.3.1 |
+| [juju](#provider\_juju) | >=1.0.0 |
### Modules
@@ -54,7 +54,6 @@
| [cos\_offers](#input\_cos\_offers) | Observability stack offers. | object({
dashboard = string
logging = string
metrics = string
}) | `null` | no |
| [create\_model](#input\_create\_model) | Should terraform create the Juju models? If set to false, assume the models are created by a different mechanism. | `bool` | `true` | no |
| [data\_integrator\_revision](#input\_data\_integrator\_revision) | Charm revision for data-integrator | `number` | `null` | no |
-| [grafana\_agent\_revision](#input\_grafana\_agent\_revision) | Charm revision for grafana-agent-k8s | `number` | `null` | no |
| [history\_server\_config](#input\_history\_server\_config) | History Server configuration options | `map(any)` | `{}` | no |
| [history\_server\_image](#input\_history\_server\_image) | Image for spark-history-server-k8s | `string` | `null` | no |
| [history\_server\_revision](#input\_history\_server\_revision) | Charm revision for spark-history-server-k8s | `number` | `null` | no |
@@ -74,6 +73,7 @@
| [metastore\_revision](#input\_metastore\_revision) | Charm revision for postgresql-k8s (metastore) | `number` | `null` | no |
| [metastore\_size](#input\_metastore\_size) | Storage size for the metastore database | `string` | `"10G"` | no |
| [model\_uuid](#input\_model\_uuid) | Optional existing Juju model UUID to deploy Spark to. If provided, model creation is skipped in higher-level modules. | `string` | `null` | no |
+| [opentelemetry\_collector\_revision](#input\_opentelemetry\_collector\_revision) | Charm revision for opentelemetry-collector-k8s | `number` | `null` | no |
| [proxy](#input\_proxy) | Proxy information for the deployment. | object({
http = optional(string, "")
https = optional(string, "")
no-proxy = optional(string, "")
}) | `{}` | no |
| [s3\_config](#input\_s3\_config) | S3 integrator configuration | object({
attributes = optional(string)
bucket = optional(string)
endpoint = optional(string)
experimental-delete-older-than-days = optional(number)
path = optional(string)
region = optional(string)
s3-api-version = optional(string)
s3-uri-style = optional(string)
storage-class = optional(string)
tls-ca-chain = optional(string)
}) | `{}` | no |
| [s3\_revision](#input\_s3\_revision) | Charm revision for s3-integrator | `number` | `null` | no |
diff --git a/terraform/products/charmed-spark-3.5/locals.tf b/terraform/products/charmed-spark-3.5/locals.tf
index 8719a196..7b7df5ad 100644
--- a/terraform/products/charmed-spark-3.5/locals.tf
+++ b/terraform/products/charmed-spark-3.5/locals.tf
@@ -3,17 +3,17 @@
locals {
revisions = {
- history_server = 96
- integration_hub = 119
- kyuubi = 146
- kyuubi_users = 774
- metastore = 774
- zookeeper = 78
- data_integrator = 362
- s3 = 330
- ssc = 586
- azure_storage = 270
- grafana_agent = 164
+ history_server = 96
+ integration_hub = 119
+ kyuubi = 146
+ kyuubi_users = 774
+ metastore = 774
+ zookeeper = 78
+ data_integrator = 362
+ s3 = 330
+ ssc = 586
+ azure_storage = 270
+ opentelemetry_collector = 162
# TODO: bump the revision to 1/stable when both of the following issue gets fixed:
# https://github.com/canonical/cos-configuration-k8s-operator/issues/128
# https://github.com/canonical/cos-configuration-k8s-operator/issues/84
diff --git a/terraform/products/charmed-spark-3.5/variables.tf b/terraform/products/charmed-spark-3.5/variables.tf
index 943e5354..9a78051e 100644
--- a/terraform/products/charmed-spark-3.5/variables.tf
+++ b/terraform/products/charmed-spark-3.5/variables.tf
@@ -63,8 +63,8 @@ variable "data_integrator_revision" {
default = null
}
-variable "grafana_agent_revision" {
- description = "Charm revision for grafana-agent-k8s"
+variable "opentelemetry_collector_revision" {
+ description = "Charm revision for opentelemetry-collector-k8s"
type = number
default = null
}