Jump to content

Sysadmin/SVNInfrastructureShutdown: Difference between revisions

From KDE Community Wiki
Nalvarez (talk | contribs)
Add a {{Note}} box for the draft warning; looks nicer
Valoriez (talk | contribs)
March 1st 2013: projects.kde.org > quickgit
 
(11 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Note|This schedule is a draft. Please post feedback to the kde-core-devel mailing list.}}
KDE decided to move from Subversion to Git in 2010. Most of the code has migrated to Git already. However, Subversion is still around. This is a maintenance burden for the sysadmin team, since a lot of things have to be done twice, for SVN and for Git. Just to give some examples:


Currently we have a subversion infrastructure and also a git infrastructure. This means everything we do, we do 2 times. Just to give some examples: there is a git server, and a svn server. Both are backed by anongit/svn-servers. Both have hooks which control access for some paths/repo's, send out emails to mailinglists, etc. Not much can be shared between those. Also think about lxr.kde.org, build.kde.org, api.kde.org, kdesrc-build and translations that all need to be able to deal with some weird mix of svn and git.
* There is a git server, and a svn server.
* Both are backed by anongit/anonsvn servers.
* Both have hooks which control access for some paths/repos, send out emails to mailing lists, etc. Not much can be shared between those.
* Several services such as lxr.kde.org, build.kde.org, api.kde.org, kdesrc-build and translations need to deal with some weird mix of SVN and Git.
* We have to add SVN support even to new services like the new IRC commit-announcing bot.


Not only is this very difficult to maintain organisationally, hard to debug sometimes, causes confusion not only with sysadmin but also with the contributors, but is also a waste of resources (instead of 4 anongit mirrors, we can only have 2, because we also need 2 anonsvn mirrors).


KDE has decided to move to Git a few years ago. Now the time has come to say goodbye to subversion. That's why we created a time schedule to dismantle subversion.
This very difficult to maintain organisationally, hard to debug sometimes, and causes confusion not only with sysadmin but also with the contributors. In addition, it is a waste of server resources (instead of 4 anongit mirrors, we can only have 2, because we also need 2 anonsvn mirrors).
 
We don't have the resources to keep SVN around forever. What follows is a schedule for the dismantling of Subversion. It has already been discussed both within the Sysadmin team, and in the kde-core-devel mailing list. We still welcome further feedback.


== February 1st 2013 ==
== February 1st 2013 ==


SVN hooks will become active that prevent creation of new folders below branches/work/, trunk/playground/*/ and below trunk/extragear/*/. Effectively this means no work branches and no new playground or extragear projects can be made in subversion.
We will activate SVN hooks that prevent creation of new folders below <tt>branches/work/</tt>, <tt>trunk/playground/*/</tt>, and <tt>trunk/extragear/*/</tt>. Effectively this means no work branches and no new playground or extragear projects can be made in Subversion.
 
Also, at this date we will disable all developers that have not uploaded their ssh keys in the past (currently 669 accounts). These people haven't been allowed to commit for over a year now and never migrated from a password based account to a ssh-based account and never responded to our mails about that. This is the list that can be seen at line 807 of [http://websvn.kde.org/trunk/kde-common/svn/hooks/svnacl.cfg?revision=1329421&view=markup svnacl.cfg].


Also at this date we will disable all developers that have not uploaded their ssh keys in the past (currently 669 accounts). These people are not allowed to commit for over a year now and never migrated from a password based account to a ssh-based account and never responded to our mails about that. This is the list that can be seen at line 807 of http://websvn.kde.org/trunk/kde-common/svn/hooks/svnacl.cfg?revision=1329421&view=markup
'''Completed: Februari 3rd 2013'''


== March 1st 2013 ==
== March 1st 2013 ==


Git repository commits can no longer be tracked via commitfilter.kde.org. You can track commits to git repository via projects.kde.org. commitfilter.kde.org will continue to operate, but only for svn-commits.
Git repository commits can no longer be tracked via commitfilter.kde.org. You can track commits to Git repository via quickgit.kde.org. commitfilter.kde.org will continue to operate, but only for SVN commits.
 
'''Completed: March 3rd 2013'''


== July 1st 2013 ==
== July 1st 2013 ==


New contributors will no longer get subversion account by default. If svn access is needed, it can be requested manually via sysadmin. This would be a great deadline for all main modules to have migrated to git.  
New contributors will no longer get Subversion account by default. If SVN access is needed, it can be requested manually via sysadmin. This would be a great deadline for all main modules to have migrated to Git.


== September 1st 2013 ==
== September 1st 2013 ==


