The default bug view has changed. See this FAQ.

delete non-CVS-based git repos

RESOLVED FIXED

Status

Release Engineering
General Automation
RESOLVED FIXED
4 years ago
3 years ago

People

(Reporter: aki, Assigned: aki)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

4 years ago
Any [releng-created] mozilla-central based git repos that don't have CVS history should be reset with CVS history prepended.

This will change the SHA1s of the revisions, so we'll need to coordinate with anyone currently using those repos.

The current todo list:

_ (hwine) need a list of non-cvs repos, or how to get them
_ need to determine whether we have the existing cvs-based repos converted already
  (if not, extra work here to do the conversion)
_ notify any owner of non-cvs-repo-forks about impending reset
  (you can get this via github's fork->members page)
_ schedule + do reset


Hal:  I'm assigning to you for the first portion.
Once you're done with that, feel free to unassign, assign to me, or find a volunteer.
(Assignee)

Updated

4 years ago
Blocks: 799719
No longer blocks: 779719
(Assignee)

Updated

4 years ago
Depends on: 848427
Product: mozilla.org → Release Engineering
(Assignee)

Comment 1

4 years ago
(In reply to Aki Sasaki [:aki] from comment #0)
> The current todo list:
> 
> _ (hwine) need a list of non-cvs repos, or how to get them
> _ need to determine whether we have the existing cvs-based repos converted
> already

<snip>

> Hal:  I'm assigning to you for the first portion.
> Once you're done with that, feel free to unassign, assign to me, or find a
> volunteer.

Looks like releases-m-c, releases-m-a, and releases-m-r.

What git issues does this refer to?

    # m-b only to bit bucket while git issues sorted out
    "hg:$HOME/nfs/converted_repos/releases-mozilla-beta" "bitbucket"
Flags: needinfo?(hwine)
(In reply to Aki Sasaki [:aki] from comment #1)
> (In reply to Aki Sasaki [:aki] from comment #0)
> > The current todo list:
> > 
> > _ (hwine) need a list of non-cvs repos, or how to get them

Easiest way is to see which jobs are configured to push to github and then check the location on github:
    $ ack 'mozilla-.*github' job0*
    job01_cmds
    7:    "hg:$HOME/nfs/converted_repos/releases-mozilla-release" "bitbucket github git.m.o"
        url = git+ssh://git@github.com/mozilla/releases-mozilla-release.git

    job02_cmds
    4:    "hg:$HOME/repos/releases-mozilla-central-no-cvs" "github"
        url = git+ssh://git@github.com/mozilla/releases-mozilla-central.git

    job03_cmds
    4:    "hg:$HOME/repos/releases-mozilla-aurora"  "bitbucket github"
        url = git+ssh://git@github.com/mozilla/releases-mozilla-aurora.git

> > _ need to determine whether we have the existing cvs-based repos converted
> > already

Summarizing, that's hg repos of: mozilla-central, releases/mozilla-aurora, releases/mozilla-release

> <snip>
> 
> > Hal:  I'm assigning to you for the first portion.
> > Once you're done with that, feel free to unassign, assign to me, or find a
> > volunteer.
> 
> Looks like releases-m-c, releases-m-a, and releases-m-r.
> 
> What git issues does this refer to?
> 
>     # m-b only to bit bucket while git issues sorted out
>     "hg:$HOME/nfs/converted_repos/releases-mozilla-beta" "bitbucket"

Something very ancient and old (Sept 2012 - according to hg anno), and no longer material. If I had to guess, it related to conversion repo corruption issues due to converting on NFS and not having disabled git garbage collection at the time.
Flags: needinfo?(hwine)
next action: come up with text to send to current users.
Assignee: hwine → nobody
(Assignee)

Updated

4 years ago
Blocks: 929334
Summary: reset non-CVS-based git repos → delete non-CVS-based git repos
(Assignee)

Updated

4 years ago
Assignee: nobody → aki
Duplicate of this bug: 848427
(In reply to Hal Wine [:hwine] (use needinfo) from comment #2)
> (In reply to Aki Sasaki [:aki] from comment #1)
> > (In reply to Aki Sasaki [:aki] from comment #0)
...
> Summarizing, that's hg repos of: mozilla-central, releases/mozilla-aurora,
> releases/mozilla-release
...

...and releases/mozilla-beta. 

(From irc, Aki already has beta on his radar, but we decided to add it here to make sure its not missed.)
(Assignee)

Comment 6

4 years ago
It might be good to have the rebase script first, bug 929338.
Depends on: 929338
(Assignee)

Comment 7

3 years ago
Created attachment 8345011 [details] [diff] [review]
kill_standalone

For Friday.
Attachment #8345011 - Flags: review?(hwine)
(Assignee)

Comment 8

3 years ago
This script pushes an empty repo (except for README.md) as a child of the first changeset in the repo.  Then it moves all existing remote branches to that revision as a non-fastforwardable push.


#!/bin/sh -xe
# write a readme, and put it in ..
# clone the repo

readme="README.md"
rev1=`git log --topo-order --reverse | head -1 | sed -e 's/commit //'`
branchlist=`git branch -r | sed -e 's/.* origin\///g'`

git checkout $rev1
find . -depth 1 ! -name .git -exec rm -rf {} \; -prune
cp ../$readme .
git add $readme
git commit -a -m "retire this repo in favor of gecko-dev"
for branch in $branchlist ; do
    git checkout -B $branch
done
#git push --all -f
(Assignee)

Comment 9

3 years ago
Using https://github.com/escapewindow/test-project-branches/blob/master/README.md as a test README.md .
Comment on attachment 8345011 [details] [diff] [review]
kill_standalone

Review of attachment 8345011 [details] [diff] [review]:
-----------------------------------------------------------------

For job02_cmds, I'm not sure if an empty command list will be processed properly, so we should
 a) kill the job on the machine
 b) update the status file to indicate it's no longer running. (just documentation, not functional)

r+ with that, as if there are any issues, they will be non-production-impacting.
Attachment #8345011 - Flags: review?(hwine) → review+
(Assignee)

Comment 11

3 years ago
Comment on attachment 8345011 [details] [diff] [review]
kill_standalone

https://hg.mozilla.org/users/hwine_mozilla.com/repo-sync-configs/rev/973edc804b24
Attachment #8345011 - Flags: checked-in+
(Assignee)

Comment 12

3 years ago
I used the script in comment 8 to kill these four repos, with this change:

branchlist="master `git branch -r | sed -e 's/.* origin\///g' | grep -v master`"

I imagine the next step is to wait and field any questions about these repos.
After some amount of time has passed, we can delete them entirely.
(Assignee)

Comment 13

3 years ago
I'm thinking enough time has passed for the releases-mozilla-* repos, which never saw much use in the first place.
(Assignee)

Comment 14

3 years ago
Deleted releases-mozilla-{central,aurora,beta,release}.
Status: NEW → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.