Dne 28. 11. 18 v 15:35 Brian J. Murrell napsal(a): > On Mon, 2018-11-26 at 17:03 +0100, Lukáš Doktor wrote: >> >> This is a new information. So are you actually looking for job-YYYY- >> MM-DDTHH.MM-UID only, or are you looking for test-name => test- >> output-dir mapping? > > I'm looking to correlate a given display of one of mnay xunit test > results in Jenkins job to the one of many job-YYYY-MM-DDTHH.MM-UID > directories I have collected for the test run. > > My xunit output shows me I have a failed test. I want to go to the > job-YYYY-MM-DDTHH.MM-UID I have in the archives for the job to see more > information about it. >
I see, so I actually misunderstood you. This seems even simpler, how about this: https://github.com/avocado-framework/avocado/pull/2922 >> My idea was to basically do something like: >> >> for name in xunit.gettests().get('name'): >> tid = name.split('-')[0] >> print(glob.glob("latest/test-results/%s-*" % tid)) >> >> which although not nice should always return only 1 match. > > This doesn't correlate to an avocado/job-results/job-YYYY-MM-DDTHH.MM- > UID directory does it though? > >> >>> Looking at a given Test instance I can see lots of attributes and >>> actually now that I look, I can see several attributes that embed >>> that >>> job-YYYY-MM-DDTHH.MM-UID value into pathnames such as _stderr_file, >>> _stdout_file, _Test__logfile, _Test__sysinfodir, _Test__logdir, >>> _ssh_logfile, _Test__outputdir. >>> >>> I can surely peel the value I am looking for out of any one of >>> these >>> but of course, that feels like I am peeking under the kimono and >>> using >>> something that is subject to change in the future. > > So while I can do this, I can't seem to display it in any way such that > it gets into the xunit results in any way. I can print it, in > __init__(), say, but that doesn't end up in the xunit results file. > > Hrm. Looking again, I see that self.log.info() results end up on the > xunit Standard Output. This is probably where I can add this. I just > need to convert all tests to using my subclass and calling the parent's > setUp() in their own setUp(), etc. > That seems like an ugly hack... Hopefully we'll find a more suitable solution :-) >> I think you understand well (based on the first response). Basically >> I run a job, it produces several hundreds of MB of log files, which >> are attached as artifacts and then several tenths of MB is attached >> again as the XUNIT file, because the "debug.log" is always embedded >> into the XUNIT results. It'd be nice to simply add link to the >> archived results, but I haven't found a way back then... > > You could just delete the duplicates before archiving them in Jenkins. > I do that for the jobs-results/*/html/ subdirs since the links in them > are broken anyway. > Well, it's just a symlink, not taking much space... It's there for compatibility reasons with 36lts and had been removed after 52lts was released... Regards, Lukáš > Or maybe have avocado not produce the debug.log if xunit output is > enabled. > > Cheers, > b. >
signature.asc
Description: OpenPGP digital signature