From owner-freebsd-hackers@freebsd.org Wed Feb 22 09:55:04 2017 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 01434CE8E6C for ; Wed, 22 Feb 2017 09:55:04 +0000 (UTC) (envelope-from wjw@digiware.nl) Received: from smtp.digiware.nl (smtp.digiware.nl [IPv6:2001:4cb8:90:ffff::3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C0CE0C5B; Wed, 22 Feb 2017 09:55:03 +0000 (UTC) (envelope-from wjw@digiware.nl) Received: from router.digiware.nl (localhost.digiware.nl [127.0.0.1]) by smtp.digiware.nl (Postfix) with ESMTP id 052B63A361; Wed, 22 Feb 2017 10:54:59 +0100 (CET) X-Virus-Scanned: amavisd-new at digiware.com Received: from smtp.digiware.nl ([127.0.0.1]) by router.digiware.nl (router.digiware.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fU22pjgI5qDr; Wed, 22 Feb 2017 10:54:56 +0100 (CET) Received: from [192.168.10.67] (opteron [192.168.10.67]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.digiware.nl (Postfix) with ESMTPSA id E74AE3A360; Wed, 22 Feb 2017 10:54:56 +0100 (CET) Subject: Re: TravisCI vs BuildBot vs Bamboo vs Jenkins To: Alan Somers , "freebsd-hackers@freebsd.org" References: From: Willem Jan Withagen Message-ID: Date: Wed, 22 Feb 2017 10:54:55 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Feb 2017 09:55:04 -0000 On 22-2-2017 01:32, Alan Somers wrote: > All of the cool kids are hosting their projects on Github and using > TravisCI for continuous testing. The integration is fairly slick. > But TravisCI only supports OSX and Linux. Every time a user opens a > feature request for FreeBSD support > (https://github.com/travis-ci/travis-ci/issues/1818, > https://github.com/travis-ci/travis-ci/issues/5473, > https://github.com/travis-ci/travis-ci/issues/6671), it gets closed by > a Travis employee who thinks that FreeBSD is a Linux distro. > > One overachiever managed to trick Travis into running FreeBSD by using > QEMU to fire up a VM as an unprivileged user process and run his tests > inside of that. > https://erouault.blogspot.com/2016/09/running-freebsd-in-travis-ci.html > > And a few projects are even doing this very thing, though it seems > like a bit abusive to me. > https://travis-ci.org/rust-lang/libc/jobs/203950308 > > > So my question is, what's the best alternative? > > BuildBot can run on pretty much anything, and supposedly it can hook > into all of the popular code hosting platforms. > https://docs.buildbot.net/latest/manual/cfg-wwwhooks.html > > Bamboo is also very portable, and has a slick GUI to connect to > Bitbucket. Unfortunately, it's closed-source, but free licenses are > available for open-source developers. Unfortunately, it's written in > Java. > https://developer.atlassian.com/blog/2016/02/totw-connecting-bamboo-and-bitbucket-cloud/ > > Jenkins is free and portable and has some level of Github and > Bitbucket integration. Unfortunately it's also written in Java. > https://jenkins.io/solutions/github/ > > > Does anybody have experience with any of these solutions? Are there > alternatives I've overlooked? Hi Alan, Using Jenkins for my Ceph building.... http://cephdev.digiware.nl:8180/jenkins/ More or less to give the other Ceph-developers access to errors/warnings that Clang on FreeBSD generates with their code. And it will alert me when there are commits on ceph/master that will break the master build. Setup/install was rather painless. Integration with GitHub from my end was rather simple, and I just poll GitHub to see if code has been added. That was a simple tick in a box. Could even integrate it the other way around, and have GitHub ping me if new versions needed to be build. But That I considered too much. The Java stuff runs big, but I did not have to touch it. I would not like to start doing things in Java, but up till now I did not have to. --WjW