Provisioning a media workload, and what the record says
001-dmf-demo-github-preview-landscape-v15.mp4
Independent exploratory project.
dmfdeployis not affiliated with, endorsed by, sponsored by, or otherwise connected to the European Broadcasting Union (EBU). References to EBU publications, including the Dynamic Media Facility reference architecture, are for technical context and vocabulary alignment only.
dmfdeploy is an open source experiment. It studies ideas from the
EBU Dynamic Media Facility publications on commodity
infrastructure: k3s, Ansible, NetBox, AWX, Authentik, OpenBao, and a React
operator console. A Day-0 installer container takes a blank ARM64 node toward a
small, reproducible media-operations stack. The stack covers identity, secrets
custody, a source-of-truth inventory, and a catalog of deployable media
functions.
Proven so far (first-party): NMOS IS-04/05 deploys and runs on commodity ARM k3s. The platform's catalog control chain drives it end to end, from the console through AWX and Helm to the lifecycle state in NetBox. The larger claim is that a stranger can reproduce this, and v0.1 is working to show it. For the full argument, see the thesis one-pager.
What v0.1 does not claim: production ST 2110, PTP, or multicast correctness, real-time media-plant behavior, multi-node high availability, cross-site federation, or performance numbers. Single-node is the proof surface. The rest is named future work, and this page doesn't claim it works today.
| You are… | Go to |
|---|---|
| Curious or evaluating: "What is this, and does it work?" | THESIS → dmf-init (the Day-0 installer) |
| A potential contributor | JOURNEY → CONTRIBUTING → Issues + project board |
| Working here with AI agents | WORKING-MODEL: how Issues, milestones, the board, Discussions, and the doc rules fit together |
dmfdeploy is the front door. It's
the umbrella repo, with the consolidated knowledge base, the decision record
(ADRs), and cross-repo coordination. The eight dmf-* repos are the
components. Each README says what the component does and links back to the
umbrella.
- One backlog: umbrella Issues. A milestone means an issue is scheduled. An issue opened in a component repo is triaged within about a week: it's closed, or linked to an umbrella issue where the work continues.
- Questions and proposals: umbrella Discussions, for Q&A, early ideas, and the RFC that comes before a cross-cutting ADR.
- PRs: Conventional Commits, DCO sign-off, and rebase merges. A PR merges
automatically once its required reviews and checks pass, unless it's a
draft or carries the
holdlabel. - Corrections: CORRECTIONS logs each public statement that turned out to be wrong, with the correct version.
- Built with AI agents: agents build much of the platform under the maintainer's direction. That's deliberate, and JOURNEY documents it as a method.
Licensed Apache-2.0.