From dd8fdd8c8c799c90b25bf3db1ede7c5e1b705147 Mon Sep 17 00:00:00 2001 From: Ben Johnson Date: Sat, 17 Apr 2021 09:12:38 -0600 Subject: [PATCH] Reduce binary size --- .github/workflows/release.linux.yml | 2 +- .github/workflows/release.linux_static.yml | 2 +- Dockerfile | 2 +- Makefile | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release.linux.yml b/.github/workflows/release.linux.yml index 358b240..0c10cfc 100644 --- a/.github/workflows/release.linux.yml +++ b/.github/workflows/release.linux.yml @@ -52,7 +52,7 @@ jobs: mkdir -p dist cp etc/litestream.yml etc/litestream.service dist cat etc/nfpm.yml | LITESTREAM_VERSION=${{ steps.release.outputs.tag_name }} envsubst > dist/nfpm.yml - CGO_ENABLED=1 go build -ldflags "-X 'main.Version=${{ steps.release.outputs.tag_name }}'" -o dist/litestream ./cmd/litestream + CGO_ENABLED=1 go build -ldflags "-s -w -X 'main.Version=${{ steps.release.outputs.tag_name }}'" -o dist/litestream ./cmd/litestream cd dist tar -czvf litestream-${{ steps.release.outputs.tag_name }}-${{ env.GOOS }}-${{ env.GOARCH }}${{ env.GOARM }}.tar.gz litestream diff --git a/.github/workflows/release.linux_static.yml b/.github/workflows/release.linux_static.yml index 1bcfd8f..ed92c9e 100644 --- a/.github/workflows/release.linux_static.yml +++ b/.github/workflows/release.linux_static.yml @@ -45,7 +45,7 @@ jobs: run: | rm -rf dist mkdir -p dist - CGO_ENABLED=1 go build -ldflags "-w -extldflags "-static" -X 'main.Version=${{ steps.release.outputs.tag_name }}'" -tags sqlite_omit_load_extension -o dist/litestream ./cmd/litestream + CGO_ENABLED=1 go build -ldflags "-s -w -extldflags "-static" -X 'main.Version=${{ steps.release.outputs.tag_name }}'" -tags sqlite_omit_load_extension -o dist/litestream ./cmd/litestream cd dist tar -czvf litestream-${{ steps.release.outputs.tag_name }}-${{ env.GOOS }}-${{ env.GOARCH }}${{ env.GOARM }}-static.tar.gz litestream diff --git a/Dockerfile b/Dockerfile index a70658d..58290f2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,7 +3,7 @@ WORKDIR /src/litestream COPY . . RUN --mount=type=cache,target=/root/.cache/go-build \ --mount=type=cache,target=/go/pkg \ - go build -ldflags '-w -extldflags "-static"' -tags sqlite_omit_load_extension -o /usr/local/bin/litestream ./cmd/litestream + go build -ldflags '-s -w -extldflags "-static"' -tags sqlite_omit_load_extension -o /usr/local/bin/litestream ./cmd/litestream FROM alpine COPY --from=builder /usr/local/bin/litestream /usr/local/bin/litestream diff --git a/Makefile b/Makefile index be689a9..c5058cd 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,7 @@ ifndef LITESTREAM_VERSION $(error LITESTREAM_VERSION is undefined) endif mkdir -p dist - go build -v -ldflags "-X 'main.Version=${LITESTREAM_VERSION}'" -o dist/litestream ./cmd/litestream + go build -v -ldflags "-s -w -X 'main.Version=${LITESTREAM_VERSION}'" -o dist/litestream ./cmd/litestream gon etc/gon.hcl mv dist/litestream.zip dist/litestream-${LITESTREAM_VERSION}-darwin-amd64.zip openssl dgst -sha256 dist/litestream-${LITESTREAM_VERSION}-darwin-amd64.zip