feat: provider v0.1.10 — source_dir (zip внутри провайдера), убран archive провайдер из всех примеров

This commit is contained in:
“Naeel”
2026-03-09 17:45:45 +04:00
parent 6e236e5998
commit 5f913e9f25
16 changed files with 148 additions and 170 deletions
+1 -5
View File
@@ -19,11 +19,7 @@ terraform {
required_providers {
sless = {
source = "terra.k8c.ru/naeel/sless"
version = "~> 0.1.9"
}
archive = {
source = "hashicorp/archive"
version = "~> 2.0"
version = "~> 0.1.10"
}
}
}
+2 -10
View File
@@ -1,14 +1,7 @@
# Создано: 2026-03-09
# Создано: 2026-03-09 / Изменено: 2026-03-09
# time-display.tf — HTTP-функция, доступная по URL после apply.
# Получает результат джоба (из time-getter.tf) через переменную окружения JOB_TIME.
# Упаковываем код функции в zip для загрузки
data "archive_file" "time_display_zip" {
type = "zip"
source_dir = "${path.module}/code/time_display"
output_path = "${path.module}/dist/time_display.zip"
}
# HTTP-функция — отвечает на запросы по URL из outputs.tf
resource "sless_function" "time_display" {
name = "simple-node-time-display" # уникальное имя в namespace
@@ -22,8 +15,7 @@ resource "sless_function" "time_display" {
JOB_TIME = sless_job.run_getter.message
}
code_path = data.archive_file.time_display_zip.output_path
code_hash = filesha256("${path.module}/code/time_display/time_display.js") # для пересборки при изменении кода
source_dir = "${path.module}/code/time_display"
depends_on = [sless_job.run_getter] # ждём завершения джоба перед деплоем функции
}
+2 -10
View File
@@ -1,15 +1,8 @@
# Создано: 2026-03-09
# Создано: 2026-03-09 / Изменено: 2026-03-09
# time-getter.tf — скрипт который запускается ОДИН РАЗ при terraform apply.
# После запуска его результат доступен через: sless_job.run_getter.message
# Смотри time-display.tf — там этот результат передаётся в функцию.
# Упаковываем код скрипта в zip для загрузки
data "archive_file" "time_getter_zip" {
type = "zip"
source_dir = "${path.module}/code/time_getter"
output_path = "${path.module}/dist/time_getter.zip"
}
# Функция для скрипта — без HTTP-триггера, вызывается только через джоб ниже
resource "sless_function" "time_getter" {
name = "simple-node-time-getter" # уникальное имя в namespace
@@ -17,8 +10,7 @@ resource "sless_function" "time_getter" {
entrypoint = "time_getter.getTime" # файл.функция в code/time_getter/
memory_mb = 64
code_path = data.archive_file.time_getter_zip.output_path
code_hash = filesha256("${path.module}/code/time_getter/time_getter.js") # для пересборки при изменении кода
source_dir = "${path.module}/code/time_getter"
}
# Джоб — запускает функцию time_getter один раз прямо при apply.