Steve, that did it, thank you! For others here are the details:
1) Create a text file, I called it "cspackproperties.txt" and placed it in the same directory where my Azure project is located (where my .csdef and .cscfg files are also located).
2) In this cspackproperties.txt file, add one line:
TargetFrameWorkVersion=v4.0
3) When calling cspack, for each role pass in the parameter /rolePropertiesFile - so my call to cspack became:
"c:\Program Files\Windows Azure SDK\v1.2\bin\cspack.exe" "C:\Builds\MYPROJECT.Development\MYPROJECT.Development_20101007.1\Release\MYPROJECT.Deploy.csx\ServiceDefinition.csdef" /role:MYPROJECT.MYWEBROLE1;"C:\Builds\MYPROJECT.Development\MYPROJECT.Development_20101007.1\Release\MYPROJECT.Deploy.csx\roles\MYPROJECT.MYWEBROLE1\approot";MYPROJECT.MYWEBROLE1.dll
/rolePropertiesFile:MYPROJECT.MYWEBROLE1;"C:\Builds\MYPROJECT.Development\MYPROJECT.Development_20101007.1\Release\MYPROJECT.Deploy.csx\cspackproperties.txt" /role:MYPROJECT.MYWORKERROLE1;"C:\Builds\MYPROJECT.Development\MYPROJECT.Development_20101007.1\Release\MYPROJECT.Deploy.csx\roles\MYPROJECT.MYWORKERROLE1\approot";MYPROJECT.MYWORKERROLE1.dll
/rolePropertiesFile:MYPROJECT.MYWORKERROLE1;"C:\Builds\MYPROJECT.Development\MYPROJECT.Development_20101007.1\Release\MYPROJECT.Deploy.csx\cspackproperties.txt" /out:"C:\Builds\StealthLab.Packages\MYPROJECT.Development\MYPROJECT.Deploy.cspkg"
Inside Baseball
Steve: is this simply creating the RoleModel.xml file correctly?
Before you gave me the above tip, I set the environment variable _CSPACK_FORCE_NOENCRYPT to true so Visual Studio would not encrypt the package and I also passed in the /noencrypt parameter to cspack. Using winmerge (http://winmerge.org/) – I
had just found out:
1) There were no issues of dependent 3rd party dlls – they were present in both packages.
2) The main difference seemed to be the “RoleModel.xml” file, which was empty on the tfs build version.