Spins Process

From FedoraProject

(Difference between revisions)
Jump to: navigation, search
(Summary)
(add links for Trademark_approval_policy)
 
(24 intermediate revisions by 5 users not shown)
Line 1: Line 1:
= Spins Process =
 
 
 
== Summary ==
 
== Summary ==
  
# User submits a spin (kickstart and introduction) to the Spins SIG mailing list at fedora-spins -at- lists.fedoraproject.org, and creates a Spin Page (from the [[Spins_New_Spin_Page_Template|New Spin Page Template]]).
+
# User submits a spin (kickstart and introduction) that complies with the [[Spins_Guidelines|Spins Guidelines]] to the Spins SIG mailing list at [mailto:spins@lists.fedoraproject.org spins@lists.fedoraproject.org], and creates a Spin Page (from the [[Spins_New_Spin_Page_Template|New Spin Page Template]]), using a $name_Spin naming schema.
#* This page is added to category Incomplete_Spins.
+
#* Note that if several people need to work on the kickstart file, the source can be kept on the spin wiki page pending approval and addition to the git repo. People will not be given update access to the git repo until after their spin is approved by the Spins SIG (or board if there is a potential trademark issue).
#* When the page is ready for review, the page is added to category Spins_Ready_for_Wrangler
+
#* This page is added to category [[:Category:Spins_in_Development | Spins_in_Development]].
 +
#* When the page is ready for review, the page is added to category [[:Category:Spins_Ready_For_Wrangler | Spins_Ready_For_Wrangler]]
 
# Spins Wrangler reviews the Spin Page
 
# Spins Wrangler reviews the Spin Page
#* If accepted, adds it to category Spins_Ready_for_SIG and removes the page from categories Incomplete_Spins and Spins_Ready_for_Wrangler
+
#* If accepted, adds it to category [[:Category:Spins_Ready_For_SIG | Spins_Ready_For_SIG]] and removes the page from categories [[:Category:Spins_in_Development | Spins_in_Development]] and [[:Category:Spins_Ready_For_Wrangler | Spins_Ready_For_Wrangler]]
#* If not accepted, removes the page from category Spins_Ready_for_Wrangler
+
#* If not accepted, removes the page from category [[:Category:Spins_Ready_For_Wrangler | Spins_Ready_For_Wrangler]] and adds to category Spins_in_Development and notes reasons why in the Discussion page
 
# Spins SIG reviews the Spin
 
# Spins SIG reviews the Spin
#* If the Spin is accepted by the Spins SIG, the page is added to category Spins_Ready_for_Board
+
#* [[Spins_SIG_Review_Checklist|Review Checklist]]
#* If the Spin is not accepted by the Spins SIG, the page is removed from the Spins_Ready_for_SIG category, and goes back to category Incomplete_Spins
+
#* Voting members of the Spins SIG are made up of representatives from: QA, Release Engineering, Infrastructure and FESCo
# The Fedora Project Board decides on Trademark approval (rubber stamp)
+
#* If the Spin is accepted by the Spins SIG, the Spins Wrangler adds its page to category [[:Category:Spins_Ready_For_Board | Spins_Ready_For_Board]], and emails the [https://lists.fedoraproject.org/mailman/listinfo/advisory-board advisory-board list] to request Board review for [[Trademark_approval_policy|trademark approval]]
#* If the Fedora Project Board approves Trademark usage for the Spin, the Spin Page is added to category Spins_Fedora_X, and removed from category Spins_Ready_for_Board.
+
#* If the Spin is not accepted by the Spins SIG, the page is removed from the [[:Category:Spins_Ready_For_SIG | Spins_Ready_For_SIG]] category, and goes back to category [[:Category:Spins_in_Development | Spins_in_Development]]
# Notifications are sent to interested parties (Spins SIG responsibility):
+
# The Fedora Project Board grants or denies [[Trademark_approval_policy|Trademark approval]]
 +
#* If the Fedora Project Board grants Trademark usage for the Spin, the Spin Page is added to category Spins_Fedora_X, and removed from category [[:Category:Spins_Ready_For_Board | Spins_Ready_For_Board]].
 +
# After acceptance, the Spins Wrangler sends notifications to interested parties:
 
#* The maintainer(s) submitting the Spin
 
#* The maintainer(s) submitting the Spin
 
#* Fedora QA
 
#* Fedora QA
 
#* Fedora Release Engineering
 
#* Fedora Release Engineering
 
#* Fedora Infrastructure
 
