Confirmed users
1,927
edits
(→Plan) |
(→Plan: a few more things have been accomplished) |
||
(14 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
It has been proposed to move the Bugzilla source from bzr.mozilla.org to git.mozilla.org with a read-only mirror on GitHub. | It has been proposed to use [http://git-scm.com/ Git] as Bugzilla's [http://en.wikipedia.org/wiki/Revision_control VCS] instead of [http://bazaar.canonical.com/ Bazaar], and move the Bugzilla source from bzr.mozilla.org to git.mozilla.org with a read-only mirror on GitHub. | ||
The migration was completed successfully on 2014/03/11. git.mozilla.org currently contains the repositories of record for Bugzilla and related code. | |||
== Rationale == | == Rationale == | ||
Line 30: | Line 32: | ||
There are a bunch of things we'll need to do to complete this. Some can be done in parallel. | There are a bunch of things we'll need to do to complete this. Some can be done in parallel. | ||
The tracking bug for the migrations is {{bug|929685}}. | |||
Pre-migration: | Pre-migration: | ||
Line 37: | Line 41: | ||
# ([[Bugzilla:Moving_From_Bazaar_To_Git|DONE]]) Write migration instructions similar to https://wiki.mozilla.org/Bugzilla:Moving_From_CVS_To_Bazaar | # ([[Bugzilla:Moving_From_Bazaar_To_Git|DONE]]) Write migration instructions similar to https://wiki.mozilla.org/Bugzilla:Moving_From_CVS_To_Bazaar | ||
# (DONE, though see {{bug|967697}}) Set up repos (bugzilla and bmo) on git.mozilla.org. | # (DONE, though see {{bug|967697}}) Set up repos (bugzilla and bmo) on git.mozilla.org. | ||
# (DONE) Determine which branches should be migrated over (presumably all, but there might be obsolete branches) and estimate how long this will take. | # (DONE, approx 1h15m) Determine which branches should be migrated over (presumably all, but there might be obsolete branches) and estimate how long this will take. | ||
# Do a trial migration. | # (DONE) Do a trial migration. | ||
# Announce date for migration. | # (DONE, 11 March 2014) Announce date for migration. | ||
Migration: | Migration: | ||
# Disallow commits to bzr aside from those originating from the git-to-bzr script. | # (DONE) Create git repos, restricting write access to just the account used for the migration. | ||
# Perform fast-import/-export migration on all | # (DONE) Disallow commits to bzr aside from those originating from the git-to-bzr script. | ||
# | # (DONE) Perform fast-import/-export migration on all branches of bugzilla, bmo, and related repositories, excluding those listed in the section below, using the migrate.sh script. | ||
# | # (DONE) Run git-to-bzr script once on all mirrored branches (see below) to initialize the .gitrev tracking file. | ||
# Commit .gitignore file based on .bzrignore to git, and confirm that it has been mirrored. | # (DONE) Start running git-to-bzr periodically (every 5 minutes should be good). | ||
# (DONE just for bugzilla/master so far) Commit .gitignore file based on .bzrignore to git (at least to supported/active repos/branches), and confirm that it has been mirrored. | |||
# (DONE) Enable write access on all git repos for all authorized accounts. | |||
Soon after: | Soon after: | ||
# Set up repos on GitHub and configure git.m.o repos to mirror there. | # (DONE) Set up repos on GitHub and configure git.m.o repos to mirror there. | ||
# Set up a travis-ci instance with a test migration to GitHub. Note: someone out there has apparently done | # (DONE) Set up a travis-ci instance with a test migration to GitHub. Note: someone out there has apparently done this for the unit tests (https://travis-ci.org/dnozay/bugzilla); we still need support for the Selenium tests in the qa branches. | ||
Eventually: | Eventually: | ||
# Turn off tinderbox when we are sure that the test results from travis-ci and tinderbox match. | # (DONE) Turn off tinderbox when we are sure that the test results from travis-ci and tinderbox match. | ||
# Turn off bzr ({{bug|967642}}). | # Turn off bzr ({{bug|967642}}). | ||
Migration scripts are in a [https://github.com/markrcote/bugzilla-git-migration GitHub repo]. | Migration scripts are in a [https://github.com/markrcote/bugzilla-git-migration GitHub repo]. | ||
If there are any problems during the migration, we'll abort and re-enable write access to bzr.mozilla.org as it was pre-migration. | |||
We will mirror the following bzr branches from git. There are three reasons to mirror: to support existing deployment scripts, to support existing bzr-based installations, and to have tinderbox continue to test commits until we switch to travis-ci. | |||
For existing installations: | |||
* bugzilla/4.0 (switch off after 5.0 is released, at which point we can also stop mirroring to cvs) | |||
* bugzilla/4.2 | |||
* bugzilla/4.4 | |||
For tinderbox CI testing (switch off after travis-ci is set up for both packaged tests and qa tests) and deployment scripts: | |||
* bugzilla/trunk | |||
* bugzilla/qa/4.0 | |||
* bugzilla/qa/4.2 | |||
* bugzilla/qa/4.4 | |||
* bmo/4.2 (also needed until deployment scripts are updated, {{bug|973298}}) | |||
* bmo/4.2-dev (also needed until deployment scripts are updated, {{bug|973298}}) | |||
* bmo/qa/4.2 | |||
=== Mapping === | === Mapping === |