I thinking about to create a master vm (citrix) with delphi and all needed components installed on it. Then i wants to clone this vm for my two developers. They have theif own user in our active directory. The sourcecode is located per svn on the users homedirectory. So i could update only the master vm with the newest delphi version and components and clone this for my developers. The sourcecode (local svn copies on the home directorys) are not touched on this process. Have someone done this before? Could that work? What problems might be occur?

I thinking about to create a master vm (citrix) with delphi and all needed components installed on it. Then i wants to clone this vm for my two developers. They have theif own user in our active directory. The sourcecode is located per svn on the users homedirectory. So i could update only the master vm with the newest delphi version and components and clone this for my developers. The sourcecode (local svn copies on the home directorys) are not touched on this process. Have someone done this before? Could that work? What problems might be occur?

Any help would be great!

Comments

  1. Number one thing. Delphi settings are stored in the hkcu hive in the registry. You'll need to export the registry key to a reg file and import it under each user profile.

    ReplyDelete
  2. And remember: if you rename a machine, you have to re-register the Delphi license.

    ReplyDelete
  3. Not sure what license model you are using, but that might also be something that needs addressing.  Will this be an actual VM, or just a Citrix virtualisation?  Not sure if the BDS is Citrix compliant - I guess you have to test and see.

    ReplyDelete
  4. Also, if you use Woll2Woll I think they store registration info somewhere in the current user profile. Have to reinstall them in each profile or else they freeze the IDE on start up.

    ReplyDelete
  5. We have Delphi installed manually, with all components stored in svn alongside our projects. A coworker has written a tool which recompiles and installs all packages.

    So after upgrading or switching to a very old branch I just run the tool before starting Delphi.

    Only downside with this is if we upgrade DevExpress components, then Delphi complains about missing packages when I switch to older branches.

    ReplyDelete
  6. I have Delphi set up in a VM, but instead of that VM being my whole machine, it's only for development. The host OS is where the data lives, including the source code I'm working on (accessed via a mapped network drive.)

    Why not have a setup like that? Then there are no worries about user profiles at all. You can also upgrade the VM whenever you want (new components, new Delphi, etc) and since everyone is using the same image it rolls out to all developers easily.

    ReplyDelete
  7. David Millington

    My current setting is exact like you described. The solution i searching for is to update just one VM for all of my developers. The time my developers waste their time to keep their Delphi up to date is crazy, especially since there are two new versions every year. Also it would be nice if the vm's would running on our citrix servers. So i just need the citrx reciver software on a machine and can start developing on her. Around the world on any pc or mac, doesn't matter.

    ReplyDelete
  8. Asbjørn Heid
    Interesting approach. On my point of view this is the way how it should be. All dependencies of a project (even these to components and their versions, delphi version etc.) should be stored in the project. On a svn checkout of a project,  you can decide to a) open it in a newer delphi version (if the project was made with a older version) and b) recompile and install all used components. That sounds very complicated, hmm..
    Something like a snapshot of the IDE stored in the project..., hmm.. as longer i think about, i see more problems ;-(

    ReplyDelete
  9. Kenneth Cochran
    Yes, i know. But i think a will find a solution for that. Thanks anyway!

    ReplyDelete
  10. Jean-Marc Kiener Delphi could certainly make this easier. This approach is pretty decent though if you need to be able to patch very old versions, which we do.

    The build/install tool is basically a glorified batch file, and since it's also in svn of course it doesn't need any options or such.

    We don't stay current with all the releases though, lately we've updated Delphi once a year. Though that's mostly due to the large number of comppnents we rely on and the testing needed after updates to make sure essential stuff still works as they should.

    ReplyDelete

Post a Comment