From nobody Sat Nov 20 06:14:33 2021 X-Original-To: freebsd-git@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 5AC46189B0FD for ; Sat, 20 Nov 2021 06:14:44 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-ua1-x929.google.com (mail-ua1-x929.google.com [IPv6:2607:f8b0:4864:20::929]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Hx3Ck0h6Rz4lb9 for ; Sat, 20 Nov 2021 06:14:41 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-ua1-x929.google.com with SMTP id az37so25586629uab.13 for ; Fri, 19 Nov 2021 22:14:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20210112.gappssmtp.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=tPemCf66BbdHIp6zZWG6Q0yn7C47yp37C7BI52cOonk=; b=snI0lOd44+4V8liRlWvZujRGRNMEps3wTxs7RLn0WByU0vkNvEvmiDGNTqv0aS9YSC 7zaz82ZgKZCW6lwa0Dg0pfR/INF8x+/yJOT60/XEAM1e8kayEK6Jsow7AbMmVnRq+lb6 paTQBRs6Gpc5nKHUOgw3feFOhMq9wzKrvA6cR6nkLxIY+O60CKNDH0QYiybf/Zbnm6OA sa+jVM6xhkewXBVsyv6yQpjLtLEImQvDC5XyUfOnH6V2YgRjC5aEWtMjAuRyjKfvcb87 P2rEn6qNudTpXRwOQ2AfVxdW+2fIE0za2TTVKT55Bzq1QHD5Y2+n8pSfwTM+jZJ/k6Ul wUvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=tPemCf66BbdHIp6zZWG6Q0yn7C47yp37C7BI52cOonk=; b=hJh8x1GkEBOTsY4BPlMqpHJTmwwzDRJe8KJw8lrz6qg6+Tyr9YlJBssW6B+aixTZFh PG12OLuspW6x/5xkhfxAQGP+1Z/pBgJ4Yx+JybH0FUEgKutzFCj0X0+hQV3pCra2DsrO Vb76gKbOYXKEYxmx3Nkb2ZOXsfbmBLn6bf6fzlh2btnwIWdgFl1w+jXOwlye8VF5EETK ojBoO5rTO5dyqPUq5U588U/nzPQQHDnjW8JpIoAsTfRUWGrbgkTkXFxzA57i5ZSPJRod ohzHWZzvpxSvmbeCa9pdG8qvobR5QCKUNlj+uk2opaGCOqZZjTL5orqYWpAKb8I+WAEH g/3Q== X-Gm-Message-State: AOAM5313klqtb9j8kpsIOFBeiwqu9L7mWREzs8IwIraojTfTHiU1Zyjr 1s1OPEm4OdOL34jaDS1FVf3ja88zRCkosyehOFMCVxeF2yE= X-Google-Smtp-Source: ABdhPJxdVcIT2CK7CQ8x+yGXQHmvTZG6wKW45vqLyVoNDXv9JlX/NF7mV4iWcr/6dOQjtlcIM7Hpv8JVEzUey5pLC2s= X-Received: by 2002:a05:6102:d94:: with SMTP id d20mr105466117vst.12.1637388880842; Fri, 19 Nov 2021 22:14:40 -0800 (PST) List-Id: Discussion of git use in the FreeBSD project List-Archive: https://lists.freebsd.org/archives/freebsd-git List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-git@freebsd.org MIME-Version: 1.0 From: Warner Losh Date: Fri, 19 Nov 2021 23:14:33 -0700 Message-ID: Subject: Short Term Focus To: freebsd-git Content-Type: multipart/alternative; boundary="0000000000009a22cc05d1324e3f" X-Rspamd-Queue-Id: 4Hx3Ck0h6Rz4lb9 X-Spamd-Bar: + Authentication-Results: mx1.freebsd.org; dkim=pass header.d=bsdimp-com.20210112.gappssmtp.com header.s=20210112 header.b=snI0lOd4; dmarc=none; spf=none (mx1.freebsd.org: domain of wlosh@bsdimp.com has no SPF policy when checking 2607:f8b0:4864:20::929) smtp.mailfrom=wlosh@bsdimp.com X-Spamd-Result: default: False [1.68 / 15.00]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[bsdimp-com.20210112.gappssmtp.com:s=20210112]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-git@freebsd.org]; DMARC_NA(0.00)[bsdimp.com]; NEURAL_SPAM_MEDIUM(1.00)[1.000]; RCPT_COUNT_ONE(0.00)[1]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[bsdimp-com.20210112.gappssmtp.com:+]; NEURAL_SPAM_LONG(1.00)[1.000]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::929:from]; NEURAL_HAM_SHORT(-0.32)[-0.317]; R_SPF_NA(0.00)[no SPF record]; FORGED_SENDER(0.30)[imp@bsdimp.com,wlosh@bsdimp.com]; MIME_TRACE(0.00)[0:+,1:+,2:~]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com]; RCVD_TLS_ALL(0.00)[]; RCVD_COUNT_TWO(0.00)[2] X-ThisMailContainsUnwantedMimeParts: Y --0000000000009a22cc05d1324e3f Content-Type: text/plain; charset="UTF-8" Greetings, We had an impromptu discussion about pre-commit testing after the vendor summit today. We talked about different ways to split things up. There are a fair number of 'free' services that can be used to run CI pipelines. However, in general, they are best used for 'testing' or 'orchestration'. Large, intensive compute jobs (like for building FreeBSD) can be done occasionally, but will need to be offloaded from these services if there's a lot of builds since the limitations of the free services would be exhausted too quickly. We had a side conversation about optimization at this point. I presented David Chisnel's idea of creating a snapshot of 'yesterday's. build, and all pushes would use that to do a meta-mode build for the recent deltas and proposed changes. This idea was presented again later when others joined the call. While a good idea, there's a number of things that need to be done before we can optimize. The general consensus was the first steps would be to investigate building freebsd (multiple architectures) and running kyua (and maybe other) tests. This dovetails well with our Asia Timed meeting where Li-Wen, Philip and i discussed taking the current Jenkins scripts and adapting them to run in the cloud. There's a number of different means to do this. We have Azure credits, Oracle credits, and a few free things to stand up runners. We also can use the work Ed presented on terraform to interface to these different cloud providers so we can use it for runners to do the heavy lifting. This will also give us a number of choices for how to move jobs between different services as prices change, free offers are there, etc down the line. There's a number of different ways to kick off builds when changes are pushed. We have a little bit of that in github today, but it's used to kick off the Cirrus CI builds. We do kernel builds on pull requests, but only on Ubuntu and macOS. There's currently nothing done when a push happens to github. So Ed Maste, myself and John Baldwin will be looking at different aspects of expanding this integration (others are welcome to help). I'll be looking at gitlab kicking off the standard cirrus-ci builds we can get from github now (to compare and contrast). I'll also look at standing up other jobs that use the testing features of gitlab using the artifacts built part of the cirrus ci integration and maybe a few other checking things. There's a number of other software projects that I can crib from. Ed and John will be doing their experiments as well. And to be clear: others are welcome to run their own experiments to learn what's available, what we can use, how we can optimize. Mention was made of using the general github push hook that others have used in other projects that might be useful. We also talked about different ways to parameterize the CI pipeline so different pushes can get different levels of testing depending on things like gitlab CI variables. This is a very rich field, and there's a number of other areas that can be applied to FreeBSD's specific needs that aren't being explored. We'd love to hear from others that have done these things. Once these initial experiments are done, we're planning on getting together with anybody else that's done their own experiments and a few experts that have joined the group who have time to advise but not to experiment. To give people time, and to account for the US Thanksgiving holiday, we'll meet next on December 1th, again on December 15th and again January 5th to talk about the experiments, to plan next steps, etc. I'll send out meeting details. So I hope I've captured all we talked about, but it was a somewhat informal conversation that ranged over a number of areas not related to CI. If anybody else wants to add anything, please do. Warner --0000000000009a22cc05d1324e3f--