Differences between revisions 3 and 7 (spanning 4 versions)
Revision 3 as of 2013-10-21 08:21:48
Size: 1583
Editor: chapoton
Comment: + more
Revision 7 as of 2015-04-21 14:49:27
Size: 1146
Editor: chapoton
Comment: more info
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
There are (at least) two ways to run your own private patchbot, that will report its results to the trac server.

In any case, it is better to have disk space available and a powerful enough machine.

== Run on all tickets ==
== Running the patchbot ==
Line 9: Line 5:
 * Install the patchbot using "sage -i patchbot"  * Install the patchbot using '''sage -i patchbot'''
Line 11: Line 7:
 * Run the patchbot using "sage -patchbot"  * Run the patchbot using '''sage -patchbot'''
Line 15: Line 11:
== Run on chosen tickets == You can run a specific ticket by using '''sage -patchbot --ticket=N''' where N is a ticket number such as 12345.
Line 17: Line 13:
Here is a proposal on how to use the patchbot only on tickets you want to work on. Several other options are available, see '''sage -patchbot --help'''
Line 19: Line 15:
'''Warning''': this works for a mercurial setting, not tested for the new git setting. (2015-04) The latest available version can be installed using '''sage -i http://chapoton.perso.math.cnrs.fr/patchbot-2.3.3.spkg'''
Line 21: Line 17:
 * install the latest sage development release (download from http://www.sagemath.org/download-latest.html and make) == Configuration ==
Line 23: Line 19:
 * install the latest patchbot (clone from http://github.com/robertwb/sage-patchbot) You can use a specific configuration file using '''sage -patchbot --config=config_file.json'''
Line 25: Line 21:
 * in a terminal, inside your_sage_home_dir, "./sage -clone 0" The base patchbot configuration can be found at https://github.com/robertwb/sage-patchbot/blob/master/src/patchbot.py in the ''get_config'' function.
All of these settings can be overridden by passing a config file which is treated as a json overlay on these defaults.
Line 27: Line 24:
 * in a terminal: "cd sage-patchbot/src" then "ipython" For example, to let the tickets of user "niceguy" be given some priority, use
Line 29: Line 26:
 * in ipython, "from patchbot import Patchbot", then "P = Patchbot('your_sage_home_dir',"http://patchbot.sagemath.org/",None,plugin_only=True)" or "P = Patchbot('your_sage_home_dir',"http://patchbot.sagemath.org/",None)"

The first one will only run the plugins (much faster), the second one will run all the tests (much slower).

 * Then choose your favorite ticket number N and "P.test_a_ticket(N)"

It is important that sage is in its initial state when running the patchbot (sage-main branch with no patch applied).
{"author":{"niceguy":200}}

Running the patchbot

You can let the patchbot choose the tickets it will run on.

  • Install the patchbot using sage -i patchbot

  • Run the patchbot using sage -patchbot

I will run forever, as long as it finds a ticket to work on. Tickets are only considered if their authors are trusted.

You can run a specific ticket by using sage -patchbot --ticket=N where N is a ticket number such as 12345.

Several other options are available, see sage -patchbot --help

(2015-04) The latest available version can be installed using sage -i http://chapoton.perso.math.cnrs.fr/patchbot-2.3.3.spkg

Configuration

You can use a specific configuration file using sage -patchbot --config=config_file.json

The base patchbot configuration can be found at https://github.com/robertwb/sage-patchbot/blob/master/src/patchbot.py in the get_config function. All of these settings can be overridden by passing a config file which is treated as a json overlay on these defaults.

For example, to let the tickets of user "niceguy" be given some priority, use

{"author":{"niceguy":200}}