fix: replay channel state on SPA reconnect #61
@@ -15,7 +15,9 @@ WORKDIR /src
|
||||
COPY go.mod go.sum ./
|
||||
RUN go mod download
|
||||
COPY . .
|
||||
COPY --from=web-builder /web/dist/ web/dist/
|
||||
# Create placeholder files so //go:embed dist/* in web/embed.go resolves
|
||||
# without depending on the web-builder stage (lint should fail fast)
|
||||
RUN mkdir -p web/dist && touch web/dist/index.html web/dist/style.css web/dist/app.js
|
||||
RUN make fmt-check
|
||||
RUN make lint
|
||||
|
||||
|
||||
@@ -1854,9 +1854,11 @@ The Dockerfile is a four-stage build:
|
||||
1. **web-builder**: Installs Node dependencies and compiles the SPA (JSX →
|
||||
bundled JS via esbuild) into `web/dist/`
|
||||
2. **lint**: Runs formatting checks and golangci-lint against the Go source
|
||||
(with the built SPA assets copied in)
|
||||
(uses empty placeholder files for `web/dist/` so it runs independently of
|
||||
web-builder for fast feedback)
|
||||
3. **builder**: Runs tests and compiles static `neoircd` and `neoirc-cli`
|
||||
binaries (CLI built to verify compilation, not included in final image)
|
||||
binaries with the real SPA assets from web-builder (CLI built to verify
|
||||
compilation, not included in final image)
|
||||
4. **final**: Minimal Alpine image with only the `neoircd` binary
|
||||
|
||||
### Binary
|
||||
|
||||
Reference in New Issue
Block a user