With beaker-system-scan scheduled to be split out as its own subproject,
I figured I would take another shot at coming up with a more useful
component list.
(FWIW, we may want to look at splitting beaker-wizard out into a
subproject, too)
Rather than the current component model, which is based mostly on "where
stuff runs", this is based more on functional divisions. I think this is
a better split, as adding a new piece of functionality will general
involve updating at least the web UI *and* the CLI, and often other
components as well (such as the scheduler or lab controller).
There are 16 proposed components, of which 12 related to different
functional areas, and the last 4 are for the cross cutting "make
everything else work" areas.
With this split, my intent is that we would mark a change based on its
primary goal, even if there were some incidental changes in other areas
as a result. Submission delegates, for example, is mostly about Job
Management & Reporting, even though it also has consequences for User &
Group Management and Automated Scheduling. The web UI modernisation
project would be marked as Server Infrastructure, etc.
The default component for untriaged bugs would be "General"
* User & Group Management
Interface and model for users & groups
* Distro Management & Reporting
Interface and model for distros (including distro import and
distroRequires)
* System Management & Reporting
Interface and model for systems (including loans and hostRequires)
* System Inventory Scan
Hardware scanner for inventory population
* System Provisioning
Bare metal provisioning of systems (including kickstart file
generation and power commands)
* Dynamic Virtualisation
Integration with an IaaS for provisioning
* Job Management & Reporting
Interface and model for jobs (etc)
* Automated Scheduling
Automated job scheduling
* Test Harness
beah and alternative harness support
* Log Management
Upload and handling of task logs (including retention tags)
* Task Library
The RPM based task library
* Task Creation Wizard
beaker-wizard
* Server Infrastructure
Common server components (including dependency updates)
* Client Infrastructure
Common client components (including dependency updates)
* General
Anything that genuinely spans multiple components or doesn't fit
anywhere else
* Project Infrastructure
Test infrastructure,
beaker-project.org, internal developer guides
Cheers,
Nick.
--
Nick Coghlan
Red Hat Infrastructure Engineering & Development, Brisbane
Testing Solutions Team Lead
Beaker Development Lead (
http://beaker-project.org/)