How do I get Team Build 2010 to publish web applications as non-updatable?
-
12-11-2019 - |
문제
I'm trying to switch our build from CruiseControl.NET running a custom .msbuild file to Team Build 2010. The application being compiled is a VS2008 solution with numerous projects, two of which are web projects.
Using DefaultTemplate.xaml, it appears that the two web projects are deployed to Binaries\_PublishedWebsites\(ProjectName)
. That default location is fine. However, the contents of the output directories appear to be updateable, as though aspnet_compiler.exe
was called with -u
, or as though an MSBuild <AspNetCompiler>
task was used with Updateable="true"
. So, two questions:
- How do I make Team Build produce non-updateable output to the
_PublishedWebsites
directory? How can I also set the IIS VirtualPath as if I was doing the following in an MSBuild task:
<AspNetCompiler Clean="true" Force="true" VirtualPath="/My-IIS-Virtual-Path" />
I have found in earlier troubleshooting that the only way I can get IIS 6 to serve a web service compiled with aspnet_compiler.exe
in non-updateable mode is to specify the virtual path in the command, which is why I am asking about #2.
Edit:
Upon seeing the one answer thus far, I realized I should have been much clearer about what the issue is. I realize that, if I can do something in MSBuild, I can just call MSBuild from the build template. However, I am wondering a little more about how change what happens to copy the output to the _PublishedWebsites
directory. "Find the task that copies the website and change it" would work well, except that I don't see what is actually copying the output into _PublishedWebsites
. What I'm really wanting to do is to modify the step in the template that accomplishes this.
The build log references a compile target called _CopyWebApplication
that appears to do the work of copying the files needed for a web application. However, I am unsure how to modify this compile target, as I do not see it anywhere in the build template nor in any file in the solution. Further, whatever runs _CopyWebApplication
appears to be running it only for web application projects, not the many other projects in the solution. This is a good thing, except that I do not know where the logic exists that determines whether to use _CopyWebApplication
.
Maybe there is some default MSBuild file that I am missing? Some build parameter that I could be using? How do I alter the aforementioned build step?
올바른 솔루션이 없습니다