Opened 5 years ago

Closed 7 weeks ago

#15948 closed task (fixed)

Can we do away with public SVN?

Reported by: nickm Owned by: anarcat
Priority: Medium Milestone:
Component: Internal Services/Service - git Version:
Severity: Normal Keywords:
Cc: Actual Points:
Parent ID: #17202 Points:
Reviewer: Sponsor:

Description

According to https://svn.torproject.org/cgi-bin/viewvc.cgi/Tor/ , it's been at least six months since anything changed on the public SVN repository.

Most of the repositories there have been migrated to git.

We could migrate all the rest to git (if appropriate) or archive them (if appropriate), and turn off the lights on public svn.

Child Tickets

TicketStatusOwnerSummaryComponent
#4929closedtor-gitadmmigrate svn to gitInternal Services/Service - git
#32031closedanarcatMake new svn.tpo static componentInternal Services/Tor Sysadmin Team

Change History (22)

comment:1 Changed 5 years ago by Sebastian

I wonder if we should turn it into a public directory of files for some parts of it. Some can just go because they have already been moved to git. Migrating dead repos to git is no fun, but deleting code also doesn't make me happy

comment:2 Changed 5 years ago by atagar

Migrating dead repos to git is no fun, but deleting code also doesn't make me happy

Agreed. Maybe just switch svn to be read-only? This would prompt us to migrate things we need to git if/when we need to touch them.

comment:3 Changed 5 years ago by nickm

I would happily volunteer to help migrating a bunch of not-yet-migrated stuff if that's what we decide to do; it is pretty easy to script.

One reason I'm suggesting migration or archiving here is that our list ofSVN repositories is largely invisible; I bet a lot of folks who look over gitweb from time to time have forgotten all the stuff that was in our SVN.

comment:4 Changed 5 years ago by atagar

One reason I'm suggesting migration or archiving here is that our list ofSVN repositories is largely invisible; I bet a lot of folks who look over gitweb from time to time have forgotten all the stuff that was in our SVN.

If it's unused and untouched I'd argue that's a good thing. Less is more - adding clutter to our gitweb listing will just make our ecosystem even tougher to navigate for newcomers.

comment:5 Changed 5 years ago by arma

I looked over https://svn.torproject.org/svn/ and so far as I can tell, everything outside https://svn.torproject.org/svn/projects/ is basically obsolete.

(blossom is interesting in an archaic archeology sort of way.)

Inside svn/projects/, I find https://svn.torproject.org/svn/projects/design-paper/ still useful,
and we still link people to https://svn.torproject.org/svn/projects/presentations/ and https://svn.torproject.org/svn/projects/articles/ and https://svn.torproject.org/svn/projects/roadmaps/

But it looks like those are all reasonably self-contained. Also, as people point out above, they are read-only at this point. (I think Andrew was committing to projects/presentations/ relatively recently, but he has of course stopped that since.)

comment:6 Changed 2 years ago by teor

Severity: Normal

Set all open tickets without a severity to "Normal"

comment:7 Changed 16 months ago by irl

Owner: changed from erinn, nickm, Sebastian, weasel to tor-gitadm
Status: newassigned

