Objective: Fedora Modularization, Prototype Phase
Also known as: the Let's Get Real Phase, or, Less Talk, More... Modules
Goal
The goal of this phase is to deliver a functional implementation of modular Fedora. We will be able to create, demonstrate, and deploy Fedora-based solutions made from independent modules which can move at their own paces yet still be trusted to work together and to be kept secure.
Logic Model
The basic idea: planning flows from right to left, and actual effort back from left to right. To the left of the double line is stuff we can actually do; to the right of that line, stuff we expect to be true as a result. See this blog post for more on this planning tool.
Todo: expand Activities, fill out Resources
More Details
See Modularization for background and oh so many details.
Deliverables
(outputs go here; connect to outcomes)
New Charter for Working Groups
(preamble)
Base Working Group
(describe)
- Define the base / core module
- Develop a fedora minimal spin?
- as a way to provide a goal
- container
- bootable
- ongoing maintenance of this
- Maximum size of base is 50mb (semi-arbitrary target) -- “because reasons!”
- 50mb installed size
- Requires dependency minimization work to be done across the package set
- Constant vigilance against dependency creep
- Members? TBD
Some specifics:
- Create pagure repo for experimentation with specs and rpms should
- COPR build repo
- Specific changes proposed to and ratified by FESCo (FPC?)
- Proven packagers to make changes to all affected packages in Rawhide
- Monitor changes to packages to ensure no “growth”
Environments and Stacks Working Group
(describe)
- Change WG to require a member of Fedora Rel-Eng and Fedora Security Team
- Phase 1 (Roughly until F24 release)
- Figures out what a “module” actually is in practice
- Required stakeholders
- Fedora Release Engineering
- Fedora Security Team
- Base WG
- Creates whatever tools needed to produce and use modules
- using existing tooling and systems where possible
- rely on Fedora Release Engineering for changes to infrastructure where required
- Fedora Infrastructure may also need changes
- Defines & creates demo modules other than base
- Phase 2 (F25 timeframe)
- Defines guidelines for module definition
- Approved and ratified by FeSCO
- Changes to packaging guidelines as needed
- Approved and ratified by FPC
- Module definition storage and hosting
- relies on implementation by Fedora Release Engineering
- CI infrastructure for modules, relies on work by
- Fedora Infrastructure
- Fedora QA
- Fedora Release Engineering
- Defines guidelines for module definition
- Phase 3 (ongoing)
- After all this is done, become some sort of Fedora Module Guidelines Committee in parallel with (or as part of) FPC
- Actually, parallel to Phase 1 & 2
Objective Lead
Timeframe
History
(link to previous phases, note any big updates here)