# 2026-03-09 # pg-query.tf — функция pg-query: читает записи из PostgreSQL. # Код: code/handler.py + code/requirements.txt # # Использование: # terraform apply # curl -s -X POST $(terraform output -raw trigger_url) -d '{}' data "archive_file" "handler_pg_query" { type = "zip" source_dir = "${path.module}/code" output_path = "${path.module}/dist/handler.zip" } resource "sless_function" "pg_query" { name = "pg-query" runtime = "python3.11" entrypoint = "handler.handle" memory_mb = 128 timeout_sec = 30 # DSN для подключения к postgres внутри кластера # Хост: postgres.sless.svc.cluster.local (Service в namespace sless) env_vars = { PG_DSN = "postgres://sless:sless-pg-password@postgres.sless.svc.cluster.local:5432/sless?sslmode=disable" } code_path = data.archive_file.handler_pg_query.output_path code_hash = filesha256("${path.module}/code/handler.py") } resource "sless_trigger" "pg_query_http" { name = "pg-query-http" type = "http" function = sless_function.pg_query.name } output "function_phase" { value = sless_function.pg_query.phase } output "function_image" { value = sless_function.pg_query.image_ref } output "trigger_url" { value = sless_trigger.pg_query_http.url }