38 lines
1.0 KiB
HCL
38 lines
1.0 KiB
HCL
# 2026-03-08
|
|
# http.tf — HTTP-функция: принимает запросы, возвращает приветствие.
|
|
# Код: code/handler-http.js
|
|
#
|
|
# Использование:
|
|
# terraform apply
|
|
# curl -s -X POST $(terraform output -raw trigger_url) \
|
|
# -H 'Content-Type: application/json' -d '{"name":"Naeel"}'
|
|
|
|
data "archive_file" "handler_http" {
|
|
type = "zip"
|
|
source_file = "${path.module}/code/handler-http.js"
|
|
output_path = "${path.module}/handler-http.zip"
|
|
}
|
|
|
|
resource "sless_function" "hello_http" {
|
|
namespace = "default"
|
|
name = "hello-http"
|
|
runtime = "nodejs20"
|
|
entrypoint = "handler-http.handle"
|
|
memory_mb = 128
|
|
timeout_sec = 30
|
|
|
|
code_path = data.archive_file.handler_http.output_path
|
|
code_hash = data.archive_file.handler_http.output_md5
|
|
}
|
|
|
|
resource "sless_trigger" "hello_http" {
|
|
namespace = "default"
|
|
name = "hello-http-trigger"
|
|
type = "http"
|
|
function = sless_function.hello_http.name
|
|
}
|
|
|
|
output "trigger_url" {
|
|
value = sless_trigger.hello_http.url
|
|
}
|