Confirmed users
1,927
edits
(→Plan) |
(→Plan: a few more things have been accomplished) |
||
(9 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 45: | Line 47: | ||
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. | ||
# | # (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. | ||
# | # (DONE) Start running git-to-bzr periodically (every 5 minutes should be good). | ||
# Commit .gitignore file based on .bzrignore to git, and confirm that it has been mirrored. | # (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. | ||
# Enable write access on all git repos for all authorized accounts. | # (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 this for the unit tests (https://travis-ci.org/dnozay/bugzilla); we still need support for the Selenium tests in the qa branches. | # (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]. | ||
We will mirror the following bzr branches from git. There are | 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: | For existing installations: | ||
Line 72: | Line 76: | ||
* bugzilla/4.4 | * bugzilla/4.4 | ||
For tinderbox CI testing (switch off after travis-ci is set up for both packaged tests and qa tests): | 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/trunk | ||
* bugzilla/qa/4.0 | * bugzilla/qa/4.0 | ||
* bugzilla/qa/4.2 | * bugzilla/qa/4.2 | ||
* bugzilla/qa/4.4 | * bugzilla/qa/4.4 | ||
* bmo/4.2 | * bmo/4.2 (also needed until deployment scripts are updated, {{bug|973298}}) | ||
* bmo/4.2-dev | * bmo/4.2-dev (also needed until deployment scripts are updated, {{bug|973298}}) | ||
* bmo/qa/4.2 | * bmo/qa/4.2 | ||