#* Fedora Infrastructure
# Spin added to a wiki page containing a table listing all of the spins for Fedora X
+
# The Spins Wrangler adds the Spin to a wiki page containing a table listing all of the spins for {{FedoraVersion|long|next}} (https://fedoraproject.org/wiki/Releases/{{FedoraVersionNumber|next}}/Spins)
 +
#* Nightly [http://alt.fedoraproject.org/pub/alt/nightly-composes/ composes] of spins (from the latest spins/fedora-kickstart package) are available for testing.
 +
#* For each milestone a spin/fedora-kickstarts package is to be built by the Spins SIG. Updates after a build for a milestone has been made requires a new build and then tag-requested through rel-eng. rel-eng does the actual compose using the spin-kickstarts package.
 +
# The spin owner uses the [http://git.fedorahosted.org/git/?p=correspondingsource.git;a=blob;f=liveiso_srpm_list liveiso_srpm_list] script to generate a list of SRPMs used in his spin with  {{command|liveiso_srpm_list $ISO_NAME.iso > $ISO_NAME.iso-srpmlists.txt}} where ISO_NAME is the "ISO Name / FS Label" from the spin's page. The resulting file is then sent to somebody with commit access to the [http://git.fedorahosted.org/git/?p=correspondingsource.git correspondingsource] git repository to be committed, e.g. to [[User:Cwickert|Christoph Wickert]] or [[User:Mdomsch|Matt Domsch]]. This is a legal requirement, the file needs to be in place for the spin's release.
 +
 
 
* A draft diagram (ugly colors and bad formatting) is here: http://poelstra.fedorapeople.org/misc/spins-process-flow-v1.png
 
* A draft diagram (ugly colors and bad formatting) is here: http://poelstra.fedorapeople.org/misc/spins-process-flow-v1.png
** note how astonishingly similar it is to the Feature process ;-)
 
  
 
== Details ==
 
== Details ==
  
Any more details on each stage in the process.
+
More details on each stage in the process.
 +
 
 +
=== Creating a Spin ===
 +
 
 +
How to create a spin in the first place. Tools to use, and how to use them.
 +
 
 +
This typically is a user action item. You create a spin using the examples in the '''spin-kickstarts''' package available in Fedora 10 and later. You use that kickstart file to compose your own version of Fedora, and see if it is something you like.
 +
 
 +
{{Admon/note||At this point, you have a ''Fedora Remix''}}
 +
 
 +
=== Submitting a Spin ===
 +
 
 +
Details on submitting a spin.
 +
 
 +
To have your spin included in Fedora, a few prerequisites must be met:
 +
 
 +
* Create a Spins Page to describing the Spin and more details
 +
* Add that page to the '''Spins_in_Development''' category
 +
 
 +
{{Admon/note|About the Spins_in_Development Category|You can remain in the '''Spins_in_Development''' category indefinitely, as in: there is no time limit in which we require you to make the next step.}}
 +
 
 +
* When you feel your Spin kickstart and page are both ready for review, do the following:
 +
*# Remove the Spins page from the '''Spins_in_Development''' category
 +
*# Add the Spins page to the '''Spins_Ready_For_Wrangler''' category
 +
 
 +
The Spins Wrangler {{spins-wrangler}} will now pick up the Spin page and review it. Two possible outcomes:
 +
 
 +
# The page is not complete and it is moved back to the '''Spins_in_Development''' category.
 +
# The page is complete and removed from the '''Spins_Ready_For_Wrangler''' category, then added to the '''Spins_Ready_For_SIG''' category.
 +
 
 +
