Draft separation of Server Role requirements from criteria

Adam Williamson adamwill at fedoraproject.org
Sat Jan 24 00:49:39 UTC 2015


Hi, folks!

For F21 we stuffed the functional requirements for the sole Role 
(domain controller) into the release criteria. But we all agreed this 
was kinda sucky and wouldn't scale, and they should be split out 
somehow.

Here's my proposal for 'somehow'.

At first I was thinking of a sort of general 'role definition' wiki 
page, but when I sat down to draft one I couldn't really think of much 
that would go on one *besides* the functional requirements, so I 
figured I'd keep it simple and just draft a template for requirements.

So, my draft consists of a template:

https://fedoraproject.org/wiki/User:Adamwill/Draft_role_requirements_template

an example implementation:

https://fedoraproject.org/wiki/User:Adamwill/Draft_domain_controller_role_requirements

a category page:

https://fedoraproject.org/wiki/Category:Server_role_requirements

which also acts as a short overall explanation of the 'requirements' 
system, and a proposal for the release criteria. We'd drop all the 
domain controller stuff, and add the following criteria:

Alpha
-----

* The [[:Category:Server_role_requirements|core requirements]] for all 
Featured Server Roles must be met, but it is acceptable if moderate 
workarounds are necessary to achieve this

footnote #1: Featured roles - [[FIXME|this page]] contains the list of 
Featured server roles
footnote #2: Moderate workarounds? - For instance, if a service needs 
to be manually enabled or a configuration file minimally tweaked, this 
is acceptable.

Beta
----

* The [[:Category:Server_role_requirements|core requirements]] for all 
Featured Server Roles must be met, without any workarounds being 
necessary
* The [[:Category:Server_role_requirements|other requirements]] for 
all Featured Server Roles must be met, but it is acceptable if 
moderate workarounds are necessary to achieve this

footnote #1: Workarounds - This means the role must meet its core 
requirements, i.e. be broadly usable for its intended purpose, after 
correct deployment and configuration via the role mechanism, but 
moderate workarounds as described in the [[BLAH|Alpha criterion]] are 
acceptable if necessary to fulfill the full set of requirements.

Final
-----

* All [[:Category:Server_role_requirements|requirements]] for all 
Featured Server Roles must be met, without any workarounds being 
necessary

The FIXME indicates we also need some kind of place where we define 
which server roles are 'Featured', which AFAIK we don't at present.

In case anyone's wondering why I didn't simply have Alpha, Beta and 
Final requirements for each role, I considered that, but it seemed a 
bit too tightly couple to a particular release process, when we've 
discussed changing the Server release process in future. I quite like 
the way this proposal puts the things together; all the concepts make 
sense separately, for me. It makes sense just thinking about a Server 
product, whatever its release process, that Roles would have the two 
levels of requirements specified in the proposal ("Core" and regular). 
And then as a separate matter it makes sense (to me) to enforce them 
at the Alpha, Beta and Final points of our *current* release process 
in the way proposed above.

What do folks think of this general proposal? Thanks! We can also 
discuss it at the meeting next week if folks want to.

Note, the actual requirements listed on the domain controller page are 
copy/pasted straight out of the F21 criteria; we can certainly tweak 
and extend those, but please if you want to discuss that make it a 
separate thread, the intent here is for us to discuss this *framework* 
for role requirements and hooking them into the release criteria.
-- 
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Twitter: AdamW_Fedora | XMPP: adamw AT happyassassin . net
http://www.happyassassin.net



More information about the server mailing list