Red Hat Bugzilla – Bug 172891
RFE: dogtail support in anaconda
Last modified: 2013-09-02 02:07:03 EDT
The idea of using dogtail to provide automated GUI testing of anaconda is very
appealing. However, I believe there may be some python bindings (specifically
at-spi) needed in the installer environment for this to work. I would like to
use this bug to track and discuss dogtail support in anaconda.
This definitely seems like something which could be very worthwhile. It should
be possible to get the set of what's needed and add them to an updates.img to
begin with. Chris's support for updates= will help there too :)
The crucial first question that needs to be answered is "to what extent is
Anaconda accessible?". If the answer is not "None", then we should be able to
get something working. To investigate this it'd help to be able to have a shell
inside Anaconda, or a shell outside it but with all the X auth junk set up.
Switch to tty2, export DISPLAY:1 and you should be good to go for looking at
things. As far as accessibility, my answer is a very qualified "maybe" :)
I'm all but certain there's probably work that needs doing but I'd think that
basic things are there as we do just use gtk...
Okay, so as it stands now, the second stage is missing quite a bit of stuff.
I've just taken a pass at adding some of that and am building now. We'll see if
I can actually then import pyspi tomorrow
Stuff added and it looks like it works. We don't have pyspi or dogtail in the
image by default since they're not in core so I can't pull them in, but you can
definitely put them into an updates.img with your dogtail script to do stuff.
Also, right now you need to touch /etc/redhat-release to keep from confusing
dogtail. Ed took down a note so that hopefully that won't have to be done :-)
Looks like we need to add screenshot support via pygtk so we can capture
anaconda. This would be a big win for l10n anaconda testing. As far as compares
go at that state - we will have to address that. As in comment #5 - we need to
not bail if we can't detect rpms -- a config flag maybe? Just some ideas to hash
out next dogtail planning meeting.
The compare side of things is really something that you're going to more want to
do as a post-processing type of thing, not while anaconda is running (I'd
think). I'll try to whip up a quick patch for the screenshot functionality.
More brainstorming -- we're going to want to be able to kick off an install
saying that it should use dogtail and probably doing that _instead_ of
kickstart. So passing all of the install method info via the command line and
then adding dogtail= to get a dogtail script to run.
The scripts used for anaconda will probably want to upload any screenshots or
other results somewhere as well, probably analagous to what is done with KATE.
What's the status here? I see pyspi and dogtail in the tree now. What still
needs to be done in anaconda?
Like I said, we want something like dogtail= to be able to pass a dogtail
script. Or some way of easily doing so from a kickstart. As it is, you can
probably _use_ dogtail, but it's not very integrated or easy to do
Created attachment 152559 [details]
Information of Dogtail+Anaconda working together.
I have this working already. The approach used is the same as discussed here.
I guess most of the work has been done over time and only a couple of files
were needed. This is 2 MB so probably they can be added to stage2.img by
More details are in the attached file.
Committed to rawhide. Thanks for the patches. Let's use new bugs for tracking
any issues that crop up from this.