If the page is complete, and added to the '''Spins_Ready_For_SIG''' category, the Spins SIG will take it up and review it (using the [[Spins_SIG_Review_Checklist|Review Checklist]]). The details on what happen next are in the [[#Before a Spin is approved | Before a Spin is approved]] section of this document.
 +
 
 +
=== Before a Spin is approved ===
 +
 
 +
What happens while your spin is being reviewed, and when or where it is finally approved.
 +
 
 +
During the next [[Spins_SIG_Meetings|Spins SIG meeting]], the spin will be discussed, and the Spins SIG will either vote to accept the Spin, not accept the Spin, or postpone the vote till two weeks later.
 +
 
 +
{{Admon/note|Maximum review time|The maximum review time for the Spins SIG is 3.99 weeks; If you submit your spin just after the Spins SIG meeting is finished in week #1, week #3 will accept, not accept or postpone the approval to the meeting in week #5, to either allow more testing, or clarification on the Spin's features, etc.}}
 +
 
 +
=== When A Spin Is Accepted By The Spins SIG ===
 +
 
 +
What happens if a spin is accepted by the Spins SIG.
 +
 
 +
The Spins SIG or Spins Wrangler will remove the Spins page from the '''Spins_Ready_For_SIG''' category and add the page to the '''Spins_Ready_For_Board''' page.  The Spins Wrangler will send an email to the [https://lists.fedoraproject.org/mailman/listinfo/advisory-board advisory-board list] requesting that the [[Board]] review the Spin for [[Trademark_approval_policy|trademark approval]].
 +
 
 +
The Board then reviews the Spin for trademark approval, and although this should be a formality (''rubber stamp'' if you will), the Board has the final word in whether this Spin is to become an official Fedora Spin.
 +
 
 +
It is up to the Spins SIG to come up with questions they'd like to see answered by the Board, such as:
 +
 
 +
''"SELinux is disabled on this spin for such and such specific reason,''
 +
''and although we think this and that, does the Board have an opinion on''
 +
''whether this Fedora feature should be permissive/enabled in every spin?"''
 +
 
 +
It is up to the Board to think of additional guidelines they'd like to see the Spins SIG address during the Review stage, such as:
 +
 
 +
''"Spins SIG, we'd like you to check if SELinux is permissive in specific''
 +
''circumstances, we strongly prefer enforcing, but maybe there's reasons''
 +
''for a spin, yada, yada... and so forth"''
 +
 
 +
=== If A Spin Is Not Accepted By The Spins SIG ===
 +
 
 +
What happens if a spin is not accepted.
  
 
= Timeline =
 
= Timeline =
Line 33: Line 99:
 
# Daily compose tests by Spins SIG, reports go to Spin Maintainer(s)
 
# Daily compose tests by Spins SIG, reports go to Spin Maintainer(s)
 
# Bi-weekly reports by Spin Maintainer(s)
 
# Bi-weekly reports by Spin Maintainer(s)
# '''Beta Release'''
+
# '''Alpha Release'''
 
# Daily compose tests by Spins SIG, reports go to Spin Maintainer(s)
 
# Daily compose tests by Spins SIG, reports go to Spin Maintainer(s)
 
# Bi-weekly reports by Spin Maintainer(s)
 
# Bi-weekly reports by Spin Maintainer(s)
# '''Preview Release'''
+
# '''Beta Release'''
 
# '''Release Candidate'''
 
# '''Release Candidate'''
 
# Daily compose tests by Spins SIG, reports go to Spin Maintainer(s)
 
# Daily compose tests by Spins SIG, reports go to Spin Maintainer(s)
Line 43: Line 109:
  
 
= Discussion & Proposed Changes =
 
= Discussion & Proposed Changes =
* https://fedoraproject.org/w/index.php?title=Talk:Spins_Process
+
* See [[Talk:Spins_Process]]

Latest revision as of 06:32, 14 July 2011

Contents

[edit] Summary

  1. User submits a spin (kickstart and introduction) that complies with the Spins Guidelines to the Spins SIG mailing list at spins@lists.fedoraproject.org, and creates a Spin Page (from the New Spin Page Template), using a $name_Spin naming schema.
    • Note that if several people need to work on the kickstart file, the source can be kept on the spin wiki page pending approval and addition to the git repo. People will not be given update access to the git repo until after their spin is approved by the Spins SIG (or board if there is a potential trademark issue).
    • This page is added to category Spins_in_Development.
    • When the page is ready for review, the page is added to category Spins_Ready_For_Wrangler
  2. Spins Wrangler reviews the Spin Page
  3. Spins SIG reviews the Spin
  4. The Fedora Project Board grants or denies Trademark approval
    • If the Fedora Project Board grants Trademark usage for the Spin, the Spin Page is added to category Spins_Fedora_X, and removed from category Spins_Ready_For_Board.
  5. After acceptance, the Spins Wrangler sends notifications to interested parties:
    • The maintainer(s) submitting the Spin
    • Fedora QA
    • Fedora Release Engineering
    • Fedora Infrastructure
  6. The Spins Wrangler adds the Spin to a wiki page containing a table listing all of the spins for Fedora 21 (https://fedoraproject.org/wiki/Releases/21/Spins)
    • Nightly composes of spins (from the latest spins/fedora-kickstart package) are available for testing.
    • For each milestone a spin/fedora-kickstarts package is to be built by the Spins SIG. Updates after a build for a milestone has been made requires a new build and then tag-requested through rel-eng. rel-eng does the actual compose using the spin-kickstarts package.
  7. The spin owner uses the liveiso_srpm_list script to generate a list of SRPMs used in his spin with liveiso_srpm_list $ISO_NAME.iso > $ISO_NAME.iso-srpmlists.txt where ISO_NAME is the "ISO Name / FS Label" from the spin's page. The resulting file is then sent to somebody with commit access to the correspondingsource git repository to be committed, e.g. to Christoph Wickert or Matt Domsch. This is a legal requirement, the file needs to be in place for the spin's release.

[edit] Details

More details on each stage in the process.

[edit] Creating a Spin

How to create a spin in the first place. Tools to use, and how to use them.

This typically is a user action item. You create a spin using the examples in the spin-kickstarts package available in Fedora 10 and later. You use that kickstart file to compose your own version of Fedora, and see if it is something you like.

Note.png
At this point, you have a Fedora Remix

[edit] Submitting a Spin

Details on submitting a spin.

To have your spin included in Fedora, a few prerequisites must be met:

  • Create a Spins Page to describing the Spin and more details
  • Add that page to the Spins_in_Development category
Note.png
About the Spins_in_Development Category
You can remain in the Spins_in_Development category indefinitely, as in: there is no time limit in which we require you to make the next step.
  • When you feel your Spin kickstart and page are both ready for review, do the following:
    1. Remove the Spins page from the Spins_in_Development category
    2. Add the Spins page to the Spins_Ready_For_Wrangler category

The Spins Wrangler Christoph Wickert will now pick up the Spin page and review it. Two possible outcomes:

  1. The page is not complete and it is moved back to the Spins_in_Development category.
  2. The page is complete and removed from the Spins_Ready_For_Wrangler category, then added to the Spins_Ready_For_SIG category.

If the page is complete, and added to the Spins_Ready_For_SIG category, the Spins SIG will take it up and review it (using the Review Checklist). The details on what happen next are in the Before a Spin is approved section of this document.

[edit] Before a Spin is approved

What happens while your spin is being reviewed, and when or where it is finally approved.

During the next Spins SIG meeting, the spin will be discussed, and the Spins SIG will either vote to accept the Spin, not accept the Spin, or postpone the vote till two weeks later.

Note.png
Maximum review time
The maximum review time for the Spins SIG is 3.99 weeks; If you submit your spin just after the Spins SIG meeting is finished in week #1, week #3 will accept, not accept or postpone the approval to the meeting in week #5, to either allow more testing, or clarification on the Spin's features, etc.

[edit] When A Spin Is Accepted By The Spins SIG

What happens if a spin is accepted by the Spins SIG.

The Spins SIG or Spins Wrangler will remove the Spins page from the Spins_Ready_For_SIG category and add the page to the Spins_Ready_For_Board page. The Spins Wrangler will send an email to the advisory-board list requesting that the Board review the Spin for trademark approval.

The Board then reviews the Spin for trademark approval, and although this should be a formality (rubber stamp if you will), the Board has the final word in whether this Spin is to become an official Fedora Spin.

It is up to the Spins SIG to come up with questions they'd like to see answered by the Board, such as:

"SELinux is disabled on this spin for such and such specific reason,
and although we think this and that, does the Board have an opinion on
whether this Fedora feature should be permissive/enabled in every spin?"

It is up to the Board to think of additional guidelines they'd like to see the Spins SIG address during the Review stage, such as:

"Spins SIG, we'd like you to check if SELinux is permissive in specific
circumstances, we strongly prefer enforcing, but maybe there's reasons
for a spin, yada, yada... and so forth"

[edit] If A Spin Is Not Accepted By The Spins SIG

What happens if a spin is not accepted.

[edit] Timeline

  1. Submit spin for review at least 3 weeks before Feature Freeze to allow the Spins Wrangler, Spins SIG and Fedora Project Board to test, review and approve the Spin
  2. Feature Freeze--No more spins accepted for the release
  3. Daily compose tests by Spins SIG, reports go to Spin Maintainer(s)
  4. Bi-weekly reports by Spin Maintainer(s)
  5. Alpha Release
  6. Daily compose tests by Spins SIG, reports go to Spin Maintainer(s)
  7. Bi-weekly reports by Spin Maintainer(s)
  8. Beta Release
  9. Release Candidate
  10. Daily compose tests by Spins SIG, reports go to Spin Maintainer(s)
  11. Bi-weekly reports by Spin Maintainer(s)
  12. Release (GA)

[edit] Discussion & Proposed Changes