I added a solution configuration called \'Staging\'. It does show up on the drop down in VS, but not in the Configuration Manager in \'Package/Publish Web\' screen. On this
I found a solution to the issue of adding a new project AFTER creating a custom build config -
<New...>
.Workaround: open other project file, which already in configuration, found necessary node and copy them to target project file (with path/assembly file name fixes of course).
The cleanest way to do this that I have found is to modify the proect file (.csproj) directly in a text editor.
If you have a project that already has the desired configuration, open it up and find the appropriate PropertyGroup element (e.g. the one for the "Demo" configuration below).
Copy that PropertyGroup element and paste it after the equivalent element for the Debug configuaration.
If you do not already have one with the desired configuration for some reason, you should just be able to copy the Debug one (or Release if it is more appropriate) and change the name from "Debug" to whatever your configuration name is.
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Demo|AnyCPU'">
<OutputPath>bin\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<PlatformTarget>AnyCPU</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
I am only using build configurations to transform my config files automatically. I fixed this by removing the build configuration from the solution, this did not remove my configuration transform file on VS2012, then i just added the configuration again. Now it appeared on all projects.
There could be issues with this approach that I simply don't know about, but for now its worked fine.