From 3c72b8c0c3d7aec9b354d5a09085e0b3b6b424a1 Mon Sep 17 00:00:00 2001 From: Khinshan Khan Date: Tue, 1 Apr 2025 23:08:48 -0400 Subject: [PATCH 1/3] use make in docker build to properly get buildinfo --- Dockerfile | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/Dockerfile b/Dockerfile index 8741a99..3fd649d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,10 +1,7 @@ FROM golang:alpine AS builder -RUN apk --update add ca-certificates +RUN apk --update add ca-certificates git make bash WORKDIR /app COPY . ./ RUN go mod tidy -ENV DISCORD_BOT_TOKEN="" -ENV GIT_COMMIT="" -ENV BUILD_DATE="" -RUN go build -ldflags="-s -w -X main.CommitHash=$GIT_COMMIT -X main.BuildDate=$BUILD_DATE" -o bin/swiftspiracybot cmd/bot/main.go -ENTRYPOINT ["bin/swiftspiracybot"] +RUN make bot +ENTRYPOINT ["bin/bot"] From 37ea337aadc6711d9d7c0fc2c895284ace27146f Mon Sep 17 00:00:00 2001 From: Khinshan Khan Date: Tue, 1 Apr 2025 23:23:30 -0400 Subject: [PATCH 2/3] fancy multi stage builder pattern --- Dockerfile | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 3fd649d..542b47f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,15 @@ FROM golang:alpine AS builder RUN apk --update add ca-certificates git make bash + WORKDIR /app COPY . ./ + RUN go mod tidy RUN make bot -ENTRYPOINT ["bin/bot"] + +FROM alpine +RUN apk --no-cache add ca-certificates + +COPY --from=builder /app/bin/bot /bot + +ENTRYPOINT ["/bot"] From 704e22f3e16cfe0dd022705f745a275ad2e61418 Mon Sep 17 00:00:00 2001 From: Khinshan Khan Date: Tue, 1 Apr 2025 23:24:01 -0400 Subject: [PATCH 3/3] docker env comments must be separated from value --- .env.sample | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.env.sample b/.env.sample index 76ee09e..5ab896c 100644 --- a/.env.sample +++ b/.env.sample @@ -5,7 +5,8 @@ DISCORD_CHANNEL_ID=your-channel-id-here # Timing configuration SEND_MESSAGE_INTERVAL_MIN=5 SEND_MESSAGE_INTERVAL_MAX=10 -SEND_MESSAGE_UNIT=second # "second" | "seconds" | "minute" | "minutes" | "millisecond" | "milliseconds" +# "second" | "seconds" | "minute" | "minutes" | "millisecond" | "milliseconds" +SEND_MESSAGE_UNIT=second # Delay before deleting a conspiracy message (eg "3s", "500ms", "1m") DELETE_CONSPIRACY_DELAY=3s