chore update Earthfile

sonnet-4.5
This commit is contained in:
2025-12-08 12:10:08 -05:00
parent 54f0fdb6c9
commit 61bc17efee

View File

@@ -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} .