The anonsvn-mirrors will be shut down. svn.kde.org will remain for now, anonymous checkouts can happen via svn protocol on svn.kde.org. This is a great deadline for all projects to have migrated to git. From this moment on tools are allowed to stop supporting subversion: build.kde.org, lxr.kde.org, api.kde.org and similar services.
The anonsvn mirrors will be shut down. svn.kde.org will remain for now, anonymous checkouts can happen via <tt>svn://</tt> protocol on svn.kde.org. This is a great deadline for all projects to have migrated to Git. From this moment on tools are allowed to stop supporting Subversion: build.kde.org, lxr.kde.org, api.kde.org and similar services.
 
svn.reviewboard.kde.org will be closed for new requests.


== November 1st 2013 ==
== November 1st 2013 ==


All svn account holders will get a reminder mail about the future of svn, most likely this will inform everyone of the shutdown of the svn-server on January 1st.  At this point of time most parts of svn.kde.org will become read-only.  
All SVN account holders will get a reminder mail about the future of SVN. Most likely this will inform everyone of the shutdown of the SVN server on January 1st.  At this point of time, most parts of svn.kde.org will become read-only.  


== January 1st 2014 ==
== January 1st 2014 ==


Close down of svn.kde.org. All extragear / playground projects still in svn will be 'archived' with loss of history. commitfilter.kde.org will be shutdown as well.
Close down of svn.kde.org. All extragear / playground projects still in SVN will be 'archived'. The old commitfilter.kde.org will be shutdown (hopefully we will have a replacement by then). svn.reviewboard.kde.org and websvn.kde.org will be shutdown as well.


== Note ==
== Note ==


The only exception are the translations. These will continue to happen via subversion, but this will use the gitolite software as backend, in any case, this will result in only minor changes for translators.
The only exception are the translations. These will continue to happen via subversion, but this will use the gitolite software as backend. In any case, this will result in only minor changes for translators.

Latest revision as of 06:39, 18 May 2016

KDE decided to move from Subversion to Git in 2010. Most of the code has migrated to Git already. However, Subversion is still around. This is a maintenance burden for the sysadmin team, since a lot of things have to be done twice, for SVN and for Git. Just to give some examples:

  • There is a git server, and a svn server.
  • Both are backed by anongit/anonsvn servers.
  • Both have hooks which control access for some paths/repos, send out emails to mailing lists, etc. Not much can be shared between those.
  • Several services such as lxr.kde.org, build.kde.org, api.kde.org, kdesrc-build and translations need to deal with some weird mix of SVN and Git.
  • We have to add SVN support even to new services like the new IRC commit-announcing bot.


This very difficult to maintain organisationally, hard to debug sometimes, and causes confusion not only with sysadmin but also with the contributors. In addition, it is a waste of server resources (instead of 4 anongit mirrors, we can only have 2, because we also need 2 anonsvn mirrors).

We don't have the resources to keep SVN around forever. What follows is a schedule for the dismantling of Subversion. It has already been discussed both within the Sysadmin team, and in the kde-core-devel mailing list. We still welcome further feedback.

February 1st 2013

We will activate SVN hooks that prevent creation of new folders below branches/work/, trunk/playground/*/, and trunk/extragear/*/. Effectively this means no work branches and no new playground or extragear projects can be made in Subversion.

Also, at this date we will disable all developers that have not uploaded their ssh keys in the past (currently 669 accounts). These people haven't been allowed to commit for over a year now and never migrated from a password based account to a ssh-based account and never responded to our mails about that. This is the list that can be seen at line 807 of svnacl.cfg.

Completed: Februari 3rd 2013

March 1st 2013

Git repository commits can no longer be tracked via commitfilter.kde.org. You can track commits to Git repository via quickgit.kde.org. commitfilter.kde.org will continue to operate, but only for SVN commits.

Completed: March 3rd 2013

July 1st 2013

New contributors will no longer get Subversion account by default. If SVN access is needed, it can be requested manually via sysadmin. This would be a great deadline for all main modules to have migrated to Git.

September 1st 2013

The anonsvn mirrors will be shut down. svn.kde.org will remain for now, anonymous checkouts can happen via svn:// protocol on svn.kde.org. This is a great deadline for all projects to have migrated to Git. From this moment on tools are allowed to stop supporting Subversion: build.kde.org, lxr.kde.org, api.kde.org and similar services.

svn.reviewboard.kde.org will be closed for new requests.

November 1st 2013

All SVN account holders will get a reminder mail about the future of SVN. Most likely this will inform everyone of the shutdown of the SVN server on January 1st. At this point of time, most parts of svn.kde.org will become read-only.

January 1st 2014

Close down of svn.kde.org. All extragear / playground projects still in SVN will be 'archived'. The old commitfilter.kde.org will be shutdown (hopefully we will have a replacement by then). svn.reviewboard.kde.org and websvn.kde.org will be shutdown as well.

Note

The only exception are the translations. These will continue to happen via subversion, but this will use the gitolite software as backend. In any case, this will result in only minor changes for translators.