File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ # SPDX-License-Identifier: PMPL-1.0-or-later
2+ # stapeln.toml — Layer-based container build for phronesis
3+ #
4+ # stapeln builds containers as composable layers (German: "to stack").
5+ # Each layer is independently cacheable, verifiable, and signable.
6+
7+ [metadata ]
8+ name = " phronesis"
9+ version = " 0.1.0"
10+ description = " Phronesis — Elixir-based distributed consensus system"
11+ author = " Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk>"
12+ license = " PMPL-1.0-or-later"
13+ registry = " ghcr.io/hyperpolymath"
14+
15+ [build ]
16+ containerfile = " Containerfile"
17+ context = " ."
18+ runtime = " podman"
19+
20+ # Layer definitions — Elixir/Phoenix mix release pattern
21+ [layers .base ]
22+ description = " Chainguard wolfi-base image for Elixir build"
23+ from = " cgr.dev/chainguard/wolfi-base:latest"
24+ cache = true
25+ verify = true
26+
27+ [layers .build ]
28+ description = " Elixir/Erlang build dependencies and mix release"
29+ extends = " base"
30+ cache = true
31+
32+ [layers .mix-release ]
33+ description = " Compiled Elixir application release (_build/prod/rel/phronesis)"
34+ extends = " build"
35+ cache = false
36+
37+ [layers .runtime ]
38+ description = " Minimal runtime image with Erlang/OTP libraries"
39+ from = " cgr.dev/chainguard/wolfi-base:latest"
40+ cache = true
41+ verify = true
42+
43+ [layers .health ]
44+ description = " Health check: verifies phronesis application is started via RPC"
45+ extends = " runtime"
46+ cache = false
You can’t perform that action at this time.
0 commit comments