代码之家  ›  专栏  ›  技术社区  ›  Luhmann

Teamcity成功构建时的构建循环

  •  0
  • Luhmann  · 技术社区  · 14 年前

    我和Teamcity建立了一个联盟。请参阅下面的生成文件。

    • 当构建成功并且测试通过时,构建过程就在一个循环中无限期地反复运行。

    • 当构建失败时,这种情况不会发生。

    我试着先设置60秒的buildtriggering暂停,最后完全禁用了buildtriggering。没什么区别。

    还有什么可能是原因呢?

    我的MSBuild文件如下所示:

    <Project DefaultTargets="Build;Test" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">    
    
        <PropertyGroup>
            <DeployDirectory>$(MSBuildProjectDirectory)\..\bin</DeployDirectory>
            <DependencyDirectory>$(MSBuildProjectDirectory)\Dependencies</DependencyDirectory>
            <LinqToSqlMapFolder>$(DeployDirectory)\LinqToSql</LinqToSqlMapFolder>
                <NCoverVersionForMSI>$(BUILD_NUMBER)</NCoverVersionForMSI>
                <NCoverVersionPeriod>$(BUILD_NUMBER)</NCoverVersionPeriod>
        </PropertyGroup>
    
        <ItemGroup>
            <ProjectFiles Include="**\*.vbproj"/>
            <ConfigFiles Include="**\*.config"/>
            <MapFiles Include="**\*.linqtosql.config"/>
            <TestAssemblies Include="$(DeployDirectory)\*.Test.dll"/>
            <Dependencies Include="$(DependencyDirectory)\**\*" />
        </ItemGroup>
    
        <Target Name="Clean">
            <MSBuild Projects="@(ProjectFiles)" Targets="Clean"/>   
        </Target>   
    
        <Target Name="Build">
            <MSBuild Projects="@(ProjectFiles)" Targets="Rebuild">
                <Output TaskParameter="TargetOutputs" ItemName="BuildOutput"/>
            </MSBuild>
    
            <Copy SourceFiles="@(BuildOutput)" DestinationFolder="$(DeployDirectory)" />
            <Copy SourceFiles="@(Dependencies)" DestinationFolder="$(DeployDirectory)" SkipUnchangedFiles="true" />
            <Copy SourceFiles="@(ConfigFiles)" DestinationFolder="$(DeployDirectory)" SkipUnchangedFiles="true" />
            <Copy SourceFiles="@(MapFiles)" DestinationFolder="$(LinqToSqlMapFolder)" SkipUnchangedFiles="true" />
        </Target>
    
        <UsingTask AssemblyFile="$(DependencyDirectory)\Gallio\Gallio.MsBuildTasks.dll" TaskName="Gallio" /> 
    
    
        <Target Name="Test">
                <Gallio IgnoreFailures="true" Files="@(TestAssemblies)">
                    <Output TaskParameter="ExitCode" PropertyName="ExitCode"/> 
                </Gallio> 
        </Target>
    
    </Project>
    
    2 回复  |  直到 6 年前
        1
  •  4
  •   Zach Burlingame    13 年前

    虽然看起来这不是你的问题,但我自己也遇到了类似的循环问题。我在项目配置中启用了标签。我还使用了每60秒检查一次修改的规则来触发构建。结果,成功构建后,TeamCity会在VCS中标记构建,然后60秒后,它会看到(它自己的)修改并触发另一个构建。

        2
  •  0
  •   Luhmann    14 年前