문제

Windows Server 2003 운영 체제에서 CCNET 서버를 실행 중입니다. 내 제품의 빌드는 제대로 발생합니다. 그러나 레이블은 항상 "1.0.1.0"으로 유지됩니다. 웹 대시 보드를 통해 힘 빌드를 수행하면 버전이 증가하지만 그렇지 않으면 버전이 증가하지 않습니다.

내가 놓친 것이 있는지 말해 줄 수 있습니까? 알려진 문제입니까? 해결 방법이 있습니까?

제품의 크루즈 컨트롤 구성 파일 (project_config.xml)은 다음과 같습니다.

<cb:config-template xmlns:cb="urn:ccnet.config.builder">

  <project name="MyProduct">
    <workingDirectory>$(MyProductRootDir)</workingDirectory>
    <artifactDirectory>$(MyProductRootDir)\build</artifactDirectory>
    <webURL>http://local/ccnet/server/local/project/MyProduct/ViewProjectReport.aspx</webURL>
    <modificationDelaySeconds>900</modificationDelaySeconds>
    <sourcecontrol type="clearCase">
      <viewPath>$(MyProductRootDir)</viewPath>
      <branch>main</branch>
      <autoGetSource>true</autoGetSource>
      <useLabel>false</useLabel>
    </sourcecontrol>
    <triggers>
      <scheduleTrigger time="06:00" name="6AM_build">
        <weekDays>
          <weekDay>Monday</weekDay>
          <weekDay>Tuesday</weekDay>
          <weekDay>Wednesday</weekDay>
          <weekDay>Thursday</weekDay>
          <weekDay>Friday</weekDay>
        </weekDays>
      </scheduleTrigger>
      <scheduleTrigger time="09:00" name="9AM_build">
        <weekDays>
          <weekDay>Monday</weekDay>
          <weekDay>Tuesday</weekDay>
          <weekDay>Wednesday</weekDay>
          <weekDay>Thursday</weekDay>
          <weekDay>Friday</weekDay>
        </weekDays>
      </scheduleTrigger>
      <scheduleTrigger time="12:00" name="12PM_build">
        <weekDays>
          <weekDay>Monday</weekDay>
          <weekDay>Tuesday</weekDay>
          <weekDay>Wednesday</weekDay>
          <weekDay>Thursday</weekDay>
          <weekDay>Friday</weekDay>
        </weekDays>
      </scheduleTrigger>
      <scheduleTrigger time="15:00" name="3PM_build">
        <weekDays>
          <weekDay>Monday</weekDay>
          <weekDay>Tuesday</weekDay>
          <weekDay>Wednesday</weekDay>
          <weekDay>Thursday</weekDay>
          <weekDay>Friday</weekDay>
        </weekDays>
      </scheduleTrigger>
      <scheduleTrigger time="18:00" name="6PM_build">
        <weekDays>
          <weekDay>Monday</weekDay>
          <weekDay>Tuesday</weekDay>
          <weekDay>Wednesday</weekDay>
          <weekDay>Thursday</weekDay>
          <weekDay>Friday</weekDay>
        </weekDays>
      </scheduleTrigger>
    </triggers>
    <labeller type="assemblyVersionLabeller">
      <major>1</major>
      <minor>0</minor>
      <incrementOnFailure>true</incrementOnFailure>
    </labeller>
    <tasks>
      <msbuild>
        <executable>$(msbuildexe)</executable>
        <workingDirectory>build</workingDirectory>
        <projectFile>build.targets</projectFile>
        <buildArgs>/p:Configuration=Debug /fileLoggerParameters:LogFile=build_log.txt</buildArgs>
        <targets>Build</targets>
        <timeout>1200</timeout>
        <logger>FileLogger,Microsoft.Build.Engine</logger>
      </msbuild>
    </tasks>
    <publishers>
      <xmllogger logDir="E:\ccnet\logs\MyProduct" />
      <statistics />
    </publishers>

    <externalLinks>
      <externalLink name="build_output" url="http://local/builds/MyProduct" />
    </externalLinks>

  </project>
</cb:config-template>

그리고 내 ccnet.config 파일은 다음과 같습니다

<cruisecontrol xmlns:cb="urn:ccnet.config.builder">

  <cb:define msbuildexe="C:\WINDOWS\Microsoft.NET\Framework\v3.5\msbuild.exe"/>

  <cb:define cyraftframeworkrootdir="E:\myProduct"/>
  <cb:include href="project_config.xml" xmlns:cb="urn:ccnet.config.builder"/>

</cruisecontrol> 
도움이 되었습니까?

해결책

이는 빌드 조건이 '포스 빌드'인 경우에만 증가하는 어셈블리 버전 Labeller의 버그 때문입니다. 따라서 소스 코드에 대한 수정으로 빌드가 트리거 된 경우 트리거의 빌드 조건은 'ifmodificationExists'일 경우 버전 번호가 증가하지 않습니다.

이것은 고정되었습니다. 버그의 세부 사항은 여기에 있습니다.

http://jira.public.thoughteworks.org/browse/ccnet-1762

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top