Hi, all. Just before I left the Raleigh office after my week for orientation and getting to know the rest of the QA team, we had a meeting to try and set some goals for Fedora QA for this year.
'We' is myself, James Laska, and Will Woods. In the spirit of community that I am supposed to be bringing to the team, I wanted to throw these topics open to the list to try and get your feedback on the same topics we discussed.
Off the top, we should be honest and open: Red Hat pays Will, James and now myself to work on Fedora QA full time. In my case, what RH want from me is quite purely and simply to try and help the community - external contributors - to improve the quality of Fedora as a project. In Will's and James's cases, though, things are slightly different. Part of their value is to produce tools and work on processes that, as well as contributing to Fedora QA, also contribute to the process that ultimately improves the quality of Red Hat's other products. In addition to that, they're real engineers who know how to write stuff, and all engineers like to come up with ideas and implement them. So, given that, there are always going to be things that the internal QA guys are working on that are decided by RH or by themselves. No matter how open and community-friendly we are, it will never be the case that the work and goals of those paid by RH are entirely determined by the collaborative process.
However, bearing that in mind, it's still very valuable to RH, Fedora, and the Fedora QA community to hopefully get all your opinions on these issues, and it can certainly help to set my goals and help everyone involved in this project think about what they're doing, what they'd like to do, and how we can all work together towards the ultimate goal of making Fedora an even better project.
So, to the topics! We set ourselves three simple questions
1. What does Fedora QA do? 2. What should it do? 3. What should it do first?
We'd like all of your input on these questions - just let us know what you think. Broadly, we identified several things we - as a project - do:
* Exploratory testing: simply using Fedora, updates-testing, or Rawhide, and complaining when stuff breaks. We agreed that this is at least as important as anything else QA does, but sometimes isn't treated as such. We agreed we should always emphasize that this is important and valuable, try to help ensure it can be done as effectively as possible (through things like the Bugzappers project), and try to always communicate to everyone that simply doing this kind of testing is an important and valued contribution to the QA project.
* Structured testing: this is the more in-depth testing we do, such as regular testing of specific functions based on test plans, the use of automated tools such as Beaker and Nitrate (once they're ready), and test days. It also covers the case where another group contacts us with a request to do specific testing on a certain function. A lot of discussion here covered the Beaker and Nitrate projects; my take on this, as a new guy, is that they sound like really great tools that will help us a lot when they're ready.
* Bug zapping: all the great work done by the Bugzappers team, mainly triaging and following up bugs to ensure they're properly handled from report through to released update.
* Tooling: this is the work done, particularly by Will, to write the tools that allow structured testing to take place. We agreed that it would be good to get more contributions to this area, and that it's important to communicate the tools we do / will have available so they can be used to their full ability. This is important for things like Bodhi - we'd like to make sure that kind of system is more widely used.
We also had discussions on things arising from the above, like the importance of Rawhide, and meta-tasks like documentation and community relations, which are important in attracting and enabling people to do the actual tasks.
We also identified some specific goals. See also this Wiki page I created: https://fedoraproject.org/wiki/QA/Goals
1. Increase participation in Rawhide: it provides a huge benefit in terms of identifying issues and having them fixed quickly and early in the cycle.
I am going to work on communication and documentation issues around that, and Will is going to work on producing a tool which simply tests, every day, whether you can a) install Rawhide fresh and b) update from latest stable+updates to Rawhide. This serves two purposes: it both lets you know whether it's worth actually attempting to install Rawhide that day if you wanted to know, and if we track the results over time, it provides an incentive to the developers to improve the reliability of Rawhide.
2. Make release testing more accessible
Encompasses many sub-tasks. * defining what role QA serves in the release process * defining what QA can do during the release process * how can the community get involved? * who tests what, when, and how?
This is what we're doing at present with the Wiki cleanup: the purpose of this is to make it easier for people to get involved and know what we do.
3. Strengthen the QA tools portfolio: aim to have Nitrate available in prototype form by June, as we believe it will be really useful both in improving the amount and quality of testing we're able to do, and providing a fun and easy-to-use system that will get more people involved with QA. There's also Beaker, which may take longer. This is what wwoods is mainly working on.
So, what's your opinion on the above? Do you have anything to add to the lists of what QA does, or should be doing? Do you feel there are any specific problems stopping us performing at our full potential, that should be solved as soon as possible? Do you have any ideas on making QA more accessible and getting more people involved? Please let us know. Thanks!
Partly in reply to Adam's message on "QA group activities + goals discussion"...
One thing that might help get more people running Rawhide is the ability to do so from removable media.
For example, just now I wanted to test some hardware-specific bugs on my laptop, but this is the computer I use every day, so I don't want to risk installing Rawhide on it. I just went onto the wiki to find out how to create a Rawhide LiveUSB, and it looks like that's not possible for the daily updates. So I'll use the alpha release, but this is a few weeks out of date and if developers release fixes into daily Rawhide, I won't be able to test them until the beta release.
I bet there are a lot of people who unlike me don't have a spare computer they can use just for testing. Some of them could probably be convinced to boot into Rawhide for a little while to play around with it. There seemed to be a big boost of testers after the alpha release, probably due to three factors - it's presumed (rightly or wrongly) to be installable and not completely broken or in some way "ready" for testing, it gets more publicity than the daily releases, and it has live media available.
I don't know why live media aren't automatically produced on a daily or weekly basis; perhaps it is not technically feasible. An interesting alternative would actually be the ability to put a normal install on a USB stick, that could be updated with yum. If that's possible now, it's not explained how to do so on the [[Releases/Rawhide]] wiki page.
-B.
2009/2/18 Christopher Beland beland@alum.mit.edu:
Partly in reply to Adam's message on "QA group activities + goals discussion"...
One thing that might help get more people running Rawhide is the ability to do so from removable media.
For example, just now I wanted to test some hardware-specific bugs on my laptop, but this is the computer I use every day, so I don't want to risk installing Rawhide on it. I just went onto the wiki to find out how to create a Rawhide LiveUSB, and it looks like that's not possible for the daily updates. So I'll use the alpha release, but this is a few weeks out of date and if developers release fixes into daily Rawhide, I won't be able to test them until the beta release.
I bet there are a lot of people who unlike me don't have a spare computer they can use just for testing. Some of them could probably be convinced to boot into Rawhide for a little while to play around with it. There seemed to be a big boost of testers after the alpha release, probably due to three factors - it's presumed (rightly or wrongly) to be installable and not completely broken or in some way "ready" for testing, it gets more publicity than the daily releases, and it has live media available.
I don't know why live media aren't automatically produced on a daily or weekly basis; perhaps it is not technically feasible. An interesting alternative would actually be the ability to put a normal install on a USB stick, that could be updated with yum. If that's possible now, it's not explained how to do so on the [[Releases/Rawhide]] wiki page.
-B.
-- fedora-test-list mailing list fedora-test-list@redhat.com To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-test-list
It is how I run my laptop.
Microsoft on the HD Fedora installed on an external USB disk When I connect an USB disk it boots off Fedora, otherwise Microsoft boots
And if you have more USB disks you can have F10, Rawhide and alike....and an external HD can be connected (and boot) to any computer that is capable to boot off an USB device :-)
On Wednesday, February 18 2009, Christopher Beland said:
I don't know why live media aren't automatically produced on a daily or weekly basis; perhaps it is not technically feasible.
The problem isn't so much the production of the images as much as the distribution. Live images use squashfs and thus aren't friendly at all to rsync. Which means that the mirrors would have a much higher amount of churn every day which isn't really feasible.
Not mirroring doesn't really work because it would hurt the bandwidth we have available. Torrent-only tests have been done in the past along these lines, but the number of users was extremely small and then people complained about not being able to use bittorrent :/
Jeremy
On Wed, Feb 18, 2009 at 09:37:43 -0500, Christopher Beland beland@alum.mit.edu wrote:
Partly in reply to Adam's message on "QA group activities + goals discussion"...
One thing that might help get more people running Rawhide is the ability to do so from removable media.
For example, just now I wanted to test some hardware-specific bugs on my laptop, but this is the computer I use every day, so I don't want to risk installing Rawhide on it. I just went onto the wiki to find out how to create a Rawhide LiveUSB, and it looks like that's not possible for the daily updates. So I'll use the alpha release, but this is a few weeks out of date and if developers release fixes into daily Rawhide, I won't be able to test them until the beta release.
If you are only going to do very occasional tests, using an alpha live spin and when available, beta and preview spins is a reasonable way to go.
If you want to do this a lot, you should probably be maintaining your own local mirror using rsync and using livecd-creator to make spins. These will be for cds / dvds, but there is a program to convert these to a liveusb image.
You could have most of it scripted and use cron to run it when you aren't actively doing stuff and have a reasonably current version ready to test when you wanted.
On Wed, 2009-02-18 at 09:22 -0600, Bruno Wolff III wrote:
If you want to do this a lot, you should probably be maintaining your own local mirror using rsync and using livecd-creator to make spins. These will be for cds / dvds, but there is a program to convert these to a liveusb image.
You could have most of it scripted and use cron to run it when you aren't actively doing stuff and have a reasonably current version ready to test when you wanted.
That seems like too much work, so after playing around, I have found that downloading a prerelease LiveUSB, enabling data persistence, and then doing "yum update" will get you a daily Rawhide-enabled LiveUSB image. Or at least it would except I encountered some space limitations and some bugs which have sidetracked my component testing. But it seems like something which should work and if it doesn't people should file bugs about it. So, I've updated advice for testers to list it as an option:
https://fedoraproject.org/wiki/How_to_create_and_use_Live_USB#Download_an_IS...
https://fedoraproject.org/wiki/Releases/Rawhide#How_to_avoid_disturbing_an_e...
-B.
On Thu, 2009-05-28 at 01:46 -0400, Christopher Beland wrote:
That seems like too much work, so after playing around, I have found that downloading a prerelease LiveUSB, enabling data persistence, and then doing "yum update" will get you a daily Rawhide-enabled LiveUSB image. Or at least it would except I encountered some space limitations and some bugs which have sidetracked my component testing.
You won't get new kernels.
On Wed, 2009-05-27 at 23:04 -0700, Jesse Keating wrote:
You won't get new kernels.
Ah yes, I had forgotten about the request to fix that:
https://bugzilla.redhat.com/show_bug.cgi?id=446935
Advice updated.
-B.
On Mon, 2009-02-16 at 14:38 -0800, Adam Williamson wrote:
- Increase participation in Rawhide: it provides a huge benefit in
terms of identifying issues and having them fixed quickly and early in the cycle.
Agreed - rawhide has a bad rep, and lots of people tend to avoid it. It has been improving lately, but we should keep trying out new things to get it to the stage that anyone involved in Fedora development should be able to run rawhide.
Here's a snippet from an old email on time based release processes that still really resonates with me when thinking about rawhide:
http://mail.gnome.org/archives/gnome-hackers/2002-June/msg00041.html
The goal of the unstable branch is to be an exciting and forward-moving but USABLE BY TESTERS piece of software. This is just the "release early, release often" principle. ... The unstable branch must always be dogfood-quality. If testers can't test it by using it daily, they can't make the jump. If the unstable branch becomes too unstable, we can't release it on a reliable schedule, so we have to start breaking the stable branch as a stopgap.
Here's a suggestion:
1) Come up with a rough definition of what it means for rawhide to be considered "dogfoodable" - e.g. installs, boots, networking works, desktop and core apps usable, etc. etc.
2) Create a RawhideBlocker tracker bug - add anything to it that breaks something on the dogfoodable list
3) Post details to fedora-devel-list of any new bug added to RawhideBlocker, cc-ing the package owners
4) Harass package owners, and encourage others to help, until the issue is resolved
5) Keep the list small, so that "OMG, it's blocking rawhide" is a real incentive for people to sort problems out. If the list grows too long, consider lowering the dogfoodable bar.
Cheers, Mark.
On Fri, 2009-02-20 at 18:18 +0000, Mark McLoughlin wrote:
On Mon, 2009-02-16 at 14:38 -0800, Adam Williamson wrote:
- Increase participation in Rawhide: it provides a huge benefit in
terms of identifying issues and having them fixed quickly and early in the cycle.
Agreed - rawhide has a bad rep, and lots of people tend to avoid it. It has been improving lately, but we should keep trying out new things to get it to the stage that anyone involved in Fedora development should be able to run rawhide.
Here's a snippet from an old email on time based release processes that still really resonates with me when thinking about rawhide:
http://mail.gnome.org/archives/gnome-hackers/2002-June/msg00041.html
The goal of the unstable branch is to be an exciting and forward-moving but USABLE BY TESTERS piece of software. This is just the "release early, release often" principle. ... The unstable branch must always be dogfood-quality. If testers can't test it by using it daily, they can't make the jump. If the unstable branch becomes too unstable, we can't release it on a reliable schedule, so we have to start breaking the stable branch as a stopgap.
Here's a suggestion:
Come up with a rough definition of what it means for rawhide to be considered "dogfoodable" - e.g. installs, boots, networking works, desktop and core apps usable, etc. etc.
Create a RawhideBlocker tracker bug - add anything to it that breaks something on the dogfoodable list
Post details to fedora-devel-list of any new bug added to RawhideBlocker, cc-ing the package owners
Harass package owners, and encourage others to help, until the issue is resolved
Keep the list small, so that "OMG, it's blocking rawhide" is a real incentive for people to sort problems out. If the list grows too long, consider lowering the dogfoodable bar.
This all sounds very sensible. To be honest, my Grand Strategy is not to take on anything related to this project (making Rawhide more widely used) that requires me to poke the development team for a few weeks / months - i.e. until the people on the development list know I have some kind of clue what the hell I'm talking about (er, I hope I do :>). I don't think it would go down very well for me to just show up one day in the development group with my Grand Plans For Changing Everything. You have to wheedle your way in slowly. ;)
So I've been thinking of various things along those same lines - although I definitely like the way you've laid that out - but not planning to take them to the 'public formal proposal' stage for a while. If you feel you're in a position to make this happen, though - or anyone else is, and wants to - please do go for it and I will support you with all my meagre strength :)
On Fri, Feb 20, 2009 at 18:18:13 +0000, Mark McLoughlin markmc@redhat.com wrote:
On Mon, 2009-02-16 at 14:38 -0800, Adam Williamson wrote:
- Increase participation in Rawhide: it provides a huge benefit in
terms of identifying issues and having them fixed quickly and early in the cycle.
Agreed - rawhide has a bad rep, and lots of people tend to avoid it. It has been improving lately, but we should keep trying out new things to get it to the stage that anyone involved in Fedora development should be able to run rawhide.
You really need to know what you are doing if you want to track rawhide. For example just an hour ago I rebooted after updating to today's rawhide and the boot failed. Because I had been reading about issues with mdadm and rules files and the problem was with raid arrays I was able to guess that moving one of the mdadm rules files out of the way might fix things and lo and behold that worked. This is not something I would expect a normal user to be able to easily do. This kind of thing usually happens to me a couple of times between alpha and the release.
And this doesn't include the KMS issues this (and the previous) cycle. They are easier to deal with, but you still need to know about it. Perhaps this isn't typical of most rawhide cycles, but similar things will no doubt happen in future rawhide cycles.
On Fri, 2009-02-20 at 12:59 -0600, Bruno Wolff III wrote:
On Fri, Feb 20, 2009 at 18:18:13 +0000, Mark McLoughlin markmc@redhat.com wrote:
On Mon, 2009-02-16 at 14:38 -0800, Adam Williamson wrote:
- Increase participation in Rawhide: it provides a huge benefit in
terms of identifying issues and having them fixed quickly and early in the cycle.
Agreed - rawhide has a bad rep, and lots of people tend to avoid it. It has been improving lately, but we should keep trying out new things to get it to the stage that anyone involved in Fedora development should be able to run rawhide.
You really need to know what you are doing if you want to track rawhide. For example just an hour ago I rebooted after updating to today's rawhide and the boot failed. Because I had been reading about issues with mdadm and rules files and the problem was with raid arrays I was able to guess that moving one of the mdadm rules files out of the way might fix things and lo and behold that worked. This is not something I would expect a normal user to be able to easily do. This kind of thing usually happens to me a couple of times between alpha and the release.
And this doesn't include the KMS issues this (and the previous) cycle. They are easier to deal with, but you still need to know about it. Perhaps this isn't typical of most rawhide cycles, but similar things will no doubt happen in future rawhide cycles.
Sure. Stuff breaks in development branches. This is why all instructions relating to Rawhide specifically state that you should install it on a test system, test partition, or test virtual machine. So that when it breaks you can shrug and go 'oh, well' rather than screaming and going 'NOOOOoooo, my precious work!'
We're not really talking about 'normal users' running Rawhide, anyway. We're talking about people who are interested in helping improve release quality and testing bleeding-edge code, who can at least work a text editor from a console, and have the flexibility to understand that Rawhide stuff *will* break occasionally and they'll have to work around it.
The point is that this pool of people is in fact far larger than the number of people who currently run Rawhide. It should at least include the vast majority of packagers, yet from what I've seen, it seems that a lot of Fedora packagers only run stable releases, which is a pretty reliable indicator that we really could have more people running Rawhide.
On Fri, Feb 20, 2009 at 11:52:38 -0800, Adam Williamson awilliam@redhat.com wrote:
Sure. Stuff breaks in development branches. This is why all instructions relating to Rawhide specifically state that you should install it on a test system, test partition, or test virtual machine. So that when it breaks you can shrug and go 'oh, well' rather than screaming and going 'NOOOOoooo, my precious work!'
I still curse, but usually because it happens when I wanted to do something and stupidly did an update just before then. I haven't lost data because of using rawhide in a long time, and then happened when I accidentally installed to the wrong partition when I was doing a lot of rawhide installs to help track down a driver problem.
We're not really talking about 'normal users' running Rawhide, anyway. We're talking about people who are interested in helping improve release quality and testing bleeding-edge code, who can at least work a text editor from a console, and have the flexibility to understand that Rawhide stuff *will* break occasionally and they'll have to work around it.
I think people need to be able to significantly more than use a text editor. You need to be able to rescue your system when booting fails. I think you pretty much need to be an amateur sysadm.
The point is that this pool of people is in fact far larger than the number of people who currently run Rawhide. It should at least include the vast majority of packagers, yet from what I've seen, it seems that a lot of Fedora packagers only run stable releases, which is a pretty reliable indicator that we really could have more people running Rawhide.
I think going for the vast majority of Packagers might be overly optimistic. Besides needing sysadm skills, you also need good bandwith.
On Fri, 2009-02-20 at 14:43 -0600, Bruno Wolff III wrote:
We're not really talking about 'normal users' running Rawhide, anyway. We're talking about people who are interested in helping improve release quality and testing bleeding-edge code, who can at least work a text editor from a console, and have the flexibility to understand that Rawhide stuff *will* break occasionally and they'll have to work around it.
I think people need to be able to significantly more than use a text editor. You need to be able to rescue your system when booting fails. I think you pretty much need to be an amateur sysadm.
No, you don't. It's a test system. You blow it away and re-install, if you don't know how to fix it.
Usually, also, if the problem is one that affects more than a few people, someone will post a note about what's wrong and how to fix it to the discussion list. Or, they would, if enough people ran Rawhide. :)
I'm basing this on experience. Lots of people run Mandriva's development branch. Some of them, frankly, I wouldn't have trusted to edit a text file *at all*. But they seemed to manage to get along. They didn't go away and stop asking dumb questions, anyway. =)
I think going for the vast majority of Packagers might be overly optimistic. Besides needing sysadm skills, you also need good bandwith.
That's a fair point, yeah. But still, I don't think most packagers with decent bandwidth run Rawhide.
On Fri, Feb 20, 2009 at 12:51:19 -0800, Adam Williamson awilliam@redhat.com wrote:
No, you don't. It's a test system. You blow it away and re-install, if you don't know how to fix it.
Not if you want me to actually use it for day to day stuff. I suppose there are some people that could work that way, but personally I don't have a lot of reason to use a test machine if I am not doing real stuff.
I run rawhide when I want something out of it. Currently that is because I need to test building the games spin and to a lesser extent test the ATI video driver / KMS changes.
In the past I have had other things I wanted to make sure would work in the released version and used rawhide to help make sure that happened.
I think you have to give people a reason to want to use rawhide if you want to expand its use.
On Fri, 2009-02-20 at 15:27 -0600, Bruno Wolff III wrote:
On Fri, Feb 20, 2009 at 12:51:19 -0800, Adam Williamson awilliam@redhat.com wrote:
No, you don't. It's a test system. You blow it away and re-install, if you don't know how to fix it.
Not if you want me to actually use it for day to day stuff.
Er. Why not? You keep all your day-to-day stuff in your /home directory, yes? Why would you have to lose that if you re-installed?
I mean, yeah, you lose a bit of time re-installing, but it's not really that much. And even with Rawhide, you're not going to have to do it every day or anything.
On Fri, Feb 20, 2009 at 13:44:05 -0800, Adam Williamson awilliam@redhat.com wrote:
On Fri, 2009-02-20 at 15:27 -0600, Bruno Wolff III wrote:
On Fri, Feb 20, 2009 at 12:51:19 -0800, Adam Williamson awilliam@redhat.com wrote:
No, you don't. It's a test system. You blow it away and re-install, if you don't know how to fix it.
Not if you want me to actually use it for day to day stuff.
Er. Why not? You keep all your day-to-day stuff in your /home directory, yes? Why would you have to lose that if you re-installed?
I thought you were suggesting a separate test box.
I do have partitions set up so that I can have two root partitions. That does provide a fall back if I really hose things up. I generally don't like to bounce back and forth though and now I am pretty much just using rawhide and not F10 for my two desktops.
I have found some oddities with sharing /home between two version of Fedora though. This time around the volume control disappeared.
I mean, yeah, you lose a bit of time re-installing, but it's not really that much. And even with Rawhide, you're not going to have to do it every day or anything.
Between doing an initial install, tweaking /etc, updating to current rawhide and installing a bunch of stuff it is normally going to be faster for me to fix whatever broke rather than reinstall. However, I can see where other people might find a reinstall easier.
On Fri, Feb 20, 2009 at 06:18:13PM +0000, Mark McLoughlin wrote:
On Mon, 2009-02-16 at 14:38 -0800, Adam Williamson wrote:
- Increase participation in Rawhide: it provides a huge benefit in
terms of identifying issues and having them fixed quickly and early in the cycle.
Agreed - rawhide has a bad rep, and lots of people tend to avoid it. It has been improving lately, but we should keep trying out new things to get it to the stage that anyone involved in Fedora development should be able to run rawhide.
I apologize for not having anything more substantial to bring to this conversation, but I had two points to make:
1. I'm really glad to see people looking at the purpose and goals of Rawhide and making sure that it's playing a unique and useful part in the development of Fedora.
2. I was having a conversation with a friend who recently took the Rawhide plunge on a laptop for fun, and was incredibly surprised to find everything working, and working *well*. So much so that he's continued to use it since and very excited about Fedora 11 as a result.
On Fri, 2009-02-20 at 23:03 -0500, Paul W. Frields wrote:
- I was having a conversation with a friend who recently took the
Rawhide plunge on a laptop for fun, and was incredibly surprised to find everything working, and working *well*. So much so that he's continued to use it since and very excited about Fedora 11 as a result.
Yeah. I should point out that I'm practicing what I preach - this system (my main one) is running Rawhide, and has been for a week or two now. Sound's broken (bug filed), but mostly, stuff works.
On Fri, 2009-02-20 at 23:26 -0800, Adam Williamson wrote:
Yeah. I should point out that I'm practicing what I preach - this system (my main one) is running Rawhide, and has been for a week or two now. Sound's broken (bug filed), but mostly, stuff works.
Just wait until after next week when we rebuild everything (:
Jesse Keating wrote:
On Fri, 2009-02-20 at 23:26 -0800, Adam Williamson wrote:
Yeah. I should point out that I'm practicing what I preach - this system (my main one) is running Rawhide, and has been for a week or two now. Sound's broken (bug filed), but mostly, stuff works.
Just wait until after next week when we rebuild everything (:
Will Rawhide updates *stop* during this period or will they continue with an possible broken state?
On Sat, 2009-02-21 at 09:06 -0800, Jesse Keating wrote:
On Fri, 2009-02-20 at 23:26 -0800, Adam Williamson wrote:
Yeah. I should point out that I'm practicing what I preach - this system (my main one) is running Rawhide, and has been for a week or two now. Sound's broken (bug filed), but mostly, stuff works.
Just wait until after next week when we rebuild everything (:
Hmm. I wouldn't expect that to cause many problems. It's not as if the stuff that's being rebuilt will be incompatible with stuff that hasn't been rebuilt yet, after all.
On Mon, 2009-02-23 at 08:29 -0800, Adam Williamson wrote:
Hmm. I wouldn't expect that to cause many problems. It's not as if the stuff that's being rebuilt will be incompatible with stuff that hasn't been rebuilt yet, after all.
I've learned to expect the unexpected. Just changing the anaconda package to i586 broke rawhide production for a number of days until I sat down all day long and figured out all the places "i386" was assumed. I'm hedging my bets that there is going to be more fallout of this type, which is why we're doing this before the feature freeze so that there is time to fix it before beta freeze.
On Fri, 2009-02-20 at 18:18 +0000, Mark McLoughlin wrote:
On Mon, 2009-02-16 at 14:38 -0800, Adam Williamson wrote:
- Increase participation in Rawhide: it provides a huge benefit in
terms of identifying issues and having them fixed quickly and early in the cycle.
Agreed - rawhide has a bad rep, and lots of people tend to avoid it. It has been improving lately, but we should keep trying out new things to get it to the stage that anyone involved in Fedora development should be able to run rawhide.
Here's a snippet from an old email on time based release processes that still really resonates with me when thinking about rawhide:
http://mail.gnome.org/archives/gnome-hackers/2002-June/msg00041.html
The goal of the unstable branch is to be an exciting and forward-moving but USABLE BY TESTERS piece of software. This is just the "release early, release often" principle. ... The unstable branch must always be dogfood-quality. If testers can't test it by using it daily, they can't make the jump. If the unstable branch becomes too unstable, we can't release it on a reliable schedule, so we have to start breaking the stable branch as a stopgap.
Here's a suggestion:
- Come up with a rough definition of what it means for rawhide to be considered "dogfoodable" - e.g. installs, boots, networking works, desktop and core apps usable, etc. etc.
This is a great idea! Several folks helped flesh out what rawhide is and what the exit criteria are for delivering that content (full details at https://fedoraproject.org/wiki/JohnPoelstra/ImproveRawhideF10#Defining_GOOD).
We broke rawhide out into several groups: 1. Rawhide has a package repo 2. Rawhide as an installation repo 3. Rawhide as a snapshot candidate 4. Rawhide as a milestone (alpha, beta, preview) candidate
The work that Jesse and Will are doing with the autoqa (http://git.fedorahosted.org/git/?p=autoqa.git;a=summary) project should help address #1.
I plan to piggy-back on their efforts with the lab-in-a-box (a pool of virt install test systems managed by cobbler/koan) to address #2.
- Create a RawhideBlocker tracker bug - add anything to it that breaks something on the dogfoodable list
This is bug escalation by public shaming? I'm mixed on this. Not that I think it's bad, but that it's solving a different problem.
We currently have a problem of 1) not having an automated rawhide health check and 2) not having a well defined method for defect escalation of rawhide blockers. The current mileage for fedora defect escalation seems to be in the form of blocker bugs (instead of priority+severity). Are there other solutions? Does this mechanism work for development? What are the needs of the maintainers/developers for providing a work queue?
I'd like to focus first on gathering and presenting data on the health of rawhide. Once we master that domain ... we can address prioritizing the plethora [1] of issues we discover outside of the current F#Blocker bug method.
Post details to fedora-devel-list of any new bug added to RawhideBlocker, cc-ing the package owners
Harass package owners, and encourage others to help, until the issue is resolved
While if we have time, and we enjoy harassing package owners ... we can do this. I subscribe to the report and present the data model of testing. QA should definitely work with development to help diagnose/debug any issues.
- Keep the list small, so that "OMG, it's blocking rawhide" is a real incentive for people to sort problems out. If the list grows too long, consider lowering the dogfoodable bar.
Thanks, James
[1] One of my favorites ... http://www.imdb.com/title/tt0092086/quotes