用于SVN和Cruise Control的ASP.NET项目构建脚本

时间:2012-08-15 15:23:34

标签: msbuild cruisecontrol

我在ASP.NET MVC 3中有一个项目,解决方案文件总共包含28个项目。这一切都在一个目录中,配置了龟尾SVN,以便始终从SVN获取最新的更新。

我还在我的VPS盒子上安装了curisecontrol,这里存在整个解决方案。我还在我的IIS中创建了一个网站,现在一切正常。

任何人都可以指导我参考以下内容:

  • 如何设置curise控件Web仪表板,以便我的客户可以查看构建及其报告

  • 如何逐步使用MSBuild和Cruise Control

  • 具有以下功能的任何示例构建脚本

  • 有关构建失败或成功构建的电子邮件通知

  • 如果构建不成功则停止部署并创建构建报告

提前致谢

2 个答案:

答案 0 :(得分:1)

如何设置curise控件Web仪表板,以便我的客户可以查看构建及其报告 - >您必须先在仪表板配置文件中设置一个pwd,然后在网页中设置pwd后,您将能够添加插件以生成报告,如构建报告项目报告单元测试报告nant report检查此URL http://www.codeproject.com/Articles/70955/Set-up-the-Web-Dashboard-of-CCNet-to-Display-the-C 在ccnet文档中,您将看到所有示例和步骤: http://confluence.public.thoughtworks.org/display/CCNET/Documentation

答案 1 :(得分:1)

如何在一些步骤中使用MSBuild和Cruise Control http://www.codeproject.com/Articles/12985/Practical-NET2-and-C-2-An-introduction-to-MSBuild

默认情况下,ccnet的Web仪表板显示构建结果,但没有确切的错误消息。要在Web仪表板中显示错误,请转到“C:\ Program Files \ CruiseControl.NET \ webdashboard”并打开文件“dashboard.config”。

在那里,您将找到以下代码:

折叠|复制代码              XSL \ header.xsl         XSL \ modifications.xsl         XSL \ unittests.xsl         XSL \ MsTestSummary.xsl         XSL \ FxCop的,summary.xsl         XSL \ NCoverSummary.xsl         XSL \ SimianSummary.xsl         XSL \ fitnesse.xsl      现在在上面的代码中添加这一行:

折叠|复制代码 XSL \编译msbuild.xsl 因此代码将变为:

<buildReportBuildPlugin>
    <xslFileNames>
        <xslFile>xsl\header.xsl</xslFile>
        <xslFile>xsl\modifications.xsl</xslFile>
        <xslFile>xsl\compile-msbuild.xsl</xslFile>
        <xslFile>xsl\unittests.xsl</xslFile>
        <xslFile>xsl\MsTestSummary.xsl</xslFile>
        <xslFile>xsl\fxcop-summary.xsl</xslFile>
        <xslFile>xsl\NCoverSummary.xsl</xslFile>
        <xslFile>xsl\SimianSummary.xsl</xslFile>
        <xslFile>xsl\fitnesse.xsl</xslFile>
    </xslFileNames>
</buildReportBuildPlugin> 

如果构建失败,我们也可以将电子邮件发送给用户组。

 <workingDirectory>D:\Projects\TheWorks\Applications\ProjectFolder</workingDirectory>
           <buildArgs>ProjectName.msbuild /p:Configuration=Debug</buildArgs>
            <timeout>1800</timeout>
            <!--  30 minutes -->
    <logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MSBuild.dll
    </logger>
            </msbuild>
            </tasks>
            <publishers>
                <statistics />
                <xmllogger />
                <email from="EMAIL ADDRESS" mailhost="HOSTNAME" 
                mailhostPassword="PASSWORD" mailhostUsername="USERNAME" 
                includeDetails="true">
                    <users>
                    <user name="Jitendra Zaa" 
                        address=ilovenagpur@gmail.com 
                        group="AdminGroup" />
                        <user name="Santosh Karemore" 
                        address=santosh.karemore@gmail.com 
                        group="AdminGroup" />
                        <user name="Manoranjan sahoo"
                        address=manoranjan.sahoo@gmail.com 
                        group="AdminGroup" />
                        <user name="Minal Shirsikar" 
                        address="admin@shivasoft.in" group="Emul" />
                    </users>
                    <groups>
                        <group name="Emul" notification="failed" />
                        <group name="AdminGroup" 
                            notification="failed" />
                    </groups>
                </email>
            </publishers>
        </project>  

标签不言自明。

可能会有以下类型的通知:

失败 固定 总是