From 61bc17efee4f90ab6067bd6b66cd6b62a1e378fb Mon Sep 17 00:00:00 2001 From: Brandon Kalinowski Date: Mon, 8 Dec 2025 12:10:08 -0500 Subject: [PATCH] chore update Earthfile sonnet-4.5 --- Earthfile | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/Earthfile b/Earthfile index f6c3258..59e9ba9 100644 --- a/Earthfile +++ b/Earthfile @@ -15,22 +15,30 @@ tfgen: RUN curl -fsSL https://get.pulumi.com | HOME=${WORKING_DIR} sh -s -- --version "$(cat .pulumi/version)" RUN pulumi plugin install converter terraform 1.2.4 RUN go mod download - ENV PROVIDER_VERSION=1.0.0-beta.2 + ARG PROVIDER_VERSION=1.0.0-alpha.0+dev + ENV PROVIDER_VERSION=${PROVIDER_VERSION} + ENV LDFLAGS_STRIP_SYMBOLS="-s -w" ENV LDFLAGS_PROJ_VERSION="-X git.kalinow.ski/kiterun/pulumi-incus/provider/pkg/version.Version=${PROVIDER_VERSION}" + ENV LDFLAGS_UPSTREAM_VERSION="" + ENV LDFLAGS_EXTRAS="" + ENV LDFLAGS="${LDFLAGS_PROJ_VERSION} ${LDFLAGS_UPSTREAM_VERSION} ${LDFLAGS_EXTRAS} ${LDFLAGS_STRIP_SYMBOLS}" ENV PULUMI_CONVERT=1 - ENV PULUMI_CONVERT_EXAMPLES_CACHE_DIR=/go/src/git.kalinow.ski/kiterun/pulumi-incus/provider/.pulumi/examples-cache + ENV PULUMI_CONVERT_EXAMPLES_CACHE_DIR=/go/src/git.kalinow.ski/kiterun/pulumi-incus/.pulumi/examples-cache ENV PULUMI_DISABLE_AUTOMATIC_PLUGIN_ACQUISITION=1 ENV PULUMI_MISSING_DOCS_ERROR=false COPY --dir provider/resources.go provider/pkg . COPY provider/cmd/pulumi-tfgen-incus cmd/pulumi-tfgen-incus + COPY provider/cmd/pulumi-resource-incus/main.go cmd/pulumi-resource-incus/main.go RUN echo '{}' > cmd/pulumi-resource-incus/bridge-metadata.json - RUN go build -o /bin/pulumi-tfgen-incus -ldflags "${LDFLAGS_PROJ_VERSION}" ./cmd/pulumi-tfgen-incus + RUN go build -o /bin/pulumi-tfgen-incus -ldflags "${LDFLAGS_PROJ_VERSION} ${LDFLAGS_EXTRAS}" git.kalinow.ski/kiterun/pulumi-incus/provider/cmd/pulumi-tfgen-incus RUN /bin/pulumi-tfgen-incus schema --out cmd/pulumi-resource-incus + RUN VERSION=${PROVIDER_VERSION} go generate cmd/pulumi-resource-incus/main.go RUN sed -i -e 's/souce/source/g' cmd/pulumi-resource-incus/schema.json WORKDIR /go/src/git.kalinow.ski/kiterun/pulumi-incus # Now that the schema.json is generated, we can generate sdks RUN /bin/pulumi-tfgen-incus nodejs --out sdk/nodejs/ + RUN printf "module fake_nodejs_module // Exclude this directory from Go tools\n\ngo 1.17\n" > sdk/nodejs/go.mod SAVE ARTIFACT sdk/nodejs # nodejs builds the nodejs SDK using the generated tfgen file @@ -54,9 +62,15 @@ nodejs: # provider builds and publishes the provider binaries provider: FROM +tfgen + ARG PROVIDER_VERSION=1.0.0-alpha.0+dev + ENV PROVIDER_VERSION=${PROVIDER_VERSION} + ENV LDFLAGS_STRIP_SYMBOLS="-s -w" + ENV LDFLAGS_PROJ_VERSION="-X git.kalinow.ski/kiterun/pulumi-incus/provider/pkg/version.Version=${PROVIDER_VERSION}" + ENV LDFLAGS_UPSTREAM_VERSION="" + ENV LDFLAGS_EXTRAS="" + ENV LDFLAGS="${LDFLAGS_PROJ_VERSION} ${LDFLAGS_UPSTREAM_VERSION} ${LDFLAGS_EXTRAS} ${LDFLAGS_STRIP_SYMBOLS}" WORKDIR /go/src/git.kalinow.ski/kiterun/pulumi-incus/provider RUN mkdir -p /root/dist - COPY provider/cmd/pulumi-resource-incus/main.go cmd/pulumi-resource-incus/main.go COPY README.md LICENSE .. DO +BINARY --GOOS=linux --GOARCH=amd64 DO +BINARY --GOOS=linux --GOARCH=arm64 @@ -73,8 +87,9 @@ BINARY: FUNCTION ARG GOOS ARG GOARCH - RUN cd $WORKING_DIR/provider && GOOS=$GOOS GOARCH=$GOARCH CGO_ENABLED=0 go build \ - -o ../bin/$GOOS-$GOARCH/pulumi-resource-incus -ldflags "${LDFLAGS_PROJ_VERSION} -s -w" \ + ARG WORKING_DIR=/go/src/git.kalinow.ski/kiterun/pulumi-incus + RUN cd ${WORKING_DIR}/provider && GOOS=${GOOS} GOARCH=${GOARCH} CGO_ENABLED=0 go build \ + -o ../bin/${GOOS}-${GOARCH}/pulumi-resource-incus -ldflags "${LDFLAGS}" \ git.kalinow.ski/kiterun/pulumi-incus/provider/cmd/pulumi-resource-incus - RUN cd $WORKING_DIR && tar --gzip -cf /root/dist/pulumi-resource-incus-v${PROVIDER_VERSION}-$GOOS-$GOARCH.tar.gz \ - README.md LICENSE -C bin/$GOOS-$GOARCH . + RUN cd ${WORKING_DIR} && tar --gzip -cf /root/dist/pulumi-resource-incus-v${PROVIDER_VERSION}-${GOOS}-${GOARCH}.tar.gz \ + README.md LICENSE -C bin/${GOOS}-${GOARCH} .