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 |
Check if we can run svn2cvs converter on ports |
beat |
|
There will be a svn2cvs converter |
Discuss if history should be migrated to SVN |
beat |
|
We're going to migrate the history |
Define SVN layout |
beat |
|
See above |
Decide if we should skip some old branches |
beat |
|
See StrategyRules in http://people.FreeBSD.org/~beat/cvs2svn/cvs2svn.options |
Setting up test repository in FreeBSD environment |
beat |
clusteradm |
Test environment will be on svn.chruetertee.ch |
Test acl of new repository |
beat |
|
|
Set up svn web frontend |
beat |
|
|
Determine SVN Client requirements (SVN keywords and so on) |
beat |
|
Same requirements as src/: ENHANCED_KEYWORD and FREEBSD_TEMPLATE = on |
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 |
Make svn2cvs converter running with ports svn |
beat |
clusteradm |
|
Open test environment for committers to test their scripts and tools -> Send announcements to ports-developers@ |
beat |
|
done |
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 |
Check which scripts from ports/Tools/scripts are needed with svn and convert them |
|
|
|
Write additional hooks if needed (eg. for QAT) |
beat |
|
|
Contact redports author and get redports working with svn |
beat |
decke |
|
Contact portsnap author and get portsnap working with svn |
beat |
cperciva |
deferred |
Contact freshports author and it them working with svn |
beat |
dvl |
|
Get pointyhat running with svn |
erwin |
portmgr |
Prime switched |
If needed add portsnap support for tinderbox (which has svn support) |
- |
|
suspended due to the CVS exporter |
If QAT is back by then, update QAT code to svn |
- |
decke |
Based on Redports |
Create patches for portlint |
|
marcus |
|
Scan ports/ports-mgmt for ports/scripts which needs to be adjusted |
done, execpt from porttools and portlint is it clean. |
|
|
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 |
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 |
|
|
Set up svn2git converter for git.freebsd.org |
uqs |
|
|
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 |
|
|
Set up svn-ports-all@, svn-ports-head@ and svn-ports-svnadmin@ mailinglists |
beat |
postmaster |
|
secteam review of infrastructure |
beat |
secteam |
Clusteradm Ticket 36 |
Disable auto module update script |
beat |
edwin |
|
Setting up ports repository in FreeBSD environment |
beat |
clusteradm |
Clusteradm Ticket 36 |
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 |
Send Heads up to developers@ |
|
|
|
Lock down portstree |
|
|
|
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 |
Import svn dump |
|
|
|
Run svnadmin pack |
|
|
|
Install and start svn2cvs converter |
|
|
|
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 |
Install svn configuration |
|
|
|
Install hooks |
|
|
|
Populate svnadmin |
|
|
|
Checkout conf/ and hooks/ in port repo and fix permissions |
|
|
|
Commit svn wrapper to ports/head/Tools/scripts |
|
|
|
Change dfilter to work with SVN |
|
ru |
|
Commit patches to ports/Tools and portlint |
|
|
ports/Tools done, portlint missing |
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 |
Commit patch to ports/head/CHANGES |
|
|
|
Commit svn update patch to ports/head/Makefile |
|
|
http://people.freebsd.org/~beat/cvs2svn/ports-Makefile.patch |
Send heads up to freshports, freshsource, freshbsd |
|
|
|
Send Heads up to cvs-ports@ that recipient should switch to svn-ports-all@ or svn-ports-head@ |
|
|
|
Mark cvs-ports@ as obsolete |
|
postmaster |
|
Hardlock CVS (only exporter is allowed to commit to CVS) |
|
clusteradm |
|
Set up svnsync / rsync / svnmirror seed |
|
clusteradm |
|
Unlock tree in SVN |
|
|
|
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 |
Switch tindex to svn |
beat |
|
|
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 |
MOVEDlint.awk |
|
|
|
README |
ports@ |
|
|
addport |
|
||
bump_revision.pl |
|
|
|
chkversion.pl |
|
|
|
patchtool.py |
|
|
|
portsvar.sh |
|
|
|
release/Makefile |
re@ |
|
|
release/README |
re@ |
|
|
rmport |
|||
sunshar.rb sunshar/Makefile sunshar/sunshar.1 |
|
||
tindex |
|
|