Files
mrcharles 10e2b7c7ed feat: add FX Cloudron package (DevOps-Tools) [#640]
FX 0.9.48 ("poor man's function as a service") as the 13th package:
pre-compiled goreleaser release binary with sha256 pin on
cloudron/base:4.0.0. fx is a CLI with no user concept, so the package
is a workstation: pinned binary + persistent workspace
(functions/ssh/kube) driven from the Cloudron web terminal, with an
auth-proxied landing page as the only HTTP surface (httpAuth proxy).
Deploys target remote Docker hosts over key-based SSH or Kubernetes
via FX_KUBECONF. Build green; runtime smoke (landing page, workspace
seeding, fx -v) green. Docs gardened to 13 packages.

Ticket: https://projects.knownelement.com/issues/640
2026-09-01 19:39:53 -05:00

26 lines
1.2 KiB
Markdown

# Changelog — FX Cloudron Package
## 1.0.0 (2026-09-01)
Initial Cloudron package for fx 0.9.48 (poor man's function as a
service).
- Pre-compiled-binaries pattern: upstream goreleaser release
`fx_0.9.48-alpha.d91a7a0_Tux_64-bit.tar.gz` (linux/amd64) downloaded
at build time behind a sha256 pin taken from the upstream
checksums.txt; `fx -v` runs inside the build as an executability gate.
- fx is a CLI with no daemon or UI: the package is an fx workstation —
pinned binary + persistent workspace (`functions/`, `ssh/`, `kube/`
under /app/data, with two upstream-shaped starter functions) — driven
from the Cloudron web terminal.
- No user concept → `httpAuth.type = proxy` gates a static landing/usage
page served on the HTTP port (also the platform health check); the
page server is the only long-running process.
- Deploys target remote Docker hosts over key-based SSH (Go-native SSH,
no openssh binary needed in the image) or Kubernetes via kubeconfig
(`FX_KUBECONF`); documented limitation: the app container has no
Docker daemon, so functions never run inside this app.
- Addons: `localstorage` only (workspace persistence; no database).
- Logo: 256x256 monogram generated for this package (upstream ships no
logo asset).