In a previous discussion on how to handle multiple environments on a single machine (http://help.octopusdeploy.com/discussions/questions/44-multiple-environment-per-machinetentacle-variables-per-machines) you mention an upcoming release will have a way of setting the path per package. I presume this is the new OctopusPackageDirectoryPath environment variable? If so, I’m finding it a bit clunky to use.
Our project consists of an IIS website and 3 applications under that site (for admin, mobile etc). It also has a Windows service. We provide this project to multiple clients, who each get their own subdomain of the products domain eg. client1.example.com, client2.example.com, client3.example.com. We therefore end up with IIS looking like this:
- admin
- mobile
- blah
- admin
- mobile
- blah
I therefore have 4 packages per site (excluding the Windows service package which is similarly duplicated for each client). The 4 packages are deployed as 4 steps.
I’ve set up each client as a environment, so I have Client 1 Production, Client 2 Production, Client 3 Production etc. I need to be able to put all - or a subset - on to the one machine.
Without using OctopusPackageDirectoryPath the 4 packages for the 3 clients all overwrite each other in C:\Octopus\Tentacle\Applications.
I started laboriously setting up an OctopusPackageDirectoryPath variable for each environment, for each step/package, when I realised that it was madness - I’ve have a huge number of variables to manage in the web page (which while nice probably isn’t designed for dozens and dozens of variables), and I’m hard-coding an awful lot of directory paths, with the potential for typos or duplications (even worse!). I have an OctopusWebSiteName for each site/application so I have 4 * num_clients just listing the OctopusWebSiteNames. Plus connections strings and branding name variables for each environment.
Surely extracting each package to C:\Octopus\Tentacles\Applications{OctopusEnvironmentName}\OctopusPackageName would be a lot simpler? I can’t see how it would break anything, but that’s based on about an hour’s experience of Octopus
Paul