clean up and add small functionality to a python file

This project received 2 bids from talented freelancers with an average bid price of $180 USD.

Get free quotes for a project like this
Project Budget
$30 - $250 USD
Total Bids
Project Description

The buildbot master configuration file ([url removed, login to view]) is just a plain python file defining certain vectors; we have one for our buildmaster here that has grown considerably with time, with a lot of repeated stuff (see attachment).

We want to clean it up, drawing inspiration from the one for the webkit project:

[url removed, login to view]

But we do not want to objectify all (buildsteps, factories and builders), only the buildsteps; basically there would be buildsteps such as get_source_step(reponame), compile_step(workdir), extract_step(), qmake_step(project), make_step(project), test_step(cfg_file) that wrap all the platform-dependent stuff - pick up the platform from [url removed, login to view] (we have linux2, win32 and darwin).

The idea (for example for compile_step) is that instead of having separate linux_compile_steps, linuxclang_compile_steps, osx_compile_steps and windows_compile_steps vectors, at the end we want to enter just:

compile_steps = [ compile_step("src"), compile_step("dms"), compile_step("fc"), ... ]

[url removed, login to view](compile_steps)

[url removed, login to view](compile_steps)

[url removed, login to view](compile_steps)

[url removed, login to view](compile_steps)

And finally the small enhancement: add additional builbot steps information to waterfall for the test_step class, see:

[url removed, login to view]

[url removed, login to view]

The information we want to add is the number of tests failed (that you can retrieve from the return code of [url removed, login to view] if positive and less than 128) and a link to the report in the form: /test_reports/buildslavehostname/[url removed, login to view] and a link to the logs in the form /test_logs/buildslavehostname/

Versions: the buildmaster runs on debian 7 (wheezy) so buildbot version is 0.8.6 and python version is 2.7.3.

Testing: what you can do is testing with "buildbot checkconfig .". You can not test RUNNING it ("buildbot start ."), unless you have a buildbot with the very same config as ours, therefore we will take care of that. You can optionally test running it with a simple buildbot setup (i.e. only on your development environment).

Skills Required

Looking to make some money?

  • Set your budget and the timeframe
  • Outline your proposal
  • Get paid for your work

Hire Freelancers who also bid on this project

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online