ready
This commit is contained in:
parent
9293985003
commit
27a64afaec
5
.gitignore
vendored
5
.gitignore
vendored
@ -8,6 +8,7 @@
|
||||
*.dll
|
||||
*.so
|
||||
*.dylib
|
||||
*.sh
|
||||
bin
|
||||
testbin/*
|
||||
hack/local.env
|
||||
@ -40,3 +41,7 @@ terraform/provider/build/
|
||||
|
||||
# Локальные артефакты упаковки функций
|
||||
**/dist/
|
||||
|
||||
# Локальные тестовые файлы и логи прогонов
|
||||
**/*.tf.disabled
|
||||
.test-logs/
|
||||
|
||||
19
README.md
19
README.md
@ -1,5 +1,23 @@
|
||||
# Примеры sless
|
||||
|
||||
## Что такое sless
|
||||
|
||||
**sless** — платформа для запуска serverless-функций в Kubernetes-кластере.
|
||||
|
||||
Код на Python или Node.js загружается в платформу, которая собирает Docker-образ, деплоит его в кластер и публикует HTTP-эндпоинт. Всё управляется через Terraform.
|
||||
|
||||
### Ресурсы
|
||||
|
||||
| Ресурс | Что делает |
|
||||
|---|---|
|
||||
| `sless_function` | Загружает код и собирает Docker-образ. Сама по себе не принимает запросы — нужен триггер или джоб |
|
||||
| `sless_trigger` | Публикует функцию — либо как HTTP-эндпоинт, либо по расписанию (cron) |
|
||||
| `sless_job` | Запускает функцию один раз (например, для инициализации БД) и ждёт результата |
|
||||
|
||||
**Типичный сценарий:** `sless_function` с кодом + `sless_trigger` с `type = "http"` → публичный URL вида `https://sless-api.kube5s.ru/fn/default/имя-функции`.
|
||||
|
||||
---
|
||||
|
||||
Примеры показывают различные сценарии использования serverless функций через Terraform провайдер `terra.k8c.ru/naeel/sless`.
|
||||
|
||||
## Требования
|
||||
@ -14,6 +32,7 @@
|
||||
```hcl
|
||||
provider "sless" {
|
||||
endpoint = "https://sless-api.kube5s.ru"
|
||||
token = "dev-token-change-me"
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
@ -8,7 +8,7 @@ terraform {
|
||||
required_providers {
|
||||
sless = {
|
||||
source = "terra.k8c.ru/naeel/sless"
|
||||
version = "~> 0.1.10"
|
||||
version = "~> 0.1.11"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,2 +0,0 @@
|
||||
# Временный файл для негативных тестов — не применяется через terraform
|
||||
# Тесты запускаются вручную с временным переименованием в .tf
|
||||
@ -14,13 +14,12 @@ terraform {
|
||||
# Провайдер для управления serverless функциями через sless API
|
||||
sless = {
|
||||
source = "terra.k8c.ru/naeel/sless"
|
||||
version = "~> 0.1.10"
|
||||
version = "~> 0.1.11"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# sless провайдер подключается к API кластера.
|
||||
# В продакшне token следует передавать через TF_VAR или secrets.
|
||||
provider "sless" {
|
||||
endpoint = "https://sless-api.kube5s.ru"
|
||||
token = "dev-token-change-me"
|
||||
|
||||
@ -19,7 +19,7 @@ terraform {
|
||||
required_providers {
|
||||
sless = {
|
||||
source = "terra.k8c.ru/naeel/sless"
|
||||
version = "~> 0.1.10"
|
||||
version = "~> 0.1.11"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -18,7 +18,7 @@ terraform {
|
||||
required_providers {
|
||||
sless = {
|
||||
source = "terra.k8c.ru/naeel/sless"
|
||||
version = "~> 0.1.10"
|
||||
version = "~> 0.1.11"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user