Files
FTStore/.dockerignore
T
Felitendo 03f6ef7c8b feat(web): sign the Manager build the landing page hands out
The page used to append the seed to the Manager IPA and hand that
straight to the visitor. iOS verifies a bundle's code signature before
an over-the-air install completes, so that build was refused at the
install sheet and everyone needed a second signing tool to finish the
job.

The install endpoint now takes the certificate, the provisioning
profile and the password, seeds the IPA, signs it with zsign, and parks
the result in a slot the phone collects over itms-services. Ordering
matters: the seed goes in before signing, because signing is what seals
the bundle.

The certificate exists only as files in a temp directory removed in a
finally block, and the signed build that embeds it expires after
minutes and is swept on every write. The slot token is the only way to
reach it, and anything else answers 404.

zsign is compiled from the monorepo's own manager/Zsign in a build
stage, so the server signs with the same code the Manager signs with on
device. That moves the app image's build context to the repository
root; a root .dockerignore keeps the context to web/ and manager/Zsign,
and the workflows rebuild when either changes. Dockerfile.worker still
builds from web/ and signs nothing.
2026-08-05 08:31:15 +02:00

26 lines
716 B
Plaintext

# Build context for web/Dockerfile, which builds from the repository root so it
# can compile zsign out of manager/Zsign. Everything is excluded and the two
# directories the image actually needs are added back — without this the context
# would be the whole monorepo, ios/ and admin/ included.
#
# web/Dockerfile.worker still builds with web/ as its context and uses
# web/.dockerignore instead.
*
!web
!manager/Zsign
# Nothing below here belongs in an image, and the re-includes above would
# otherwise drag it in.
**/node_modules
**/.next
**/.git
web/.env
web/.env*.local
web/tsconfig.tsbuildinfo
manager/Zsign/.build
manager/Zsign/bin
manager/Zsign/test
manager/Zsign/build/windows
manager/Zsign/build/macos