Setting owner to tor-gitadm as the owners that are set are not working on this currently. (Please correct me if I'm wrong).

comment:8 Changed 14 months ago by irl

Owner: changed from tor-gitadm to irl
Status: assignedaccepted

I believe we are closer to turning off public SVN, but need to have some redirects in place for articles, presentations and design paper.

svn.tpo will be served from the static mirrors but we'll have RewriteRules in place to send requests off to the new homes for these files. Some may go to media.torproject.org.

For everything that is not in the set of commonly linked resources, there is the full archive dump now uploaded to archive.org: https://archive.org/details/tor_public_svn

comment:9 Changed 8 months ago by irl

Owner: changed from irl to tor-gitadm
Status: acceptedassigned

I don't appear to be making progress with this currently, nor do I expect to this month at least.

comment:10 Changed 8 months ago by irl

Status: assignednew

comment:11 Changed 4 months ago by anarcat

so i'd love to shutdown the SVN server (#17202), can I help with this in some way?

it seems all that's left to be done here is move some stuff (projects/design-paper, projects/presentations and projects/articles/ and projects/roadmaps/) to media.tpo and "add redirects" (which probably would mean "turn svn.torproject.org in a static website").

then we fix the internal SVN stuff (#15949) and i can shutdown that darn machine already. :)

comment:12 Changed 3 months ago by anarcat

Parent ID: #17202

comment:13 Changed 2 months ago by arma

I'm ok with a variety of solutions here, so long as a few of the existing urls continue to work somehow. To make concrete progress, here is one proposed way forward:

  • /svn/projects/design-paper/
  • /svn/projects/articles/
  • /svn/projects/roadmaps/

For these, I propose we create a new website, as a static component, called svn.torproject.org, and we put these files on it. Then it can keep serving them just like before, and they're small and straightforward.

  • /svn/projects/presentations/

Moving these to media.tpo and adding a redirect rule would make sense. And if we don't want to wait for #23377 or other "revamp media.tpo" tickets, we could put them on the static svn.tpo component for now, and then a new media.tpo could intake them at its own pace.

  • All the other files, we can either rely on the archive.org snapshot that irl made (and delete them ourselves), or we can grab that snapshot and keep it squirreled away somewhere, maybe eventually destined for archive.tpo or museum.tpo or whatever.

Anarcat, shall I put together that proposed future svn.tpo set of static files, and we can proceed?

comment:14 in reply to:  13 Changed 2 months ago by arma

Replying to arma:

  • /svn/projects/presentations/

Moving these to media.tpo and adding a redirect rule would make sense. And if we don't want to wait for #23377 or other "revamp media.tpo" tickets, we could put them on the static svn.tpo component for now, and then a new media.tpo could intake them at its own pace.

Slightly better plan for this one, on the theory that I bet the static webserver rotations won't enjoy a bonus 500 megabytes of stuff that they didn't otherwise expect: mkdir an "outreach-material/svn-presentations" directory on media.tpo and dump them in. Then plan to do the rewriterule thing for that directory.

comment:15 Changed 2 months ago by arma

Ok, I've filed #32031 for getting this new static website component called svn.

Once we have it, we can populate it with the 500MB of files we want to rescue, and then point svn.tpo dns to it, and then we'll be nearly done here.

comment:16 Changed 2 months ago by anarcat

static component created, ready to populate. i don't think we can point svn.tpo there before internal and corp are migrated, however, as they live on the same FQDN (even if invisible).

comment:17 Changed 7 weeks ago by anarcat

Owner: changed from tor-gitadm to arma
Status: newassigned

@arma - do you need help with populating that static component or the redirections? should i take this on instead?

explicitely reassigning to you, in any case, to show the current known state, AFAIK.

comment:18 in reply to:  17 Changed 7 weeks ago by arma

Replying to anarcat:

@arma - do you need help with populating that static component or the redirections? should i take this on instead?

explicitely reassigning to you, in any case, to show the current known state, AFAIK.

Yes please! Help would be great.

I made a README.html file in /srv/svn-archive.torproject.org/htdocs/ on staticiforme, but then I got distracted before writing the body of that file. So, yes please, tag you're it. :)

comment:19 Changed 7 weeks ago by anarcat

Owner: changed from arma to anarcat
Status: assignedaccepted

I made a README.html file in /srv/svn-archive.torproject.org/htdocs/ on staticiforme, but then I got distracted before writing the body of that file. So, yes please, tag you're it. :)

I've completed the README and pushed the result to the mirrors. I'm not sure what's left to be done here, but it sure looks like there's stuff missing from svn-archive.tpo when looking at svn.tpo... is that by design?

the next steps are therefore:

  1. archive the rest of the repositories in /svn, which is /tor internally (if necessary?)
  2. redirect https://svn.torproject.org/svn/ to https://svn-archive.torproject.org/svn/

The latter will not break internal or corp as they are in a different namespace (svn.tpo/internal/ and /corp, respectively).

Makes sense?

comment:20 in reply to:  19 Changed 7 weeks ago by arma

Replying to anarcat:

but it sure looks like there's stuff missing from svn-archive.tpo when looking at svn.tpo... is that by design?

Yes

the next steps are therefore:

  1. archive the rest of the repositories in /svn, which is /tor internally (if necessary?)
  2. redirect https://svn.torproject.org/svn/ to https://svn-archive.torproject.org/svn/

According to my original plan, we should add 4 RedirectRules, one for each of the directories in
https://svn-archive.torproject.org/svn/projects/
and the rest can stay where it is as a 404.

I'm fine with somebody else wanting to make a competing plan, but this was the one I had in mind. :)

comment:21 Changed 7 weeks ago by anarcat

According to my original plan, we should add 4 RedirectRules

Right, sorry I misunderstood, will do!

I will also ship an svnadmin dump (equivalent of the svnrdump available on IA) with the archive, because I'm worried some source code might actually be lost forever if IA forgets about us. It seems that *some* repositories have *not* been migrated in there, so I think it's worth the extra space.

comment:22 Changed 7 weeks ago by anarcat

Resolution: fixed
Status: acceptedclosed

okay, i think we're done here. i've done a svnadmin dump of the entire repo, slapped that in the static component, tweaked up the README file and added a redirect from svn.tpo/svn to the new repo. eventually, that redirect will go away of course when we totally shutdown gayi, but this is good for now.

Note: See TracTickets for help on using tickets.