diff --git a/.woodpecker/build.yaml b/.woodpecker/build.yaml index 28998c5..fe90d95 100644 --- a/.woodpecker/build.yaml +++ b/.woodpecker/build.yaml @@ -6,7 +6,15 @@ labels: platform: linux/arm64 steps: - - name: build + - name: build native image: golang:1.25 commands: - - go version + - go + - name: build image + image: plugins/kaniko + settings: + repo: brosner.dev/brosner/pecker + tags: latest + dockerfile: Dockerfile + no_push: true + diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..5aa9d91 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,21 @@ +FROM golang:1.25-alpine AS builder + +WORKDIR /app + +COPY go.* ./ +RUN go mod download || true + +COPY . . + +RUN CGO_ENABLED=0 GOOS=linux go build -o pecker . + +FROM alpine:latest + +RUN apk --no-cache add ca-certificates + +WORKDIR /root/ + +COPY --from=builder /app/pecker . + +CMD ["./pecker"] + diff --git a/main.go b/main.go new file mode 100644 index 0000000..c048119 --- /dev/null +++ b/main.go @@ -0,0 +1,7 @@ +package main + +import "fmt" + +func main() { + fmt.Println("hello world") +}