Sysadmin/DeveloperAccessForRuleWriting
Writing rules for the conversion from svn to git requires you to download the whole svn repository. The size of that is 65GB. This is a problem for a lot of our developers. Hence we have setup 3 servers which can be used for the rule writing.
The 3 servers are identical in setup. Every registered KDE developers has access to all 3 servers with the keys you have setup on identity.kde.org.
This document assumes you are familiar with the rule writing. A good document to learn more about that can be found at http://techbase.kde.org/Projects/MoveToGit/UsingSvn2Git
Info about the servers
huey.kde.org Server currently down, ETA unknown
Two Dual core AMD Opteron(tm) Processor 270, 4GB internal memoryssh [email protected]Host key fingerprint: 12:8e:0b:83:97:76:3f:1c:db:4b:97:a6:61:16:23:38
dewey.kde.org
Hexa core, 6GB internal memory ssh [email protected] Host key fingerprint: 33:6d:9f:cd:b0:4c:36:b9:0f:34:93:30:49:00:ae:88
louie.kde.org
Quad core, 512MB internal memory (can be expanded as we need it) ssh [email protected] -p22308 Host key fingerprint: 04:0b:f3:90:ee:06:d3:60:8b:b8:c5:93:61:24:8a:2d
Remarks
- The ssh account name is git. Login with ssh [email protected]
- You share the account with all developers, for example don't install your favorite .vimrc as that affects all developers.
- Don't run any applications because you want to. IRC Bouncers for example.
- Use it for the rule writing. Everything else is wrong.
- Create a folder named after your identity.kde.org username and only work in there.
- We have made agreements about all this with the donors. If you violate the intended usage, we risk losing the machine.
The setup
- svn-all-fast-export is installed into the distro and is from Oct 18th. If a bug is fixed and you need it, drop sysadmin a note and we will start the sequence to update it. Example usage:
svn-all-fast-export --add-metadata --identity-map /home/gitmaster/kde-ruleset/account-map \ --rules /home/gitmaster/kde-ruleset/soprano-rules /home/gitmaster/svn/
- If anything doesn't work and you are unable to figure out how try rerunning the conversion with the "--debug-rules" option.
svn-all-fast-export --add-metadata --identity-map /home/gitmaster/kde-ruleset/account-map \ --rules /home/gitmaster/kde-ruleset/soprano-rules --debug-rules /home/gitmaster/svn/
This will print information about what rule matched for each matched file/directory.
- the svn repo can be queried in the gitmaster home directory. For example:
svn log -v --stop-on-copy file:///home/gitmaster/svn/trunk/extragear/utils/rsibreak
(please note that there is no physical file on the disk located at /home/gitmaster/svn/trunk/extragear/utils/rsibreak, svn automatically recognizes it is a repository).
- the svn repo is updated every couple minutes.
- if you need rules, you can find them in: /home/gitmaster/kde-ruleset, this is read-only, so copy them over to your personal folder and work on them. When done, scp your personal folder to your own computer and commit to git from there.
- the rules are updated every 4 hours.
- before starting a conversion, please check top to see if there is one already running. If two conversions run at the same time, both take more than twice to finish.
Tip
Be aware that "-P 22308" only applied to louie but not the other two servers which use the default ssh port.
- You can scp your personal folder to your computer with the following command executed from your own computer:
scp -P 22308 -r [email protected]:username folder-from-louie -P 22308 is only needed for louie, otherwise leave it out replace 'username' with your svn username (the folder you created on the server) replace 'folder-from-louie' with folder name you like on your computer.
- You can also scp your personal folder from your computer to the server with the following command executed from your own computer:
scp -P 22308 -r folder-to-louie [email protected]:username -P 22308 is only needed for louie, otherwise leave it out replace 'username' with your svn username (the folder you created on the server) replace 'folder-to-louie' with folder name you have on your computer.