From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id MKH3It3rsGCCEwEAgWs5BA (envelope-from ) for ; Fri, 28 May 2021 15:10:53 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id sGl8Ht3rsGCDOwAA1q6Kng (envelope-from ) for ; Fri, 28 May 2021 13:10:53 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 4277425385 for ; Fri, 28 May 2021 15:10:53 +0200 (CEST) Received: from localhost ([::1]:52428 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lmcGK-0006u0-7g for larch@yhetil.org; Fri, 28 May 2021 09:10:52 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50560) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lmcG1-0006to-9i for guix-devel@gnu.org; Fri, 28 May 2021 09:10:34 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:53938) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lmcFz-00057N-P9; Fri, 28 May 2021 09:10:33 -0400 Received: from [2a01:e0a:19b:d9a0:f2f7:a404:c3d3:f8b4] (port=37966 helo=meije) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lmcFz-0002Rw-FJ; Fri, 28 May 2021 09:10:31 -0400 From: Mathieu Othacehe To: guix-devel Subject: Cuirass badges Date: Fri, 28 May 2021 15:10:29 +0200 Message-ID: <87lf7zf1h6.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1622207453; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=7dPHQW6RMhSTrGI5JFzO92M9oJzgR0jYu6f5NaYqk0U=; b=DhgskPdzD5IGXJ4v8bbTrRCjEVzjcq6J8LK4PtjT7gip3W3K0H2MgiBsSmvjUYAQGVwg4q SrfyCyqpJIMs86DGixCpoPr3GuiTq/UtvbUWY5x2aOeyaIGvYk2/JrjE+SXnGuSAnW+Q4f r0c8/tJ4kkMQjoeC+KnSdPzAR5fbyjjSycUVSdY3EImSsJ0VUw0XzAlFd0wmZsLDDoIN6B 479lWf5FnC+qUtpMz8NnWjqu55qHDI5sypf4E3yC1XJZ4FCeW3P2EHs2xLmedNFYHN9F3p PrVhGkIV5U7RDhQRynUh9SA+koV5Wo9UdXRj2cJgXasq1btXLsj1C+dKDEh5mw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1622207453; a=rsa-sha256; cv=none; b=iL7M0ZhavVSZ84jepTonifYvi6j0OTjJCxJ38SV8FfWMWr2uM+xlPux1RHLs/UBeOesQu/ 1cuoGle7SxFTNvEle4656EVUKXTVGzs/1NJbA78GBw7bU1jlLbjCTTsjS13Ogra7u380Qx fSqEgH+93t/pn3PK7JdlFzIz5NvrRsjsRk6q3sdxvqkcFmrUICcMWiOB0is4zgWkXfA6ln N8GJzjrl3OPLq3ypn8asjlzXiqJWXWXiZDRbrLvqUGRxeMqcMazIARF7ZVICqF58tkly5O a5gUHjed5HUHBjozZsZJpxFORgAZOPilBVSPbGrMAVjx8/6PuQ2tnmZESafEDg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Migadu-Spam-Score: -2.93 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=pass (policy=none) header.from=gnu.org; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Migadu-Queue-Id: 4277425385 X-Spam-Score: -2.93 X-Migadu-Scanner: scn0.migadu.com X-TUID: 9j8LDsjzBZFo --=-=-= Content-Type: text/plain Hello, Cuirass is now able to generate badges like any respectable CI system. For instance: * https://ci.guix.gnu.org/jobset/master/badge generates a badge showing the percentage of successful jobs for the master specification. * https://ci.guix.gnu.org/jobset/guix/badge generates a badge showing the percentage of successful jobs for the guix specification. You can integrate those badges in your Git forge. There's a screenshot of a Gitlab integration attached. I think that the badge design[1] could be significantly improved by anyone with artistic abilities. It would also be nice if the badge could display the specification name so that badges corresponding to multiple specifications can be displayed together. Thanks, Mathieu [1]: https://git.savannah.gnu.org/cgit/guix/guix-cuirass.git/tree/src/static/images/badge-per.svg --=-=-= Content-Type: image/png Content-Disposition: attachment; filename=badge.png Content-Transfer-Encoding: base64 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 AAAAAElFTkSuQmCC --=-=-=--