[Mesa-dev] Gitlab migration

Jason Ekstrand jason at jlekstrand.net
Wed May 23 19:34:11 UTC 2018

Mesa developers,

tl;dr.  Please go to gitlab.freedesktop.org, create your account, and
upload your SSH keys.  Instructions are the bottom of this e-mail.

The freedesktop.org admins are trying to move as many projects and services
as possible over to gitlab and somehow I got hoodwinked into spear-heading
it for mesa.  There are a number of reasons for this change.  Some of those
reasons have to do with the maintenance cost of our sprawling and aging
infrastructure.  Some of those reasons provide significant benefit to the
project being migrated:

 * Project-led user/rights management.  If we're on gitlab, project
maintainers can give people access and we no longer have to wait for the
freedesktop admins to add a new person.  And the freedesktop admins don't
have to take the time.

 * Better web UI for git.  Ok, so some people will argue with me on this
one but it's at least how I feel. :-)

 * [Optional] Integrated commit history and issue tracking.  Bugzilla tags
are great but gitlab ties things together much better.

 * [Optional] Merge-request workflow.  With the rise of github, there are
many developers out there who are used to the merge-request workflow and
switching to that may lower the barrier to entry for new contributors.

 * [Optional] Built-in wiki support

 * [Optional] Built-in CI.  With gitlab, we can provide a docker image and
CI tasks to run in it which can do things such as build the website, run
build-tests, etc.  I'm not sure if build-testing Android is feasible but we
could at least build-test autotools, meson, scons, and maybe even run some
LLVMpipe tests.

Before anyone freaks out about the possible changes that may be incoming, I
would like to make it crystal clear that many of the above things are
optional.  We can continue to use Bugzilla for issue tracking and the
mailing list for patch review.  Both cgit and annongit will continue to
work for the foreseeable future.  The new fancy features such as merge
requests will all be disabled initially and we can consider enabling and
using those features on a case-by-case basis.  The only immediate change
will be that pushes will have to happen to gitlab instead of git.fd.o.  No
one is trying to change your workflow, they're just trying to move our git
hosting to a different platform.

One of the motivations for doing this now is that there has been some
desire to move the mesa website away from raw HTML and over to a platform
such as sphinx.  If we're going to do that, we need a system for building
the website whenever someone pushes to mesa.  The solution that the fd.o
admins would like us to use for that is the docker-based gitlab CI.  Laura
has been working on this the last couple of weeks and the results are
pretty nice looking so far.  You can check out a preview here:
https://mesa-test.freedesktop.org/intro.html  Using sphinx gives us all
sorts of neat things like nice text formatting, syntax highlighting, and
autogenerated searchable navigation. Right now, it's still using one of the
standard sphinx themes so it looks a bit "default" but that's something we
can change.

Making this transition happen will, obviously, require a small amount of
involvement from the mesa development community.  In particular, you'll all
need to get your SSH keys set up through gitlab.  Here's what you need to
do; it should take less than 5 minutes:

 1. Go to gitlab.freedesktop.org
 2. Click "Sign In / Register" in the upper left-hand corner
 3. You already have an account.  Click "Forgot your password?", type in
your fd.o-associated e-mail, and click "Reset Password".  Follow the
directions in the e-mail.
 4. Once you've successfully signed in, click on the little circle in the
upper right-hand corner and select "Settings"
 5. Click "SSH Keys" in the bar on the left and add your keys

Assuming no one explodes too badly, we'll do the actual migration soon.
Ideally, I'd like to not drag this out for more than a couple of weeks.
When the actual migration happens, the only change mesa devs will have to
make when this happens is to change the git remote they use for pushing to
point to gitlab.

Thanks for your cooperation (was that premature?),

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180523/d3abf732/attachment-0001.html>

More information about the mesa-dev mailing list