Checkbox stack migration from Launchpad to GitHub
Sylvain Pineau
sylvain.pineau at canonical.com
Tue Oct 4 11:32:30 UTC 2022
Hi all,
TL;DR
The checkbox stack is migrating from Launchpad repositories to a
"monorepo" on GitHub.
The certification tools team aims at officially switching on Friday 7th
October (11:00 UTC).
Rationale:
The Checkbox stack is made of several components from the core python
runtime
to test providers, all hosted separately in different repositories.
- Preparing a development environment requires cloning multiple sources
which
is not obvious for new contributors and promotes duplicating code
(multiple
solutions to the same problems because the whole inventory is not
necessarily
clear).
- New features or bug fixes involving code across multiple components
are not
easy to contribute or review together (e.g. code + packaging).
- Lax review process because we cannot gate changes with automations:
pre-merge
CI automations are presently not available, and if these were to be
maintained
across a dozen repositories, would be unattractive to build even if
possible.
- Maintaining Checkbox and Checkbox core snaps packaging in branches for
each
supported bases is unnecessary complex.
FAQ:
Q: Where's the monorepo?
A: https://github.com/canonical/checkbox
<https://github.com/canonical/checkbox>
Q: Can I use it now?
A: No, it's not fully configured.
Q: When can I start submitting PR?
A: on Friday 7th October (11:00 UTC)
Q: What does it mean for my Launchpad existing merge proposals [1]?
A: Please ask for reviews this week in order to land your merge proposals
before the final import planned on Friday, that’s the best solution.
If MRs can’t be merged before the migration they won’t be left behind as
they
can be re-posted as Pull requests on GitHub.
Q: What if I have a fix to submit for checkbox?
A: Please wait and submit it next week as a Pull request.
Q: Is the full git history preserved?
A: Yes it is, thanks to git-filter-repo.
Q: Will Launchpad repositories be turned into Read-only?
A: Probably yes (by setting up more restrictive permissions, see [2]).
[1] https://code.launchpad.net/checkbox-project/+activereviews
<https://code.launchpad.net/checkbox-project/+activereviews>
[2] https://help.launchpad.net/Code/Git#Permissions
<https://help.launchpad.net/Code/Git#Permissions>
Sylvain
More information about the Checkbox-devel
mailing list