From owner-freebsd-git@freebsd.org Tue Feb 4 14:38:12 2020 Return-Path: Delivered-To: freebsd-git@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 7CE29247DA4 for ; Tue, 4 Feb 2020 14:38:12 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-io1-f52.google.com (mail-io1-f52.google.com [209.85.166.52]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48BnNz24qPz40Pb for ; Tue, 4 Feb 2020 14:38:10 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: by mail-io1-f52.google.com with SMTP id i11so21074524ioi.12 for ; Tue, 04 Feb 2020 06:38:10 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=CMlPTcIWkGjE0BvBknCr7c9NNCMTXQKBp1pymCs8dog=; b=JvRpNEOw5pTWAUpcLmSLwdm7s6sHEhwyMJqOzno226FVULwG9nSMIlJqblsBP7SZpz jog2767i3v4DLqehWlwTjuEKLE4F0k0ci02RYK9fSMbkUo59IHS8rzXzQHVmtH33bj6A ucp63mndk5Aa6EBpY85uGRScF/UGX+3CdHQwLtpKt3GZyuxzO1ElptpqRK492YqPS+GY FTC46KYWjVMx/V+alBZoamX7CdoRIfjtuvPTppsIZN8FtOuGWQOPSJesc97tbh8bIeb+ Y7JqjXRx0Q3yO66hAEl9OoBBDt9CkPrrVJfs+H2aSAqj1nyx0BgAHz9Jz/E2nmbqByG6 BGGw== X-Gm-Message-State: APjAAAXNFMeiCxFIy4fS66jZ+9owbSdROeuHrFow50s5l5/iBDbAJRNr vVxecPnLMju18DMYZ2eXUuZfb9qF7Tif9kYrWV7YYw== X-Google-Smtp-Source: APXvYqz6uGpcncl44XV/LF2Vai4KZajmJ+uDvLhqKL+Oz+8Q++1kyL8M8N1rDVe5+8puT966BBBl3UkZhlAjVDD3iOg= X-Received: by 2002:a02:37c2:: with SMTP id r185mr20928749jar.8.1580827089340; Tue, 04 Feb 2020 06:38:09 -0800 (PST) MIME-Version: 1.0 From: Ed Maste Date: Tue, 4 Feb 2020 09:37:57 -0500 Message-ID: Subject: Experiences with self-hosted git servers To: freebsd-git@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 48BnNz24qPz40Pb X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of carpeddiem@gmail.com designates 209.85.166.52 as permitted sender) smtp.mailfrom=carpeddiem@gmail.com X-Spamd-Result: default: False [-3.80 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; RCVD_COUNT_TWO(0.00)[2]; FROM_HAS_DN(0.00)[]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-git@freebsd.org]; TO_DN_NONE(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_TRACE(0.00)[0:+]; RCVD_IN_DNSWL_NONE(0.00)[52.166.85.209.list.dnswl.org : 127.0.5.0]; IP_SCORE(-1.80)[ip: (-4.17), ipnet: 209.85.128.0/17(-3.03), asn: 15169(-1.75), country: US(-0.05)]; FORGED_SENDER(0.30)[emaste@freebsd.org,carpeddiem@gmail.com]; DMARC_NA(0.00)[freebsd.org]; RWL_MAILSPIKE_POSSIBLE(0.00)[52.166.85.209.rep.mailspike.net : 127.0.0.17]; R_DKIM_NA(0.00)[]; FREEMAIL_ENVFROM(0.00)[gmail.com]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; FROM_NEQ_ENVFROM(0.00)[emaste@freebsd.org,carpeddiem@gmail.com]; RCVD_TLS_ALL(0.00)[]; TO_DOM_EQ_FROM_DOM(0.00)[] X-BeenThere: freebsd-git@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion of git use in the FreeBSD project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Feb 2020 14:38:12 -0000 A remaining task for the Git Working Group is to evaluate and make a recommendation for repository hosting. Both self-hosted and third party services may be examined. There are a number of options for self-hosting, such as Gitea, GitLab, as well as git's plain built-in server. Phabricator (which we use for code reviews) also includes a repository hosting module named Diffusion. I am interested in hearing from FreeBSD users and developers who have used one or more of these, or other Git hosting tools - what worked well, what didn't? What do you wish you had known before getting started? From owner-freebsd-git@freebsd.org Tue Feb 4 15:37:38 2020 Return-Path: Delivered-To: freebsd-git@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 99F6622924F for ; Tue, 4 Feb 2020 15:37:38 +0000 (UTC) (envelope-from adridg@freebsd.org) Received: from lb2-smtp-cloud7.xs4all.net (lb2-smtp-cloud7.xs4all.net [194.109.24.28]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "smtp.xs4all.net", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48BpjZ2BXyz43HC; Tue, 4 Feb 2020 15:37:38 +0000 (UTC) (envelope-from adridg@freebsd.org) Received: from beastie.bionicmutton.org ([62.251.92.29]) by smtp-cloud7.xs4all.net with ESMTP id z0GciTA2DVuxOz0GdiKWqX; Tue, 04 Feb 2020 16:37:36 +0100 From: Adriaan de Groot To: freebsd-git@freebsd.org Subject: Re: Experiences with self-hosted git servers Date: Tue, 04 Feb 2020 16:37:28 +0100 Message-ID: <4555909.1rqTVSEV2j@beastie.bionicmutton.org> Organization: FreeBSD In-Reply-To: References: MIME-Version: 1.0 Content-Type: multipart/signed; boundary="nextPart2043843.cYikG52F1y"; micalg="pgp-sha256"; protocol="application/pgp-signature" X-CMAE-Envelope: MS4wfHDH71GkdZ1BgnwINWwbIlzuu/5WYzMspRo1C2fHWb1yBRYPJAr37IPLvQYGdmTe7tKTvv7Fgv3m0EdLW5HvhjOaheH1zyi0IL3WA0P2wac0b4M2ceuX rmQk0im5wZUK3c1D7pxZuTdcSQDx3gkxyUp1QOTWcAbE25qGukRuORotxgcWnfs5bgMifz6S42OeYTf6LyIJPsA1FpMDgJitn4/L6Tc6ixc3DedOXWfFXIht 0KahAnqON5F//Zk+ggo03Q== X-Rspamd-Queue-Id: 48BpjZ2BXyz43HC X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-5.99 / 15.00]; NEURAL_HAM_MEDIUM(-0.99)[-0.993,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: freebsd-git@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion of git use in the FreeBSD project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Feb 2020 15:37:38 -0000 --nextPart2043843.cYikG52F1y Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="utf-8" On Tuesday, 4 February 2020 15:37:57 CET Ed Maste wrote: > There are a number of options for self-hosting, such as Gitea, GitLab, > as well as git's plain built-in server. Phabricator (which we use for > code reviews) also includes a repository hosting module named > Diffusion. > > I am interested in hearing from FreeBSD users and developers who have > used one or more of these, or other Git hosting tools - what worked > well, what didn't? What do you wish you had known before getting > started? With my KDE hat on (yet my FreeBSD mail address): talk to KDE sysadmin (part of whom I'm BCCing). We migrated from SVN to git a few years ago, and first did cgit (that's git's internal server, I think) plus reviewboard; then cgit plus phabricator; now we're migrating to GitLab and dropping cgit and phabricator. That last migration is taking a while. KDE differs from FreeBSD in that we have about 300 repositories (one for each bit of KDE software) rather than a small number of really big repo's (e.g. src, ports). There is a vaguely similar mechanism of "joining the project" and code-review is generally enforced by social contract, like in FreeBSD ports. GitLab is generally pretty responsive in working with larger Free Software projects; it is used by KDE and Gnome in that way, who have their self-hosted Community Edition GitLabs to work with, more-or-less integrated with their own identity provider systems. Having a web-based workflow, that also supports drive-by-contributions, is seen as a bonus over plain git + phab. Especially Phabricator seems to be a drag on potential-new-contributors (and I'm not sure if it's developed anymore, which is one of the reasons KDE is switching away from it). Mainly for the move to GitLab: - figure out what role issues will play; are those for reviews? Developer planning? bug reports? How do they align with Bugzilla use? - figure out a branching strategy; what kind of private branches do you want? where are force-pushes allowed (eg. when rebasing or re-doing a patchset)? squash or maintain development history? commit to master only? - think about a labels- and tags-scheme; [ade] --nextPart2043843.cYikG52F1y Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part. Content-Transfer-Encoding: 7Bit -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEUq+pvuD+N8/vVW++WoDe9T7W/7IFAl45j7gACgkQWoDe9T7W /7IXERAAo1W+t9WC+u7f57m3/4isyQ/msLY2XGJrnL5KF9FK+IPYabnyjvGEHt3D 0nXnmL/moYjr8T+T8k2sagIhqEA0YRhmH3qsb2Y9DuLyRRjOL30qWubrw9Qv1yxW pVoeHWaRYECkpHLjuQEB0UJ/DQWelq10EK8ntiU7qwzoCc5YJA7bseu58OUv4Pyg NrUh9L0ANhW7xwZjCNxdipPy3oODcxUBSfmLbIxwfoGafSd8IqwWNHiZRVh9viRY 2pLuyxwbfCpjMqjVzGKLz/heoX++KGSCuvBJO2LldxYa+UcdM+6VHe2gwgmLXE2W hsgs/4UHW+KW8Pq32AuHOMoY0cNDDD1Yfhe5Hd+pXFB27ZO/SzupmXCEw4cTHXaj B3zahYpt+yqFyHlQGV/t+7wsxDtyWLHLQ319BJcGSpi2AYf+cW3/rzbfYPio+ntx TQGRuoogYOlRE7QR1eqkBq1RqaBUYjxyXvDp3GZ6FgiKRrqxRVBhCru7T6uS18kv eMa0HGsBj57WX7/Fh97gNcAoiUandOKHpePBOtKcsSbPjaAgdJvMwbPTOmbCu4B7 p5zQ1RI7ZzFpryake/RW97r5azhPtLmA/VNm8vTdDdgO0AkeM4DmH5dUeMFeRgvx tTZpKh1fLxomOSrhuDo8qdVspk+oRqZ8tHPjWAnI70H9iWh5k6c= =DhuP -----END PGP SIGNATURE----- --nextPart2043843.cYikG52F1y-- From owner-freebsd-git@freebsd.org Tue Feb 4 16:50:14 2020 Return-Path: Delivered-To: freebsd-git@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 5D10922B931 for ; Tue, 4 Feb 2020 16:50:14 +0000 (UTC) (envelope-from sean@chittenden.org) Received: from mail-lf1-x12b.google.com (mail-lf1-x12b.google.com [IPv6:2a00:1450:4864:20::12b]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48BrKK2z4jz4852 for ; Tue, 4 Feb 2020 16:50:13 +0000 (UTC) (envelope-from sean@chittenden.org) Received: by mail-lf1-x12b.google.com with SMTP id z26so12608203lfg.13 for ; Tue, 04 Feb 2020 08:50:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chittenden.org; s=8eb15515; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=DI+HDudFZbV+QXvz2DGkdhfRu3s8SBwb+rVbiS8hUAE=; b=ENmR0Ak+ZxjnVpvjqVHM6+250bQcQDv+X0/3C4V70vKuiYbOY3I+3EC+UGHr1bER7D OFvaxBUClJJddGG2lCxdRUmY2KKMY94cFAJnw5Rwr9jMb4F19XD6MZmGb/YlVvwX3E6o efEO/vzWxBRiFe8OcGCybpLGsMNU7wAqC3ADVGxry+2DY0rdhAT6gPAUjbZrtI7wAseI XXOC8mRgB0IJhIKjBBAYSRN/v6Ya+/eZeJ3CXOcpuSrqYzGv9dUj6pCwaQaCuXGJbTUZ hGMwnnkdH3qRQY+hg/Me6jPwbi95zbRQRgM4djws3mu26Jtw2rt3g2UBv7B+ipo8QoSS /gZg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=DI+HDudFZbV+QXvz2DGkdhfRu3s8SBwb+rVbiS8hUAE=; b=OfKXsSmSPmxo/LoWmRLkx4gq3QzI+HQOV+eLmZWos6lTNduaJfaNDI9E1PXCNBEbbA +ALrf1kCwpctQOUenWyCzPRysBraOvM4wDadE1HaiKWifwsfxusqWJMOxtWKe0FolyHg Ia/8UZKFm9yMH1X6hcughapWhxfgOJEEbDAW9GJ5q9GGh+BlJb7VIDw1JNxfxdpJ6axP PFkuvzP94T89zt92Yq6zTsgthP3+LKgCw8yIcBnwOQSb0IfA6CeKdnsPC+us31oInmSa bmimylAivrKqM3F171ejBAofcy/T+wAb/SSOif4mc8OqwyrMSjFIGuQND94Shcu4uqwE OMmA== X-Gm-Message-State: APjAAAU5lHpyPW+XPuSAVdGNv/JA+mnE2GEvr+UPmoubFisMchgYo5EI J+qVJYmDlkCNGV8doz497e65uwC6hfYb/KzwmeuKgg== X-Google-Smtp-Source: APXvYqzALK9r4gXhCSWzc3eX8l7wEAQeR0RRw5hoQkc8oT1AcDSlO9uCrtsmc33ycXmPppchkzO3nWTSglPbxNI6Ec8= X-Received: by 2002:ac2:5196:: with SMTP id u22mr14522937lfi.123.1580835011153; Tue, 04 Feb 2020 08:50:11 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Sean Chittenden Date: Tue, 4 Feb 2020 08:49:54 -0800 Message-ID: Subject: Re: Experiences with self-hosted git servers To: Ed Maste Cc: freebsd-git@freebsd.org X-Rspamd-Queue-Id: 48BrKK2z4jz4852 X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=chittenden.org header.s=8eb15515 header.b=ENmR0Ak+; dmarc=pass (policy=none) header.from=chittenden.org; spf=pass (mx1.freebsd.org: domain of sean@chittenden.org designates 2a00:1450:4864:20::12b as permitted sender) smtp.mailfrom=sean@chittenden.org X-Spamd-Result: default: False [-5.68 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[chittenden.org:s=8eb15515]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2a00:1450:4000::/36]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-git@freebsd.org]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[chittenden.org:+]; RCPT_COUNT_TWO(0.00)[2]; RCVD_IN_DNSWL_NONE(0.00)[b.2.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.5.4.1.0.0.a.2.list.dnswl.org : 127.0.5.0]; DMARC_POLICY_ALLOW(-0.50)[chittenden.org,none]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; IP_SCORE(-2.68)[ip: (-9.09), ipnet: 2a00:1450::/32(-2.50), asn: 15169(-1.75), country: US(-0.05)]; ASN(0.00)[asn:15169, ipnet:2a00:1450::/32, country:US]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: freebsd-git@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion of git use in the FreeBSD project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Feb 2020 16:50:14 -0000 > > There are a number of options for self-hosting, such as Gitea, GitLab, > as well as git's plain built-in server. Phabricator (which we use for > code reviews) also includes a repository hosting module named > Diffusion. > Once upon a time I loaded FreeBSD into gitea to try and float that as a platform for people who felt strongly about integrated self-hosted SCMs. It didn't work out well for a repository of our size. I really, really want to like gitea, but don't think it's a good fit for this project. For other, smaller projects (and let's face it, ~99% of OSS code and corporate code bases is smaller) gitea works well. I've used it for a few small things around the house and am generally pleased (it just doesn't have the caching and indexing required for large histories). I am routinely frustrated with developers that select Gitlab for Go and Rust projects because they have a significantly higher probability of languishing in a void as undiscovered software, and it normally leads to a deadend for development because the project can't garner the support needed to hit critical mass. I am interested in hearing from FreeBSD users and developers who have > used one or more of these, or other Git hosting tools - what worked > well, what didn't? What do you wish you had known before getting > started? > The best solution and one that worked in practice at $JOB-1 was Github. With the exception of a few unicorn hours, it worked well, was fast, and required no training to bring in new hires to our project. We could focus on the task at hand instead of the services that enabled our productivity and collaboration. Credit where credit's due, it's an excellent service and has also demonstrated an extreme willingness to support our workflow (including fixing their SVN to git bridge for us, because our repository was so large). I like that Github is willing to give us weekly dumps of our issues and raw PR data, too. -sc From owner-freebsd-git@freebsd.org Tue Feb 4 17:54:00 2020 Return-Path: Delivered-To: freebsd-git@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 044B022DBBF for ; Tue, 4 Feb 2020 17:54:00 +0000 (UTC) (envelope-from manu@bidouilliste.com) Received: from mx.blih.net (mx.blih.net [212.83.155.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "mx.blih.net", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48Bskt4mcrz4DhH; Tue, 4 Feb 2020 17:53:58 +0000 (UTC) (envelope-from manu@bidouilliste.com) Received: from skull.home.blih.net (lfbn-idf2-1-1164-130.w90-92.abo.wanadoo.fr [90.92.223.130]) by mx.blih.net (OpenSMTPD) with ESMTPSA id ac932772 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); Tue, 4 Feb 2020 17:53:56 +0000 (UTC) Date: Tue, 4 Feb 2020 18:53:52 +0100 From: Emmanuel Vadot To: Ed Maste Cc: freebsd-git@freebsd.org Subject: Re: Experiences with self-hosted git servers Message-Id: <20200204185352.3c344728f054a30e4ec6b3fd@bidouilliste.com> In-Reply-To: References: X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.32; amd64-portbld-freebsd13.0) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 48Bskt4mcrz4DhH X-Spamd-Bar: --- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=pass (policy=none) header.from=bidouilliste.com; spf=pass (mx1.freebsd.org: domain of manu@bidouilliste.com designates 212.83.155.74 as permitted sender) smtp.mailfrom=manu@bidouilliste.com X-Spamd-Result: default: False [-3.37 / 15.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+mx]; TO_MATCH_ENVRCPT_ALL(0.00)[]; MIME_GOOD(-0.10)[text/plain]; MV_CASE(0.50)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; IP_SCORE(-1.07)[ip: (-7.55), ipnet: 212.83.128.0/19(1.96), asn: 12876(0.22), country: FR(0.00)]; RCPT_COUNT_TWO(0.00)[2]; DMARC_POLICY_ALLOW(-0.50)[bidouilliste.com,none]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:12876, ipnet:212.83.128.0/19, country:FR]; MID_RHS_MATCH_FROM(0.00)[]; RCVD_TLS_ALL(0.00)[]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: freebsd-git@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion of git use in the FreeBSD project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Feb 2020 17:54:00 -0000 On Tue, 4 Feb 2020 09:37:57 -0500 Ed Maste wrote: > A remaining task for the Git Working Group is to evaluate and make a > recommendation for repository hosting. Both self-hosted and third > party services may be examined. > > There are a number of options for self-hosting, such as Gitea, GitLab, > as well as git's plain built-in server. Phabricator (which we use for > code reviews) also includes a repository hosting module named > Diffusion. > > I am interested in hearing from FreeBSD users and developers who have > used one or more of these, or other Git hosting tools - what worked > well, what didn't? What do you wish you had known before getting > started? > _______________________________________________ > freebsd-git@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-git > To unsubscribe, send any mail to "freebsd-git-unsubscribe@freebsd.org" My only experience is the hardcore low-level one. I have absolutely no experience in all the "web thing". (Well we used gitlab at gandi for both the source and ports tree but we where max 5 people to push stuff there so ...) Back in ~2013 I did the git server for the school I worked at. *I* decided to not go the gitlab way so students didn't associate git as a "web thingy" and external hosting was out of the question at the time. The requirements were: - Each students could create an illimited number of repositories. - There was a size quota for each students. - Students could set acls on a repository (that was for group projects and so teachers/teachers assistant could get the code to evaluate the students). - Could handle the flow when all the students did the "big last push" The TA cloned all repositories from students at a given date and time and all the students would just do a big git push 5 minutes before. On a small "big push day" it was ~1000 students doing a git push for a somewhat small project. - Everything should be on FreeBSD (this one was from me). The first thing I noticed is that an authorized_keys files with ~10000 keys doesn't scale well. Using a python script with an AuthorizedKeysCommand with the fingerprint of the key as a args that would look into a redis database was way better. I don't think this will be a problem with the number of commiters in the freebsd project. The git user shell wasn't git-shell on the frontends but also a python script that looked up the backend node where the repository really was. This script also used trickle (available in ports) to restrict bandwidth to the students and set no limit for the TA on certain period. Some api/webstuff was done so TA could download a tarball directly, this was done in python using libgit2, way faster that git-archive (and easier to integrate into some web thing). Anyway, before choosing a tool (because tools can always be improved overtime) the big question is which model we want to use : - The "svn" one where we push/pull. - The pull-request a la Linux - The pull-request a la "github" If we stay with the svn method we only need a replacement for svnweb and cgit might be enough. Cheers, -- Emmanuel Vadot From owner-freebsd-git@freebsd.org Tue Feb 4 18:32:16 2020 Return-Path: Delivered-To: freebsd-git@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id F357322F4EC for ; Tue, 4 Feb 2020 18:32:16 +0000 (UTC) (envelope-from philip@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48Btb46D9Sz4L4t for ; Tue, 4 Feb 2020 18:32:16 +0000 (UTC) (envelope-from philip@freebsd.org) Received: from weatherwax.trouble.is (weatherwax.trouble.is [IPv6:2a00:1098:82:3a::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "weatherwax.trouble.is", Issuer "Let's Encrypt Authority X3" (verified OK)) (Authenticated sender: philip/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id BED59A6DC for ; Tue, 4 Feb 2020 18:32:16 +0000 (UTC) (envelope-from philip@freebsd.org) Received: from rincewind.trouble.is (rincewind.trouble.is [95.216.22.234]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits)) (Client CN "rincewind.trouble.is", Issuer "Let's Encrypt Authority X3" (verified OK)) by weatherwax.trouble.is (Postfix) with ESMTPS id 48Btb374cdz2ZV for ; Tue, 4 Feb 2020 18:32:15 +0000 (UTC) Received: by rincewind.trouble.is (Postfix, authenticated sender philip) id 48Btb30hzJz4BXM; Tue, 4 Feb 2020 18:32:14 +0000 (UTC) From: "Philip Paeps" To: freebsd-git@freebsd.org Subject: Re: Experiences with self-hosted git servers Date: Tue, 04 Feb 2020 10:32:10 -0800 X-Clacks-Overhead: GNU Terry Pratchett X-Mailer: MailMate (1.13.1r5676) Message-ID: In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; format=flowed X-BeenThere: freebsd-git@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion of git use in the FreeBSD project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Feb 2020 18:32:17 -0000 On 2020-02-04 06:37:57 (-0800), Ed Maste wrote: > There are a number of options for self-hosting, such as Gitea, GitLab, > as well as git's plain built-in server. Phabricator (which we use for > code reviews) also includes a repository hosting module named > Diffusion. One of my customers is using Gitea and ... it's not great. I am not involved with the administration of Gitea but as far as I can tell, it's simply not mature software. It has its own "issue" and "pull request" thing similar to GitHub. Like GitHub it's woefully inadequate for all but the most basic defect-tracking. I don't believe it has neat integrations with things like Bugzilla or Phabricator so we'd have to provide our own. GitLab is a lot more mature and several of my customers have good experiences with it. It has a fairly useable issue-tracking system and a mature mechanism for plugging in external tools such as Buzilla and Phabricator. GitHub also works but it's not clear how well it interacts with external tools. As I understand it, they've also removed their self-hosted solution so I would consider it a non-starter unless there is a way to use it without losing control over authentication (i.e.: I would not trust an external organisation to authenticate FreeBSD developers). Philip -- Philip Paeps Senior Reality Engineer Alternative Enterprises From owner-freebsd-git@freebsd.org Wed Feb 5 00:15:50 2020 Return-Path: Delivered-To: freebsd-git@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 03418239A75 for ; Wed, 5 Feb 2020 00:15:50 +0000 (UTC) (envelope-from pgollucci@p6m7g8.com) Received: from mail-ua1-x92f.google.com (mail-ua1-x92f.google.com [IPv6:2607:f8b0:4864:20::92f]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48C2CT06l6z3K6T for ; Wed, 5 Feb 2020 00:15:48 +0000 (UTC) (envelope-from pgollucci@p6m7g8.com) Received: by mail-ua1-x92f.google.com with SMTP id o42so189756uad.10 for ; Tue, 04 Feb 2020 16:15:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=p6m7g8-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=xzZW9LV+lZMOySPzKHdojgjEcUXgYKVd3kToGVtDdxU=; b=ujHgnYK/k82TIQyvPhU3P2fGyaWK8o0zPbEItYNIdW3Mo2Ws/Z3DW8iNOH7nZUAqmg nPMiTWPzmnuIcpQIiYJ5Zoqq91K8G2GqcetnUeFukJKmn6DBqjpqV/9zciiiouqcYxaS e0GEFzCYl8MBj12BLAoWlP+csWbbSXYi9B1uRZkBNrWSlmzXJX2/GFto72JSIGURpl8y l25MQFQwSi0wCNlxfPt+PaU/AWdNr76d/jFvuvIMBCUyZ/w0F4NVniDsdGXRUBR8NhwV 53DzOkKUUFIa0QQgAqh13g1WcJJ4Wzt1OJ47O6gMdC0ZjXRSiSqN0wvx1v7vPfNsMiEf p+/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=xzZW9LV+lZMOySPzKHdojgjEcUXgYKVd3kToGVtDdxU=; b=bJM58+PWnwZlbr0PWe7R8komkBXxSs+ss8z7kxXiL1D8XTeMfcVTQGpB8wie/yJNvu WSB5Ev2kpxvN3u/XqXgADH2+k8hlGfxlbmmYru6GX2baGjNakaJW+9pnskbMD47BPcyE gj43bIl1kX53ja+/O0h5CDS4RO5ZW/k51QhpUONPdvvogqcI8LXTUG+OBMR5lnCnyKNW i+vQdshAP03Y8pRuxtlnsvKyrMhMgv7RlsIhYD/9u3ccLNjTdcvWsniQ1eIKbEwiNDIu G0ZR9aKc2c4xya0U2xXuVzZc8mYgdP+WLtfH3eE4LDAbzpWyggq2Au/aaXE9ISheWKX9 o5gg== X-Gm-Message-State: APjAAAXlfzPqrQ99fJ8mQCpEF31xZVI5lWG461EzLMbiB2vic2ctSjRI PG5YAgHFv7NL5amGBxxq6pQZ5QCG4sTMdAHj6tSuPg== X-Google-Smtp-Source: APXvYqwIxDnhXDvtrGt5Sk6AYc7E99dJG/zz7Od8Xk98mS4SrYmc42XD4qWZ+v1HabWzXFYI3AIP0Pn2eYg5ZqoK+ho= X-Received: by 2002:ab0:4e0e:: with SMTP id g14mr17764156uah.20.1580861747724; Tue, 04 Feb 2020 16:15:47 -0800 (PST) MIME-Version: 1.0 References: <4555909.1rqTVSEV2j@beastie.bionicmutton.org> In-Reply-To: <4555909.1rqTVSEV2j@beastie.bionicmutton.org> From: "Philip M. Gollucci" Date: Tue, 4 Feb 2020 19:15:02 -0500 Message-ID: Subject: Re: Experiences with self-hosted git servers To: Adriaan de Groot Cc: freebsd-git@freebsd.org X-Rspamd-Queue-Id: 48C2CT06l6z3K6T X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; dkim=pass header.d=p6m7g8-com.20150623.gappssmtp.com header.s=20150623 header.b=ujHgnYK/; dmarc=none; spf=none (mx1.freebsd.org: domain of pgollucci@p6m7g8.com has no SPF policy when checking 2607:f8b0:4864:20::92f) smtp.mailfrom=pgollucci@p6m7g8.com X-Spamd-Result: default: False [-4.02 / 15.00]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000,0]; R_DKIM_ALLOW(-0.20)[p6m7g8-com.20150623.gappssmtp.com:s=20150623]; FROM_HAS_DN(0.00)[]; TO_DN_SOME(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-git@freebsd.org]; DMARC_NA(0.00)[p6m7g8.com]; URI_COUNT_ODD(1.00)[3]; TO_MATCH_ENVRCPT_SOME(0.00)[]; DKIM_TRACE(0.00)[p6m7g8-com.20150623.gappssmtp.com:+]; RCPT_COUNT_TWO(0.00)[2]; RCVD_IN_DNSWL_NONE(0.00)[f.2.9.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.4.6.8.4.0.b.8.f.7.0.6.2.list.dnswl.org : 127.0.5.0]; R_SPF_NA(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; IP_SCORE(-2.73)[ip: (-9.84), ipnet: 2607:f8b0::/32(-1.98), asn: 15169(-1.75), country: US(-0.05)]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: freebsd-git@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion of git use in the FreeBSD project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 05 Feb 2020 00:15:50 -0000 I actually know some github staff. I can also say with first hand knowledge from capital one that self hosted github enterprise does sso with saml or auth. Even if run in AWS. What breaks is the integrations to everything because your endpoint is different and you likely have a perimeter blocking things. On Tue, Feb 4, 2020 at 10:37 AM Adriaan de Groot wrote: > On Tuesday, 4 February 2020 15:37:57 CET Ed Maste wrote: > > There are a number of options for self-hosting, such as Gitea, GitLab, > > as well as git's plain built-in server. Phabricator (which we use for > > code reviews) also includes a repository hosting module named > > Diffusion. > > > > I am interested in hearing from FreeBSD users and developers who have > > used one or more of these, or other Git hosting tools - what worked > > well, what didn't? What do you wish you had known before getting > > started? > > With my KDE hat on (yet my FreeBSD mail address): talk to KDE sysadmin > (part > of whom I'm BCCing). > > We migrated from SVN to git a few years ago, and first did cgit (that's > git's > internal server, I think) plus reviewboard; then cgit plus phabricator; > now > we're migrating to GitLab and dropping cgit and phabricator. That last > migration is taking a while. > > KDE differs from FreeBSD in that we have about 300 repositories (one for > each > bit of KDE software) rather than a small number of really big repo's (e.g. > src, ports). There is a vaguely similar mechanism of "joining the project" > and > code-review is generally enforced by social contract, like in FreeBSD > ports. > > GitLab is generally pretty responsive in working with larger Free Software > projects; it is used by KDE and Gnome in that way, who have their > self-hosted > Community Edition GitLabs to work with, more-or-less integrated with their > own > identity provider systems. Having a web-based workflow, that also supports > drive-by-contributions, is seen as a bonus over plain git + phab. > Especially > Phabricator seems to be a drag on potential-new-contributors (and I'm not > sure > if it's developed anymore, which is one of the reasons KDE is switching > away > from it). > > Mainly for the move to GitLab: > > - figure out what role issues will play; are those for reviews? Developer > planning? bug reports? How do they align with Bugzilla use? > - figure out a branching strategy; what kind of private branches do you > want? > where are force-pushes allowed (eg. when rebasing or re-doing a patchset)? > squash or maintain development history? commit to master only? > - think about a labels- and tags-scheme; > > [ade] -- Philip M. Gollucci IT Executive and Engineering Leader http://www.linkedin.com/in/pgollucci/ 301.818.0719