mirror of
https://github.com/hanzoai/team.git
synced 2026-09-30 01:57:35 +00:00
The gate failed on `[build failed]` for symbols that are in this tree. Upstream publishes server/public and pins v0.4.0 of it; we changed server/public, so anything that reads the pin compiles against a release with no HanzoSettings, no ServiceHanzo, no UserAuthServiceHanzo. The workspace is what makes ./public mean this tree, and it was ignored — so `go build`, `go test`, the gate and the image each had to arrange it privately, and the one that did not simply failed. Tracking it states the fact once. The image build no longer arranges anything. Also: -tags production. Without it server/public/model selects the DEV service environment through a build constraint, and a shipped binary points at dev telemetry and licensing while looking entirely normal. The runtime tree — data, logs, config, plugins, client/plugins — is made in a stage that has a shell, because distroless does not and the server has nowhere to write without them. The document-extraction binaries are dropped rather than carried. pdftotext wants GLIBC_2.38 and libstdc++ on a 2.36 base that has no libstdc++ at all; wvText is a shell script and there is no shell. The library COPYs beside them read /usr/lib while Ubuntu keeps those under /usr/lib/x86_64-linux-gnu, and a --from glob matching nothing is a silent no-op — so upstream's image ships five binaries with no libraries and reports success. Restoring extraction needs a base that can run it; that is its own decision. .dockerignore, because .git alone is 1.2 GiB of context and node_modules is a working tree's results standing in for the build's. Co-authored-by: Hanzo Dev <[email protected]>
13 lines
456 B
Plaintext
13 lines
456 B
Plaintext
# The build context is the source and nothing else.
|
|
#
|
|
# .git alone is 1.2 GiB here, and every byte of it is uploaded to the builder
|
|
# before the first instruction runs.
|
|
.git
|
|
|
|
# Build output and installed dependencies are REPRODUCED by the build. Sending a
|
|
# working tree's copies makes the image depend on the machine that built it —
|
|
# and `npm ci` and `go build` would then be layering onto someone else's results.
|
|
**/node_modules
|
|
webapp/channels/dist
|
|
|