feat: provider v0.1.10 — source_dir (zip внутри провайдера), убран archive провайдер из всех примеров
This commit is contained in:
@@ -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"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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] # ждём завершения джоба перед деплоем функции
|
||||
}
|
||||
|
||||
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user