Files
sless/examples/hello-go/code/handler.go
T
“Naeel” a709b38f6b feat: go1.23 runtime support
- runtimes/go1.23/server.go: HTTP-wrapper + job-runner (SLESS_MODE=job)
- runtimes/go1.23/go.mod: module sless/fn (изолирует от корневого go.mod)
- runtimes/go1.23/Dockerfile: multi-stage build (golang:1.23-alpine → alpine:3.20)
- internal/builder/context.go: go1.23 в runtimeBaseImage + generateDockerfile
- controllers/functionjob_controller.go: go1.23 runner (nil cmd + SLESS_MODE=job env)
- api/v1alpha1/function_types.go: enum go1.21 → go1.23
- config/crd/bases/...: CRD обновлён
- terraform/provider: OneOf обновлён
- examples/hello-go: HTTP + job примеры на go1.23
- deployments/k8s/operator.yaml: v0.1.25
2026-03-11 15:40:47 +04:00

22 lines
790 B
Go

// Создано: 2026-03-11
// handler.go — пример Go serverless функции.
// Пакет должен называться handler, функция — Handle.
// event содержит тело POST запроса (распарсенный JSON) или метаданные GET (_path, _method, _query).
package handler
import "fmt"
// Handle — точка входа функции. Принимает event как map, возвращает любой тип (сериализуется в JSON).
func Handle(event map[string]interface{}) interface{} {
name, ok := event["name"].(string)
if !ok || name == "" {
name = "world"
}
return map[string]interface{}{
"message": fmt.Sprintf("Hello, %s! (Go 1.23)", name),
"runtime": "go1.23",
"event": event,
}
}