ready
This commit is contained in:
parent
9293985003
commit
27a64afaec
5
.gitignore
vendored
5
.gitignore
vendored
@ -8,6 +8,7 @@
|
|||||||
*.dll
|
*.dll
|
||||||
*.so
|
*.so
|
||||||
*.dylib
|
*.dylib
|
||||||
|
*.sh
|
||||||
bin
|
bin
|
||||||
testbin/*
|
testbin/*
|
||||||
hack/local.env
|
hack/local.env
|
||||||
@ -40,3 +41,7 @@ terraform/provider/build/
|
|||||||
|
|
||||||
# Локальные артефакты упаковки функций
|
# Локальные артефакты упаковки функций
|
||||||
**/dist/
|
**/dist/
|
||||||
|
|
||||||
|
# Локальные тестовые файлы и логи прогонов
|
||||||
|
**/*.tf.disabled
|
||||||
|
.test-logs/
|
||||||
|
|||||||
19
README.md
19
README.md
@ -1,5 +1,23 @@
|
|||||||
# Примеры sless
|
# Примеры 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`.
|
Примеры показывают различные сценарии использования serverless функций через Terraform провайдер `terra.k8c.ru/naeel/sless`.
|
||||||
|
|
||||||
## Требования
|
## Требования
|
||||||
@ -14,6 +32,7 @@
|
|||||||
```hcl
|
```hcl
|
||||||
provider "sless" {
|
provider "sless" {
|
||||||
endpoint = "https://sless-api.kube5s.ru"
|
endpoint = "https://sless-api.kube5s.ru"
|
||||||
|
token = "dev-token-change-me"
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@ -8,7 +8,7 @@ terraform {
|
|||||||
required_providers {
|
required_providers {
|
||||||
sless = {
|
sless = {
|
||||||
source = "terra.k8c.ru/naeel/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
|
# Провайдер для управления serverless функциями через sless API
|
||||||
sless = {
|
sless = {
|
||||||
source = "terra.k8c.ru/naeel/sless"
|
source = "terra.k8c.ru/naeel/sless"
|
||||||
version = "~> 0.1.10"
|
version = "~> 0.1.11"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# sless провайдер подключается к API кластера.
|
# sless провайдер подключается к API кластера.
|
||||||
# В продакшне token следует передавать через TF_VAR или secrets.
|
|
||||||
provider "sless" {
|
provider "sless" {
|
||||||
endpoint = "https://sless-api.kube5s.ru"
|
endpoint = "https://sless-api.kube5s.ru"
|
||||||
token = "dev-token-change-me"
|
token = "dev-token-change-me"
|
||||||
|
|||||||
@ -19,7 +19,7 @@ terraform {
|
|||||||
required_providers {
|
required_providers {
|
||||||
sless = {
|
sless = {
|
||||||
source = "terra.k8c.ru/naeel/sless"
|
source = "terra.k8c.ru/naeel/sless"
|
||||||
version = "~> 0.1.10"
|
version = "~> 0.1.11"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -18,7 +18,7 @@ terraform {
|
|||||||
required_providers {
|
required_providers {
|
||||||
sless = {
|
sless = {
|
||||||
source = "terra.k8c.ru/naeel/sless"
|
source = "terra.k8c.ru/naeel/sless"
|
||||||
version = "~> 0.1.10"
|
version = "~> 0.1.11"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user