← Back to team overview

checkbox-dev team mailing list archive

Transitioning Checkbox over to git

 

Hey.

So the writing has been on the wall for a while now. We'll be moving
all of Checkbox over to git. Launchpad now supports hosting git
repositories and thus the main blocker is gone.

Still, we won't be doing this overnight. There are important things we
must look after before this is possible.

First of all, I want to ensure that everyone is familiar and
comfortable with git. Due to my stubbornness we have had git-lp for a
good while. This allows us to work with git, if desired, and still
contribute bzr branches to launchpad. I know that many of our
contributors are currently using that tool. Still, native git is quite
different and I want to make sure that everyone is comfortable with
the switch. I'd like to extend my invitation to personally train,
teach and troubleshoot any of the issues you encounter with git. Feel
free to ping me privately for help anytime you need it.

Second, and not less so, we need our infrastructure to support git.
There are many little things to do here. We need to re-export our git
tree to bazaar, so that our PPA builds can continue (as they don't
support git yet). We need to port our release scripts to work with git
(though I would argue that we can really totally re-do the whole
release process if we use git towards our advantage, more about that
below).

The biggest problem we're facing here is, though, Tarmac. Tarmac is
the thing that looks at merge requests, merges them, runs tests and
either commits or tells us about problems. Since we're not quite
interested in doing this manually anymore, we have to invest some time
in making it support Git.

Fortunately we are not alone in our situation. I've started working
with Michael Vogt (mvo) as they are in a similar situation and want
very much the same thing. We'll work together in adding git support to
Tarmac and letting everyone that wants to use that aware of it.

Lastly, there are the new opportunities. The git transition on
launchpad coincides with similar movement in the Debian Python
packaging community. We can use some of the recently developed tools
like git-dpm. We can use git to work on our upstream code, on our test
releases, on our production releases. We can also use it to work on
packaging for Ubuntu, for Debian and any custom effort that me may
need to do. I strongly recommend you to look into git-dpm and using it
in conjunction with git-using upstream.

If you're interested and want to help or if you're just curious and
want to know more then feel free to reach out to me. I will deliver
updates as the effort continues.

Best regards
ZK