feat: demo managed functions with harbor-backed operator setup
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
# 2026-03-14
|
||||
# function.tf — ресурсы managed serverless функций для демонстрации.
|
||||
# Пользователь правит код в code/* и запускает terraform apply — провайдер сам пересобирает и выкатывает функции.
|
||||
|
||||
resource "sless_function" "event_writer" {
|
||||
name = "event-writer"
|
||||
runtime = "python3.11"
|
||||
entrypoint = "handler.handle"
|
||||
memory_mb = 128
|
||||
timeout_sec = 20
|
||||
|
||||
source_dir = "${path.module}/code/event-writer"
|
||||
|
||||
env_vars = {
|
||||
POSTGRES_DSN = var.pg_dsn
|
||||
DEFAULT_MESSAGE = var.writer_message
|
||||
}
|
||||
}
|
||||
|
||||
resource "sless_trigger" "event_writer_http" {
|
||||
name = "event-writer-http"
|
||||
type = "http"
|
||||
function = sless_function.event_writer.name
|
||||
enabled = true
|
||||
}
|
||||
|
||||
resource "sless_function" "event_monitor" {
|
||||
name = "event-monitor"
|
||||
runtime = "python3.11"
|
||||
entrypoint = "handler.handle"
|
||||
memory_mb = 128
|
||||
timeout_sec = 20
|
||||
|
||||
source_dir = "${path.module}/code/event-monitor"
|
||||
|
||||
env_vars = {
|
||||
POSTGRES_DSN = var.pg_dsn
|
||||
RABBITMQ_URL = var.rabbitmq_url
|
||||
}
|
||||
}
|
||||
|
||||
resource "sless_trigger" "event_monitor_cron" {
|
||||
name = "event-monitor-cron"
|
||||
type = "cron"
|
||||
function = sless_function.event_monitor.name
|
||||
enabled = true
|
||||
schedule = "*/1 * * * *"
|
||||
}
|
||||
|
||||
resource "sless_function" "event_cleaner" {
|
||||
name = "event-cleaner"
|
||||
runtime = "python3.11"
|
||||
entrypoint = "handler.handle"
|
||||
memory_mb = 128
|
||||
timeout_sec = 20
|
||||
|
||||
source_dir = "${path.module}/code/event-cleaner"
|
||||
|
||||
env_vars = {
|
||||
POSTGRES_DSN = var.pg_dsn
|
||||
}
|
||||
}
|
||||
|
||||
resource "sless_trigger" "event_cleaner_http" {
|
||||
name = "event-cleaner-http"
|
||||
type = "http"
|
||||
function = sless_function.event_cleaner.name
|
||||
enabled = true
|
||||
}
|
||||
|
||||
output "event_writer_url" {
|
||||
value = sless_trigger.event_writer_http.url
|
||||
}
|
||||
|
||||
output "event_cleaner_url" {
|
||||
value = sless_trigger.event_cleaner_http.url
|
||||
}
|
||||
Reference in New Issue
Block a user