From c4559dd365a78159790b0eea84ac7a5a1428d857 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CNaeel=E2=80=9D?= Date: Wed, 11 Mar 2026 16:14:42 +0400 Subject: [PATCH] =?UTF-8?q?fix:=20go1.23=20build=20context=20=E2=80=94=20C?= =?UTF-8?q?OPY=20.=20/app/handler/=20=D0=B2=D0=BC=D0=B5=D1=81=D1=82=D0=BE?= =?UTF-8?q?=20COPY=20handler/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- deployments/k8s/operator.yaml | 2 +- examples/hello-go/code/greeting.go | 1 - examples/hello-go/main.tf | 2 +- internal/builder/context.go | 4 +++- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/deployments/k8s/operator.yaml b/deployments/k8s/operator.yaml index 77bf758..c059479 100644 --- a/deployments/k8s/operator.yaml +++ b/deployments/k8s/operator.yaml @@ -72,7 +72,7 @@ spec: containers: - name: operator # При обновлении версии оператора — менять тег здесь (не latest!) - image: naeel/sless-operator:v0.1.25 + image: naeel/sless-operator:v0.1.26 # Always — чтобы всегда тянуть по точному тегу (не кешировать старый) imagePullPolicy: Always ports: diff --git a/examples/hello-go/code/greeting.go b/examples/hello-go/code/greeting.go index c3554c8..a32106e 100644 --- a/examples/hello-go/code/greeting.go +++ b/examples/hello-go/code/greeting.go @@ -1,4 +1,3 @@ -package code // Изменено: 2026-03-11 // greeting.go — пример Go функции: возвращает приветствие. // diff --git a/examples/hello-go/main.tf b/examples/hello-go/main.tf index 0742783..137d8b2 100644 --- a/examples/hello-go/main.tf +++ b/examples/hello-go/main.tf @@ -5,7 +5,7 @@ terraform { required_providers { sless = { source = "terra.k8c.ru/naeel/sless" - version = "~> 0.1.13" + version = "~> 0.1.14" } } } diff --git a/internal/builder/context.go b/internal/builder/context.go index 766222a..5cccf0d 100644 --- a/internal/builder/context.go +++ b/internal/builder/context.go @@ -95,10 +95,12 @@ func generateDockerfile(runtime string, hasRequirements bool, hasPackageJSON boo // kaniko копирует пользовательский код в handler/ (package handler). // go build видит: /app/server.go + /app/handler/*.go под одним модулем sless/fn. // Если у пользователя есть go.mod — он кладётся в /app/handler/go.mod (игнорируется). + // COPY . /app/handler/ — пользовательские файлы лежат в корне tar-контекста (без prefix). + // kaniko не умеет переименовывать пути при COPY, поэтому копируем всё "." в handler/. content := fmt.Sprintf( "FROM %s AS builder\n"+ "WORKDIR /app\n"+ - "COPY handler/ /app/handler/\n"+ + "COPY . /app/handler/\n"+ "RUN CGO_ENABLED=0 go build -o /server .\n"+ "FROM alpine:3.20\n"+ "COPY --from=builder /server /server\n"+