Additional Config being run before environment config

I think my issue is similar to .

We have our standard environment transforms Web.Environment.config and a custom transform Web.custom.config. These used to get applied in the order of:

  1. Environment transforms.
  2. Additional transforms.

This has now changed and gets applied in the opposite order. This is causing us an issue because we have an application that reads from two queues, a primary and a secondary (which isn’t always deployed). So the environment transforms contain all the common transforms and the primary deployments values.

The additional transform then contains the 1 element that is different for the secondary install, so the problem is when we do the secondary deployment it:

  1. Transforms to the correct value.
  2. Transforms back to the primary.

Reading the documentation it implies I should be able to control the order by specifying all my transforms.

If you would like to define the order of all of your transformations, if you list them in the order of transformation inside the Additional transforms feature then Octopus will use that order to run the transforms.

So I changed my configuration to unticked “Automatically run configuration transformation files” and set my additional transforms to

*.Release.config => *.config
*.#{Octopus.Environment.Name}.config => *.config
*.Custom.config => *.config

However doing this Octopus is ignoring the first two transforms.

Transforming 'E:\Octopus\Applications\Dev\Application\4.4.0_1\Application.exe.config' using 'E:\Octopus\Applications\Dev\Applications\4.4.0_1\Applications.exe.Custom.config'.
Transforming 'E:\Octopus\Applications\Dev\Application\4.4.0_1\Application.exe.config' using 'E:\Octopus\Applications\Dev\Application\4.4.0_1\Application.exe.Dev.config'.

If I leave this “Additional Transform” setting in and retick the apply automatically it goes back to applying my custom transform first then all the standard ones.

We are running Octopus 3.3.12

Hi Sean,

Thanks for reaching out.

I believe this has to do with the info on the “Additional Transform” field not being specific enough and the use of wildcards. But I’d like to get this tested on my end before giving you a final answer. Could you help me with the following?

  • All your config and transform files are at the root of the package, correct?
  • Can you send me a copy of your nuget package that only has the config files you are trying to use? I don’t really care about their content, all I want is to have a package to test that has files with the same name as yours in the same folder structure.
  • Finally, can you send me a detailed list how which transform you expect to be applied to which config file and the correct order? be as verbose as possible with this please (“First I want => web.config, then I want X => X” and so on)