Squeak CI - squeakci.org now in beta

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Squeak CI - squeakci.org now in beta

Chris Cunnington
http://squeakci.org/job/Squeak/2/

Here is a page where a Squeak4.4alpha_12053 ran some tests and generated
a zipped image/changes file for download.

You will notice the big red ball telling you the build is a failure,
which is funny, because all I wanted the build to do at this point was:
1) generate tests for HelpSystem-Tests; 2) Produce a link where people
can download the image. So, Jenkins and I are not eye-to-eye on what
constitutes success at this point.

It's a start.

Chris

Reply | Threaded
Open this post in threaded view
|

Re: Squeak CI - squeakci.org now in beta

Sean P. DeNigris
Administrator
Chris Cunnington-3 wrote
Jenkins and I are not eye-to-eye on what
constitutes success at this point.
Hey, Chris. Jenkins is really cool! I set up a personal server that mirrors many of Pharo's jobs, so I always have the latest image/VMs, etc. I also am writing a St wrapper to control it from the image, and a framework to use St build scripts instead of shell scripts, so if I can be of assistance, lmk.

Looking at your console output, there is:
"ERROR: Publisher hudson.plugins.emma.EmmaPublisher aborted due to exception
hudson.util.IOException2: Failed to parse /var/lib/jenkins/workspace/Squeak/HelpSystem-Tests-Test.xml"

If you're not concerned with the test results just yet, simply remove that post-build step (I'm guessing since I can't see your config), and remember to have build scripts return 0 on success.

HTH,
Sean
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Squeak CI - squeakci.org now in beta

Chris Cunnington
In reply to this post by Chris Cunnington
Hi Sean,

Congratulations on becoming a core developer! That's great!

You're feedback is invaluable. I'm snow-blind at the moment and need
feedback. I will be reading your comments closely and I certainly will
take you up on your offer about scripts.

Thanks,
Chris


Reply | Threaded
Open this post in threaded view
|

Re: Squeak CI - squeakci.org now in beta

Sean P. DeNigris
Administrator
Chris Cunnington-3 wrote
You're feedback is invaluable
Absolutely... Here's a few things to get you started...
* "Jenkins: The Definitive Guide" is very thorough, and free (http://www.wakaleo.com/books/jenkins-the-definitive-guide).
* I've temporarily disabled the coverage reporting, which was causing the build to fail
* The test report glob is now specific enough not to collide with coverage (i.e. "**/*-Test.xml")
* In your shell scripts, you have access to Jenkins environment variables (see the "the list of available environment variables" link under the build script editor in the web UI), so instead of hardcoding paths in the job, you can do something like:
    exec "$WORKSPACE"/coglinux/lib/squeak/4.0-2522/squeak -headless "$WORKSPACE"/Squeak4.4-12053.image "$WORKSPACE"/tests.st &

I don't think I have write access to the script (or I can't figure out how), but the test/coverage changes have your job building successfully now.

HTH,
Sean
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Squeak CI - squeakci.org now in beta

Chris Cunnington
In reply to this post by Chris Cunnington
Very nice indeed. The Console output alone looks worlds healthier.

I've got a hard copy of Jenkins: The Definitive Guide here on my desk,
but clearly I missed a few things.

One really good point you make is I need to give access to the scripts.
It occurred to me that at some point I would need to make this a system
that others could get in and configure, but to this point I'd just been
hacking at it alone. It'd be better if the lists of tests (i.e.
tests.st) was not hard coded in builtastic.sh, but was a script option
the way Lukas sets is up. Not:

./build.sh

but:

./build.sh -i tests.st -i another

Then a Jenkins user could change that in the Configure page. I'll look
into that. And the other suggestions you made.

If nothing else, you've dissipated the fatigue I've had around working
on this.
Clearly, Bert chose the right guy. Thanks!

Chris

Reply | Threaded
Open this post in threaded view
|

Re: Squeak CI - squeakci.org now in beta

Sean P. DeNigris
Administrator
Chris Cunnington-3 wrote
One really good point you make is I need to give access to the scripts.
Lukas' scripts are on Github (https://github.com/renggli/builder). This is pretty cool because anyone can fork them and make a pull request, so you don't have to worry about making accounts for everyone.

For my own setup, I have a master script in $JENKINS_HOME that finds the script for the current job based on the job name, so each Jenkins job configuration has the same one-liner:
    "$JENKINS_HOME"/build.sh
which reads the current job name ($JOB_NAME) and executes the appropriate script. This way I don't have to keep editing the Jenkins configs.

Cheers,
Sean
Cheers,
Sean