83c722b3

Author: Michael Lynch <git@mtlynch.io>

Committer: Michael Lynch <mtlynch@noreply.codeberg.org>

Deploy to Fly.io with a Nix-built image instead of a Dockerfile (#254)

Build the OCI image with dockerTools.streamLayeredImage (no Docker
daemon, so it works in the NixCI sandbox) and deploy it via a
deploy-to-fly package that pushes to registry.fly.io with skopeo and
runs `fly deploy --image`. The same package drives both NixCI
auto-deploys on master (nix-ci.nix) and manual `nix run .#deploy-to-fly`.

The image adds CA certificates, which the old Alpine image omitted, so
the app's HTTPS calls to S3 and SMTP have trust roots.

Remove the Dockerfile and the now-unused serve-docker and
enable-multiarch-docker scripts.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

Reviewed-on: https://codeberg.org/mtlynch/little-moments/pulls/254

Suite timing

Time to Start Worker time Duration Time to finish
Config 2s 25s 25s 27s
Eval 25s 1m05s 1m05s 1m30s
Build 37s 5m36s 1m06s 1m44s
Deploy 1m47s 1m05s 1m07s 2m55s
Suite 2s 8m12s 2m53s 2m55s

Timeline

0s20s40s1m1m20s1m40s2m2m20s2m40s