From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: "Thompson, David" Newsgroups: gmane.lisp.guile.devel Subject: Re: Setting up CI for Guile Date: Thu, 6 Oct 2016 10:34:39 -0400 Message-ID: References: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Trace: blaine.gmane.org 1475764540 27992 195.159.176.226 (6 Oct 2016 14:35:40 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 6 Oct 2016 14:35:40 +0000 (UTC) Cc: guile-devel To: Wilfred Hughes Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Thu Oct 06 16:35:34 2016 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bs9lW-0004LQ-3D for guile-devel@m.gmane.org; Thu, 06 Oct 2016 16:35:18 +0200 Original-Received: from localhost ([::1]:56771 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bs9lU-0002De-My for guile-devel@m.gmane.org; Thu, 06 Oct 2016 10:35:16 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:54702) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bs9l0-00027M-Mx for guile-devel@gnu.org; Thu, 06 Oct 2016 10:34:51 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bs9kv-0000er-3q for guile-devel@gnu.org; Thu, 06 Oct 2016 10:34:45 -0400 Original-Received: from mail-ua0-x229.google.com ([2607:f8b0:400c:c08::229]:33419) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bs9ku-0000en-Ub for guile-devel@gnu.org; Thu, 06 Oct 2016 10:34:41 -0400 Original-Received: by mail-ua0-x229.google.com with SMTP id p102so19334643uap.0 for ; Thu, 06 Oct 2016 07:34:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=worcester-edu.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=cJDpYAANQzHII2E3GRtlYbrMocuA9OFXbI7wGdkTuiU=; b=HKPaqHjVTmEhjqj/mQahywwQ6jXApB0CDqQBfni8DFiHXpvxsCwZt9Mi6AtG3Ca+56 Zof+BetgQNMDl6n8n8rBMbdZGrMSe7/VjguTeKtMxnxyEQuZX/u3nDWl/r3bxKzgZKMB dcEuCpBcHdVfD/m1E41rOwxBqtHO2lTWSNcWF2AwVSbs4VE31nAOKAd5BHW/UWku0p/5 E+dkBCe+R6iYnNN6KDiA9pC0+EDIuLCDQLaLVIiwgbOrudIOKxbQz7pPDGWlpTeoU76C AGpnIoCcuNvie79yWmdauzOeLBedavUiSfqNJxeHhy7aHU6jhkoh2IvlVm0rugW8ALW0 +aaw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=cJDpYAANQzHII2E3GRtlYbrMocuA9OFXbI7wGdkTuiU=; b=VBi7Qp9odd+UDJLxSrjzcahqoX//w+xbVQ1Hxbf7/hxg4npwNXKFXL8dCVffdZCxTG hHbSo8y6p49Gb4cEdjH//+ocpLe054TS8OdPcgr4J/1EwAXpONvUKoazUL61P4ylqYxP wxuBphWj3Q0UPYbtKcIPDBZPBm7vXruU+Yaw/Mx+4XY0nCGjZwUk9AIp02uhdEZmFt1p nGkYiACvd2AxZRwWyXRjizaervSsRP0DM7B3lfTS9UuLV4S46aoLcL8fmqLYsGkKYD4w nbP/kzTBwG/nQyqwlKPlO8dhtV06bWtqySGu3IsQVbnwMTFX5VenN663eReJxpetapwq EG6w== X-Gm-Message-State: AA6/9Rm69Mn93g1MXS+5naKK7e4f+6Yr7RpqWAH24xXTuJ63qVfsy57HlmthJkAKY8JmN1bWnVA5Yzc0xP0lxSK/ X-Received: by 10.176.0.108 with SMTP id 99mr9474132uai.82.1475764480165; Thu, 06 Oct 2016 07:34:40 -0700 (PDT) Original-Received: by 10.31.158.88 with HTTP; Thu, 6 Oct 2016 07:34:39 -0700 (PDT) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:400c:c08::229 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: "guile-devel" Xref: news.gmane.org gmane.lisp.guile.devel:18701 Archived-At: On Thu, Oct 6, 2016 at 12:26 AM, Wilfred Hughes wrote: > Hi folks > > I'm a big fan of CI (automated testing), and maybe you are too. I'd > love to have CI for reviewing patches of Guile. This is a good idea. > So, I decided to set it up! This isn't something that's available on > GNU Savannah, so I've used GitLab (which is still FSF-approved Free > Software). gitlab.com runs the proprietary version of the GitLab server, but IIRC all of the JavaScript is still free, so it's OK, but not ideal. > You can see my different branches being tested here: > https://gitlab.com/wilfred/guile/pipelines?scope=branches > > Guile compilation is slow: 3 hours 15 minutes on my feeble laptop. > GitLab's CI only gives you an hour. That's unfortunate. It's important to build from scratch, which means bootstrapping the compiler, which indeed takes awhile, but patches generally take days or longer to be reviewed and merged so a few hours is no big deal, IMO. The GNU Guix project is working on a replacement for its current CI system at hydra.gnu.org that runs Hydra from the Nix project, named Cuirass, so I think we should try to use that instead of GitLab. > I solved this by creating a Docker image: > https://gitlab.com/wilfred/guile-build-image that contains a recent > checkout of Guile that has been built. This allows me to do an > incremental build in GitLab, which is much faster (5-10 minutes, > including tests). Docker is a dealbreaker for me. Don't have time to get into it here but it would be much better to use Guix, which has the additional benefit of being written in Guile. > What do you think? I'd love this to become the standard way to > contribute: it's easy to see what patches are in need of review, and > whether tests pass after a given patch is applied. I think this is a wonderful idea that could use a new implementation. Thanks for getting the ball rolling with the proof-of-concept! - Dave