Differences between revisions 21 and 22
Revision 21 as of 2013-10-20 13:31:51
Size: 4035
Editor: chapoton
Comment: + instruction
Revision 22 as of 2013-10-20 14:01:14
Size: 4073
Editor: chapoton
Comment: git and mercurial, details
Deletions are marked like this. Additions are marked like this.
Line 9: Line 9:
The second pulls and applies mercurial patches (or git branches) 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/ (or at github.com/robertwb/sage-patchbot). Eventually this will get moved into Sage where it can be edited using the standard procedures and more widely deployed. See ticket http://trac.sagemath.org/sage_trac/ticket/12486. The second pulls and applies mercurial patches (or git branches) 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/ (or at http://github.com/robertwb/sage-patchbot). Eventually this will get moved into Sage where it can be edited using the standard procedures and more widely deployed. See ticket http://trac.sagemath.org/sage_trac/ticket/12486.
Line 11: Line 11:
=== Usage === If you want to run a patchbot on your machine, see this [[buildbot/details|instruction page]].

=== Usage (Mercurial setting) ===
Line 21: Line 23:
If you want to run a patchbot on your machine, see this [[buildbot/details|instruction page]]. === Usage (Git setting) ===

The Patch Buildbot automatically applies the branch attached to a ticket.
Line 31: Line 35:
For the reports with respect to a given version of sage, see http://patchbot.sagemath.org/ticket/?base=5.x

These options can be combined using the separator &.
Line 41: Line 41:
{{http://patchbot.sagemath.org/blob/Pending}} '''Pending''' The bot is currently running on this patch. {{http://patchbot.sagemath.org/blob/Pending}}* '''Pending''' A patchbot is currently running on this patch.
Line 43: Line 43:
{{http://patchbot.sagemath.org/blob/TestsPassed}} '''!TestsPassed''' Everything is okay, as far as the bot can tell. {{http://patchbot.sagemath.org/blob/TestsPassed}} '''!TestsPassed''' Everything is okay, as far as a patchbot can tell.
Line 47: Line 47:
{{http://patchbot.sagemath.org/blob/BuildFailed}} '''!BuildFailed''' {{http://patchbot.sagemath.org/blob/BuildFailed}} '''!BuildFailed''' The patch can be applied, but sage failed to build.
Line 57: Line 57:
{{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/NoPatch}} '''!NoPatch''' No patch has been uploaded to Trac so far. The patchbot has nothing to do.
Line 59: Line 59:
{{http://patchbot.sagemath.org/blob/Spkg}} '''Spkg''' This is not related to a patch but to a spkg. The bot is not concerned. {{http://patchbot.sagemath.org/blob/Spkg}} '''Spkg''' This is not related to a patch but to a spkg. The patchbot 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 mercurial patches (or git branches) 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/ (or at http://github.com/robertwb/sage-patchbot). Eventually this will get moved into Sage where it can be edited using the standard procedures and more widely deployed. See ticket http://trac.sagemath.org/sage_trac/ticket/12486.

If you want to run a patchbot on your machine, see this instruction page.

Usage (Mercurial setting)

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-intelligently) 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.

Usage (Git setting)

The Patch Buildbot automatically applies the branch attached to a ticket.

Lists of reports

You can see the status of several patches at the same time (replace xxxx by your user name) :

For the patches you participated in, see http://patchbot.sagemath.org/ticket/?participant=xxxx

For the patches you authored, see http://patchbot.sagemath.org/ticket/?author=xxxx

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 A patchbot is currently running on this patch.

http://patchbot.sagemath.org/blob/TestsPassed TestsPassed Everything is okay, as far as a patchbot 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 The patch can be applied, but sage failed to build.

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

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

http://patchbot.sagemath.org/blob/PluginOnlyFailed PluginOnlyFailed Documentation, commit messages and trailing whitespaces should be checked. Tests have not been made.

http://patchbot.sagemath.org/blob/PluginOnly PluginOnly Only Documentation, commit messages and trailing whitespaces have been validated. Tests have not been made.

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

http://patchbot.sagemath.org/blob/Spkg Spkg This is not related to a patch but to a spkg. The patchbot 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.
  • To rerun tests (even though the patches to apply were not modified) add the kick parameter, e.g., http://patchbot.sagemath.org/ticket/12345/?kick