Gentoo Archives: gentoo-dev-announce

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev-announce <gentoo-dev-announce@l.g.o>
Cc: gentoo-project <gentoo-project@l.g.o>
Subject: [gentoo-dev-announce] Repo mirror & CI: official statement wrt GitHub
Date: Sat, 09 Jun 2018 20:11:49
Message-Id: 1528529135.1261.34.camel@gentoo.org
Hi, everyone.

As the lead (and practically the only active developer) of Repository
mirror & CI project, I would like to give you a quick update on my plans
wrt GitHub.  The project is currently using GitHub in two ways:

1. to host mirrors of ebuild repositories on GitHub (the Gentoo
repository is also mirrored to git.g.o);

2. to process pull requests to gentoo/gentoo on GitHub -- to ping
developers and run CI on PRs.

As most of you have probably heard by now, Microsoft will be acquiring
GitHub [1].  This has caused a lot of fuzz, and a lot of projects have
started packing their stuff and moving out.  However, I don't really see
much of a purpose in that right now.

[1]:https://blog.github.com/2018-06-04-github-microsoft/


Mirrors
-------
There are two reasons why repository mirrors are using GitHub.
The technical reason is that it has a trivial API for creating
and maintaining a lot of repositories automatically.  The legal reason
is that it keeps all the 'potentially uncertain' stuff out of Gentoo
infrastructure.

I have been considering moving repository mirrors to Gentoo
infrastructure.  However, the project aims to mirror all repositories
listed in repositories.xml, and we neither can nor really want to
actively monitor the content of all of them.  What we're trying to avoid
is pulling into public Gentoo git repositories data that could end up
causing a legal threat to the infrastructure.

That said, I wouldn't mind adding additional git.gentoo.org mirrors for
the official Gentoo repositories that are hosted on git.gentoo.org
already (since obviously there's no more threat in that).  Please ping
me privately if there's interest in that, and I'll look into extending
the scripts to handle this.

As for moving mirrors elsewhere, I don't really see much of a purpose
in doing that; at least as long as GitHub provides the service for free
and doesn't complain about the space or the traffic involved.
The primary use of the service is through git, so I don't really think
it matters where the servers stand.  Moving them elsewhere sounds like
an unnecessary complexity for our users who'd have to update repos.conf.


Pull requests
-------------
The pull request support was oriented on GitHub for a very simple
reason: because it had a lot of users, therefore it was convenient
for a lot of people.  Now that GitHub is losing users, this argument may
stop being valid at some point.

I'm ready and willing to support GitHub pull requests as long as there's
interest in contributors using them, and the terms of service don't
cause us any major trouble.  That said, this particular project doesn't
have much of a say how users decide to submit contributions and/or how
developers wish to accept them.

If alternative platforms (e.g. GitLab) receive official Gentoo ebuild
repository mirror and gains a significant interest in pull request
assignment and/or CI services, I'm willing to extend the scripts to
handle that.  However, this highly depends on developer support
(i.e. there's no point in another pull request repository if every other
pull request would be saying 'this dev is not here, file a bug instead')
and time to update the scripts for the appropriate API.


To those who believe moving out of GitHub is the only thing to do,
I would like to remind you of two things.  Firstly, if Microsoft indeed
has malicious intent, then they've already won because you've let them
fragment the community.  Secondly, how do you know that GitLab won't be
sold to another 'big player' soon enough?

-- 
Best regards,
Michał Górny