SVN repository for ports

Please don't edit this page without consulting portmgr or the ports svn migration team.

Proposed SVN layout

svn.freebsd.org/ports/svnadmin
svn.freebsd.org/ports/svnadmin/conf
svn.freebsd.org/ports/svnadmin/hooks
svn.freebsd.org/ports/svnadmin/tools
svn.freebsd.org/ports/branches
svn.freebsd.org/ports/tags
svn.freebsd.org/ports/head
svn.freebsd.org/ports/head/category/port

Preparation

Task

Responsible

Contact

Comments

{OK} Check if we can run svn2cvs converter on ports

beat

There will be a svn2cvs converter

{OK} Discuss if history should be migrated to SVN

beat

We're going to migrate the history

{OK} Define SVN layout

beat

See above

{OK} Decide if we should skip some old branches

beat

See StrategyRules in http://people.FreeBSD.org/~beat/cvs2svn/cvs2svn.options

{OK} Setting up test repository in FreeBSD environment

beat

clusteradm

Test environment will be on svn.chruetertee.ch

{OK} Test acl of new repository

beat

{OK} Set up svn web frontend

beat

http://svn.chruetertee.ch/viewvc/viewvc.cgi

{OK} Determine SVN Client requirements (SVN keywords and so on)

beat

Same requirements as src/: ENHANCED_KEYWORD and FREEBSD_TEMPLATE = on

{OK} Take a look of src svn hooks and evaluate which one chould be used in ports svn

beat

First try: http://people.freebsd.org/~beat/cvs2svn/hooks.tar

{OK} Make svn2cvs converter running with ports svn

beat

clusteradm

http://people.freebsd.org/~beat/cvs2svn/export.py

{OK} Open test environment for committers to test their scripts and tools -> Send announcements to ports-developers@

beat

done

{OK} Make checkacl (base/svnadmin/tools/checkacl) more generic. Current implementation is src/ focused and sets SVN_COMMIT_ATTRIB=ports even if a ports committer commits to ports which adds an additional tag to the commit mail. Also there is no SVN_COMMIT_ATTRIB=src yet.

beat

peter?

proposed patch: http://people.FreeBSD.org/~beat/cvs2svn/checkacl.patch - Deferred (discussed with simon@): We will have our own checkacl for the migration

{OK} Check which scripts from ports/Tools/scripts are needed with svn and convert them

#scripts

{OK} Write additional hooks if needed (eg. for QAT)

beat

http://people.freebsd.org/~beat/cvs2svn/hooks.tar

{OK} Contact redports author and get redports working with svn

beat

decke

{X} Contact portsnap author and get portsnap working with svn

beat

cperciva

deferred

{OK} Contact freshports author and it them working with svn

beat

dvl

{OK} Get pointyhat running with svn

erwin

portmgr

Prime switched

{X} If needed add portsnap support for tinderbox (which has svn support)

-

suspended due to the CVS exporter

{OK} If QAT is back by then, update QAT code to svn

-

decke

Based on Redports

{OK} Create patches for portlint

marcus

{OK} Scan ports/ports-mgmt for ports/scripts which needs to be adjusted

done, execpt from porttools and portlint is it clean.

{OK} Create patches for porters handbook and committers guide to reflect RCS change to svn

beat

CG: http://people.freebsd.org/~beat/cvs2svn/committers-handbook-ports.patch PH: http://people.freebsd.org/~beat/cvs2svn/porters-hanbook-svn.patch

{OK} Create wiki page with best practice -> usefull svn commands, Checkout, Tagging, Branching?, Forced commit workaround, revive deleted files and ports, limitations, document svn mv/cp pitfall if target already exists and document how to escape from

beat

PortsSubversionPrimer

{OK} Set up svn2git converter for git.freebsd.org

uqs

{OK} Test all possible use cases and check if they are documented -> Create new port, update port, delete port, lock tree, tagging, revive deleted files and ports, repo-copy checklist

miwi

{OK} Set up svn-ports-all@, svn-ports-head@ and svn-ports-svnadmin@ mailinglists

beat

postmaster

{OK} secteam review of infrastructure

beat

secteam

Clusteradm Ticket 36

{OK} Disable auto module update script

beat

edwin

{OK} Setting up ports repository in FreeBSD environment

beat

clusteradm

