Skip to main content
Positronic Brain
================

<img align="right" src="logo.png" width="200" height="200"/>

> *Opinionated BuildBot workflow.*

[![Build Status](https://travis-ci.org/develersrl/positronic-brain.svg?branch=master)](https://travis-ci.org/develersrl/positronic-brain)
[![Coverage Status](http://img.shields.io/coveralls/develersrl/positronic-brain.svg)](https://coveralls.io/r/develersrl/positronic-brain)
[![Stories in Ready](https://badge.waffle.io/develersrl/positronic-brain.png?label=ready&title=Ready)](https://waffle.io/develersrl/positronic-brain)

Positronic Brain makes it extremely easy to get up and running with your BuildBot server by dropping
few lines in your `master.cfg` file. Gone are the days of having to figure out how to wire all
pieces together.

Adding a positronic brain to your BuildBot brings you:

* Sensible defaults for your BuildBot master.
* Notification emails sent to _developers_ after a build failure.
* Notification emails sent to _administrators_ for all builds on all projects.
* No need to mess with Change Sources or Schedulers.
* Archiving of artifacts on the master after each successful build.
* Automatic deletion of old artifacts on the master.


Installation
------------

This package is not being published to PyPI, so for the time being you have to install it by
running:

pip install https://github.com/develersrl/positronic-brain/archive/master.zip#egg=positronic-brain

Please note that this package depends on a very specific version of the BuildBot master and you have
to make sure to have it installed first (see [requirements.txt](requirements.txt) for more details).


Usage
-----

In your BuildBot master configuration file (`master.cfg`) import everything from the
"positronic.brain" package and perform some basic initialization:

```python
from positronic.brain import *

# basedir=basedir looks weird, but we need it.
master(basedir=basedir, url='https://buildbot.example.com/')

worker('my-first-worker', 'secretpassword')
worker('my-second-worker', 'anothersecretpassword')

with FreestyleJob('my-project', workers=['my-first-worker', 'my-second-worker']) as j:
j.checkout('project', 'svn+ssh://svn.example.com/svn/project', 'trunk')
j.command('make')
j.command('make', 'check')
j.command('make', 'packages')
j.notify('dev1@example.com')
```

Release files for positronic-brain 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for positronic-brain 0.0.1
File Size Uploaded
positronic-brain-0.0.1.tar.gz 7.5 kB Details

Release files / positronic-brain-0.0.1.tar.gz

Download URL positronic-brain-0.0.1.tar.gz
Size 7.5 kB
Tags Source
SHA-256 checksum
How to use checksums
31d46c76090c21b3c989a02029ac0d25bee9a6c21625cae65f17ede9995b4e15
BLAKE2b-256 checksum
How to use checksums
23a2119cd227ee5e17fb96980bad6a95cfd27daba94f1287070c9acc3c9123c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.0.1 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page