The Pulse 2 SVN Merge Story
Why this new SVN organization ?
Quoting my co-worker : There was too much repositories: 8 for MDS, 18 for Pulse 2 ! It was becoming difficult to manage.
The way the new repository is organized now:
- ease SVN repository management
- ease SVN checkouts
- ease code review (for example Trac timeline is now available)
- simplify branching and tagging a lot
- separates packaging stuff (RPM, Debian) from code
New repository organization
The new repository is called mmc-projects, and is available there: http://mds.mandriva.org/svn/mmc-projects/
It has been splitted into three parts :
- mmc-core: contains the core classes for MDS and Pulse 2. It is the result of the merge of the mmc-agent and mmc-web-base repositories.
- mds: contains all the MDS related code
- pulse2: contains all the Pulse 2 related code
You can now browse this new repository using the Trac browser: http://pulse2.mandriva.org/browser
Merge details
Pulse 2 side, the following changes have been done :
- Agents:
- Pulse 2 Secure Agent :
- Pulse 2 Agents Pack :
- Pulse 2 Remote Desktop Agent :
- Inventory Agent :
- Pulse 2 Inventory Server SSL Proxy :
- Documentation :
- Build Tools :
- Web interfaces :
- Dynamic groups :
- GLPI Inventory backend :
- Legacy Inventory backend :
- Imaging :
- Packages Management :
- Pulse 2 : /svn/mmc-web-pulse2/trunk/pulse2 => /pulse2/server/trunk/web/modules/pulse2
- Secure Control :
- Framework :
- MMC plugins:
- Common stuff:
- Services :
- Inventory Server :
- /svn/pulse2-inventory-server/trunk/bin => /pulse2/server/trunk/services/bin
- /svn/pulse2-inventory-server/trunk/conf => /pulse2/server/trunk/services/conf/pulse2
- /svn/pulse2-inventory-server/trunk/contrib => /pulse2/server/trunk/services/contrib
- /svn/pulse2-inventory-server/trunk/init.d => /pulse2/server/trunk/services/init.d
- /svn/pulse2-inventory-server/trunk/pulse2 => /pulse2/server/trunk/services/pulse2
- /svn/pulse2-inventory-server/installer-win32/ssl-proxy/trunk/sources => /pulse2/server/packaging/trunk/windows/pulse2-ssl-proxy
- Launcher :
- /svn/pulse2-launcher/trunk/bin => /pulse2/server/trunk/services/bin
- /svn/pulse2-launcher/trunk/conf => /pulse2/server/trunk/services/conf
- /svn/pulse2-launcher/trunk/contrib => /pulse2/server/trunk/services/contrib
- /svn/pulse2-launcher/trunk/init.d => /pulse2/server/trunk/services/init.d
- /svn/pulse2-launcher/trunk/pulse2 => /pulse2/server/trunk/services/pulse2
- Package Server (starting from r.100n when /trunk was re-created):
- /svn/pulse2-package-server/trunk/bin => /pulse2/server/trunk/services/bin
- /svn/pulse2-package-server/trunk/conf => /pulse2/server/trunk/services/conf/pulse2/package-server
- /svn/pulse2-package-server/trunk/contrib => /pulse2/server/trunk/services/contrib
- /svn/pulse2-package-server/trunk/init.d => /pulse2/server/trunk/services/init.d
- /svn/pulse2-package-server/trunk/pulse2 => /pulse2/server/trunk/services/pulse2
- /svn/pulse2-package-server/packages => /pulse2/server/trunk/services/contrib/package-server/some_examples
- /svn/pulse2-package-server/installer-win32/tags/1.2.3/sources => /pulse2/server/packaging/trunk/windows/pulse2-package-server
- Scheduler :
- /svn/pulse2-scheduler/trunk/bin => /pulse2/server/trunk/services/bin
- /svn/pulse2-scheduler/trunk/conf => /pulse2/server/trunk/services/conf
- /svn/pulse2-scheduler/trunk/contrib => /pulse2/server/trunk/services/contrib
- /svn/pulse2-scheduler/trunk/init.d => /pulse2/server/trunk/services/init.d
- /svn/pulse2-scheduler/trunk/pulse2 => /pulse2/server/trunk/services/pulse2
- Inventory Server :
Please note that :
- useless files (Changelog, Makefile below /trunk, etc ...) were removed
- when there was a risk of override (f.e. pulse2/init.py), either only one file was kept (when files where identicals) or file was renamed
- files which do not appears in this list where not merged
- commits are now forbidden in merged repositories (but commits in branches are still authorized)
As a sidenote, merge was performed using SVNDumptool 0.5.0 and svndumpfilter2. Big thanks to their authors !