Clusteradm Ticket 36

{OK} Change liks on http://svn.freebsd.org to not point to base directly

beat

clusteradm

Clusteradm Ticket 37

Migration

Detailled task list is available at: http://people.freebsd.org/~beat/cvs2svn/tasklist

Task

Responsible

Contact

Comments

{OK} Send Heads up to developers@

{OK} Lock down portstree

{OK} Run cvs2svn script

http://people.FreeBSD.org/~beat/cvs2svn/cvs2svn-port-shrinked.sh / Patched cvs2svn needed: http://people.freebsd.org/~beat/cvs2svn/cvs2svn.patch / Port patch with cvs2svn trunk and patch included: http://people.freebsd.org/~beat/cvs2svn/cvs2svn-port.patch

{OK} Import svn dump

{OK} Run svnadmin pack

{OK} Install and start svn2cvs converter

http://people.freebsd.org/~beat/cvs2svn/export.py

{OK} Update svnssh / checkacl and install new versions on svn.freebsd.org

http://people.FreeBSD.org/~beat/cvs2svn/svnssh.patch http://people.FreeBSD.org/~beat/cvs2svn/checkacl.tar

{OK} Install svn configuration

http://people.freebsd.org/~beat/cvs2svn/conf.tar

{OK} Install hooks

http://people.freebsd.org/~beat/cvs2svn/hooks.tar

{OK} Populate svnadmin

http://people.freebsd.org/~beat/cvs2svn/create-svnadmin.sh

{OK} Checkout conf/ and hooks/ in port repo and fix permissions

{OK} Commit svn wrapper to ports/head/Tools/scripts

http://people.FreeBSD.org/~beat/cvs2svn/psvn

{OK} Change dfilter to work with SVN

ru

Commit patches to ports/Tools and portlint

ports/Tools done, portlint missing

{OK} Commit patches to porters handbook and committers guide

CG: http://people.freebsd.org/~beat/cvs2svn/committers-handbook-ports.patch PH: http://people.freebsd.org/~beat/cvs2svn/porters-hanbook-svn.patch

{OK} Commit patch to ports/head/CHANGES

http://people.freebsd.org/~beat/cvs2svn/CHANGES.patch

{OK} Commit svn update patch to ports/head/Makefile

http://people.freebsd.org/~beat/cvs2svn/ports-Makefile.patch

{OK} Send heads up to freshports, freshsource, freshbsd

{OK} Send Heads up to cvs-ports@ that recipient should switch to svn-ports-all@ or svn-ports-head@

{OK} Mark cvs-ports@ as obsolete

postmaster

{OK} Hardlock CVS (only exporter is allowed to commit to CVS)

clusteradm

{OK} Set up svnsync / rsync / svnmirror seed

clusteradm

{OK} Unlock tree in SVN

{OK} Send Heads up to developers@

Change grim reaper to work with SVN

peter?

Clusteradm Ticket 39

Finishing work

Task

Responsible

Contact

Comments

Switch portsnap from cvsup-master to svn

cperciva

cperciva is working on it

{OK} Switch tindex to svn

beat

{OK} Switch pointyhat to svn

portmgr

prime switched

Merge documentation from wiki to the official one

GCIN task created

Send heads up to tinderbox users that they should switch to svn (on tinderbox mailing-list)

deferred until cvsup is deprecated

(./) Deprecate c(v)sup in favor of portsnap (for users) send heads up to ports@, ports-announce@ and freebsd-announce@

End of February 2013

Decommission ports cvsup infrastructure

freebsd-hubs

Someday...

Scripts for migration

scripts that need attention:

Script name

Responsible

Contact

Comments

{OK} MOVEDlint.awk

EitanAdler

{OK} README

ports@

{OK} addport

ChrisRees

RenatoBotelho / ChrisRees

bump_revision.pl

EdwinGroothuis

chkversion.pl

ErwinLansing

patchtool.py

MaximSobolev

portsvar.sh

DaichiGoto

release/Makefile

re@

release/README

re@

{OK} rmport

ChrisRees

ChrisRees

sunshar.rb sunshar/Makefile sunshar/sunshar.1

AkinoriMusha

AkinoriMusha / StanislavSedov

tindex

ErwinLansing

PortsSVN (last edited 2012-10-21 12:58:54 by BeatGaetzi)