skip the swagger step altogether actually, it's already done by goreleaser anyway

This commit is contained in:
tobi 2025-02-26 20:51:08 +01:00
commit 98928c3de7

View file

@ -1,19 +1,7 @@
# syntax=docker/dockerfile:1.3 # syntax=docker/dockerfile:1.3
# Dockerfile reference: https://docs.docker.com/engine/reference/builder/ # Dockerfile reference: https://docs.docker.com/engine/reference/builder/
# stage 1: generate up-to-date swagger.yaml to put in the final container # stage 1: generate the web/assets/dist bundles
FROM --platform=${BUILDPLATFORM} golang:1.23-alpine AS swagger
COPY go.mod /go/src/github.com/superseriousbusiness/gotosocial/go.mod
COPY go.sum /go/src/github.com/superseriousbusiness/gotosocial/go.sum
COPY cmd /go/src/github.com/superseriousbusiness/gotosocial/cmd
COPY internal /go/src/github.com/superseriousbusiness/gotosocial/internal
COPY vendor /go/src/github.com/superseriousbusiness/gotosocial/vendor
WORKDIR /go/src/github.com/superseriousbusiness/gotosocial
RUN ./vendor/github.com/go-swagger/go-swagger/cmd/swagger generate spec -o /go/src/github.com/superseriousbusiness/gotosocial/swagger.yaml --scan-models
# stage 2: generate the web/assets/dist bundles
FROM --platform=${BUILDPLATFORM} node:18-alpine AS bundler FROM --platform=${BUILDPLATFORM} node:18-alpine AS bundler
COPY web web COPY web web
@ -22,7 +10,7 @@ RUN yarn --cwd ./web/source install && \
yarn --cwd ./web/source build && \ yarn --cwd ./web/source build && \
rm -rf ./web/source rm -rf ./web/source
# stage 3: build the executor container # stage 2: build the executor container
FROM --platform=${TARGETPLATFORM} alpine:3.20 as executor FROM --platform=${TARGETPLATFORM} alpine:3.20 as executor
# switch to non-root user:group for GtS # switch to non-root user:group for GtS
@ -45,7 +33,7 @@ COPY --chown=1000:1000 gotosocial /gotosocial/gotosocial
# copy over the web directories with templates, assets etc # copy over the web directories with templates, assets etc
COPY --chown=1000:1000 --from=bundler web /gotosocial/web COPY --chown=1000:1000 --from=bundler web /gotosocial/web
COPY --chown=1000:1000 --from=swagger /go/src/github.com/superseriousbusiness/gotosocial/swagger.yaml web/assets/swagger.yaml COPY --chown=1000:1000 ./web/assets/swagger.yaml /gotosocial/web/assets/swagger.yaml
VOLUME [ "/gotosocial/storage", "/gotosocial/.cache" ] VOLUME [ "/gotosocial/storage", "/gotosocial/.cache" ]
ENTRYPOINT [ "/gotosocial/gotosocial", "server", "start" ] ENTRYPOINT [ "/gotosocial/gotosocial", "server", "start" ]