terraform-contour-mirror/modules/k8s-secrets/main.tf
kochetkov.s cd68e73e40 feat: Add Terraform infrastructure for pulse project
- Add modules: yc-s3, yc-postgresql, k8s-namespace, k8s-secrets
- Add live configuration for stage environment
- Add GitLab CI with downstream pipelines
- Implement best practices from theory.md
2026-01-19 15:15:14 +03:00

57 lines
1.4 KiB
HCL

# Секрет для доступа к Docker Hub (Yandex Registry)
resource "kubernetes_secret" "dockerhub" {
metadata {
name = "dockerhub"
namespace = var.namespace
}
type = "kubernetes.io/dockerconfigjson"
data = {
".dockerconfigjson" = jsonencode({
auths = {
"${var.docker_registry_url}" = {
username = var.docker_registry_username
password = var.docker_registry_password
auth = base64encode("${var.docker_registry_username}:${var.docker_registry_password}")
}
}
})
}
}
# Секрет для доступа к S3
resource "kubernetes_secret" "pulse_s3" {
metadata {
name = "pulse-s3-secret"
namespace = var.namespace
}
type = "Opaque"
data = {
access_key = base64encode(var.s3_access_key)
secret_key = base64encode(var.s3_secret_key)
bucket = base64encode(var.s3_bucket_name)
endpoint = base64encode(var.s3_endpoint)
}
}
# Секрет для доступа к PostgreSQL
resource "kubernetes_secret" "pulse_postgresql" {
metadata {
name = "pulse-postgresql-secret"
namespace = var.namespace
}
type = "Opaque"
data = {
host = base64encode(var.db_host)
port = base64encode(tostring(var.db_port))
database = base64encode(var.db_name)
user = base64encode(var.db_user)
password = base64encode(var.db_password)
}
}