﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	launchpad_bug
2929	Use CircleCI for some builds	exarkun		"CircleCI is a CI-as-a-Service similar to TravisCI.  The Tahoe-LAFS project already uses TravisCI for some CI tasks.  However, Tahoe-LAFS uses (and maintains) a BuildBot deployment for some other CI tasks.

BuildBot is used to run the test suite on the following platforms:

  * CentOS 7
  * Debian Jessie
  * Debian Stretch
  * Fedora 24
  * OpenBSD 5.9/amd64
  * OS X 10.13
  * OpenBSD 6.3/amd64
  * Ubuntu Xenial (16.04)
  * raspbian ""jesse""/arm

There are also BuildBot jobs for checking against pending upstream deprecations and building tarballs.

TravisCI offers a couple or a few specific Linux distros for the build environment - mostly without overlap with the above list.  It does offer support for Docker and so it would be possible to bootstrap a test environment for some of the Linux distributions in the above list.  This would not help with the non-Linux platforms which cannot be run in a Docker container.

However, CircleCI offers first-class support for custom Docker images which makes it easier to test with alternate Linux distros.  Unfortunately the cloud version doesn't offer support for custom VM images so non-Linux platforms are still out of luck.

CircleCI also offers macOS support (with a usage limit).

Compared to CircleCI, BuildBot is more effort to maintain.  Slaves present an _uninterestingly_ complex diversity of configurations (e.g., having tox 2.3.9 instead of 2.7.0 really does not matter to Tahoe-LAFS as far as any user-facing functionality is concerned: it only makes it harder to manage the CI system).  Slaves are harder to update because each is a unique snowflake.

Therefore, it would be beneficial to move the Linux-based BuildBot builders on to CircleCI.


All of the Linux platform test-running builders can likely be moved to CircleCI and retired."	enhancement	closed	normal	undecided	unknown	1.12.1	fixed			
