Differences between revisions 14 and 15
Revision 14 as of 2012-03-01 00:57:01
Size: 2361
Editor: ltw
Comment:
Revision 15 as of 2012-03-01 01:26:17
Size: 2797
Editor: ltw
Comment:
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
The first builds entire tarballs (e.g. all the alphas) on a wide variety of machines, and can be found at http://build.sagemath.org/sage/ . The first builds entire tarballs (e.g. all the development releases) on a wide variety of machines. It can be found at http://build.sagemath.org/sage/ .
Line 9: Line 9:
The second pulls and applies patches from Trac and can be found at http://patchbot.sagemath.org/ or from links on the individual Trac tickets. This is still very much a work in progress, but the latest version of the code lives at https://code.google.com/p/sage-buildbot/ . Eventually this will get moved into Sage where it can be edited using the standard procedures and more widely deployed. The second pulls and applies patches from Trac and can be found at http://patchbot.sagemath.org/ or from links on the individual Trac tickets. This is still very much a work in progress; the latest version of the code lives at https://code.google.com/p/sage-buildbot/ . Eventually this will get moved into Sage where it can be edited using the standard procedures and more widely deployed.
Line 13: Line 13:
The Patch Buildbot will automatically select patches (from the ticket attachments) to apply. Every Trac ticket has a Patch Buildbot report page, which is accessed by the swirly, round icon at the top of the ticket description. The report page lists the patches the buildbot chose. To override this choice, use the following directive in a ticket comment: The Patch Buildbot automatically select patches (from the ticket attachments) to apply. Every Trac ticket has a Patch Buildbot report page, which is accessed by the swirly, round icon at the top of the ticket description. The report page lists the patches the buildbot chose. To override this choice, use the following directive in a ticket comment:
Line 17: Line 17:
Any subsequently added patches will be (semi-intellegently) appended to the list. To tell Patch Buildbot about any ticket dependencies, populate the dependencies field with the ticket numbers and/or minimum Sage version. Any subsequently added patches will be (semi-intellegently) appended to the list. To tell Patch Buildbot about any ticket dependencies, populate the dependencies field with the ticket number(s) and/or minimum Sage version.
Line 23: Line 23:
Patches can have the following status: The color of the report page icon indicates the status of the patch. See the report page itself for more details. The possible statuses are:
Line 25: Line 25:
 * New (grey) {{http://patchbot.sagemath.org/blob/New}} '''New'''
Line 27: Line 27:
 * ApplyFailed (red) The patch could not be applied. This can be caused by conflicts with other patches or dependencies. {{http://patchbot.sagemath.org/blob/Pending}} '''Pending''' The bot is currently running on this patch.
Line 29: Line 29:
 * BuildFailed (red) {{http://patchbot.sagemath.org/blob/TestsPassed}} '''!TestsPassed''' Everything is okay, as far as the bot can tell.
Line 31: Line 31:
 * TestsFailed (yellow) Some tests did not succeed. They can be found in the report of the bot. {{http://patchbot.sagemath.org/blob/ApplyFailed}} '''!ApplyFailed''' The patch could not be applied. This can be caused by conflicts with other patches or dependencies.
Line 33: Line 33:
 * PluginFailed (blue) Documentation and commit messages should be checked, see the bot report. {{http://patchbot.sagemath.org/blob/BuildFailed}} '''!BuildFailed'''
Line 35: Line 35:
 * TestsPassed (green) Everything is ok, as far as the bot can tell. {{http://patchbot.sagemath.org/blob/TestsFailed}} '''!TestsFailed''' One or more tests did not succeed.
Line 37: Line 37:
 * Pending (grey) The bot is currently running on this patch. {{http://patchbot.sagemath.org/blob/PluginFailed}} '''!PluginFailed''' Documentation and commit messages should be checked.
Line 39: Line 39:
 * NoPatch (purple) No patch has been uploaded to trac so far. The bot has nothing to do. {{http://patchbot.sagemath.org/blob/NoPatch}} '''!NoPatch''' No patch has been uploaded to Trac so far. The bot has nothing to do.
Line 41: Line 41:
 * Spkg (purple) This is not related to a patch but to a spkg package. The bot is not concerned.
{{http://patchbot.sagemath.org/blob/Spkg}} '''Spkg''' This is not related to a patch but to a spkg. The bot is not concerned.

Sage has two build bots.

Release Buildbot

The first builds entire tarballs (e.g. all the development releases) on a wide variety of machines. It can be found at http://build.sagemath.org/sage/ .

Patch Buildbot

The second pulls and applies patches from Trac and can be found at http://patchbot.sagemath.org/ or from links on the individual Trac tickets. This is still very much a work in progress; the latest version of the code lives at https://code.google.com/p/sage-buildbot/ . Eventually this will get moved into Sage where it can be edited using the standard procedures and more widely deployed.

Usage

The Patch Buildbot automatically select patches (from the ticket attachments) to apply. Every Trac ticket has a Patch Buildbot report page, which is accessed by the swirly, round icon at the top of the ticket description. The report page lists the patches the buildbot chose. To override this choice, use the following directive in a ticket comment:

  • Apply foo.patch, foo2.patch

Any subsequently added patches will be (semi-intellegently) appended to the list. To tell Patch Buildbot about any ticket dependencies, populate the dependencies field with the ticket number(s) and/or minimum Sage version.

Only the devel repository has branches, so the buildbot is unable to apply and try out patches to extcode/scripts/etc.

Patch Status

The color of the report page icon indicates the status of the patch. See the report page itself for more details. The possible statuses are:

http://patchbot.sagemath.org/blob/New New

http://patchbot.sagemath.org/blob/Pending Pending The bot is currently running on this patch.

http://patchbot.sagemath.org/blob/TestsPassed TestsPassed Everything is okay, as far as the bot can tell.

http://patchbot.sagemath.org/blob/ApplyFailed ApplyFailed The patch could not be applied. This can be caused by conflicts with other patches or dependencies.

http://patchbot.sagemath.org/blob/BuildFailed BuildFailed

http://patchbot.sagemath.org/blob/TestsFailed TestsFailed One or more tests did not succeed.

http://patchbot.sagemath.org/blob/PluginFailed PluginFailed Documentation and commit messages should be checked.

http://patchbot.sagemath.org/blob/NoPatch NoPatch No patch has been uploaded to Trac so far. The bot has nothing to do.

http://patchbot.sagemath.org/blob/Spkg Spkg This is not related to a patch but to a spkg. The bot is not concerned.

Hints and tricks

  • Detecting which patches to apply are both performed by string searches on each line of the ticket, and are case insensitive.
  • The patch list directive does not work in ticket descriptions.