3

서버에 CruiseControl.NET 설정이 있습니다. 나는 모든 것이 완벽하게 작동하도록했다. 의미있는 모든 것은 SVN에서 코드를 가져 와서 빌드하고 빌드가 성공하면 프로젝트 트리거를 사용하여 프로젝트 설정을 시작하여 코드를 DEV 환경에 배포합니다. 주로 내부 사용자 보안 그룹을 추가했습니다. LDAP 보안을 사용하고 있습니다. 보안 기능을 추가하면 DEV 서버에 자동으로 배포가 중단됩니다. 프로젝트를 구축하도록 강제 설치할 수 있지만 프로젝트 # 1이 성공적으로 빌드되면 배포 프로젝트의 트리거가 시작될 때 아래 오류가 발생합니다 (보안을 위해 프로젝트 이름을 PROJECT로 바꿨습니다) :CruiseControl.NET - 프로젝트가 존재하지 않습니다.

2010-07-20 13 : 28 : 19,354 [프로젝트 : 디버그] 서버에서 ProjectStatus 검색 중 : tcp : // localhost : 21234/CruiseManager.rem
2010-07-20 13 : 28 : 19,355 [PROJECT : ERROR] 예외 : 프로젝트 '프로젝트'가 CCNet 서버에 존재하지 않습니다.

ThoughtWorks.CruiseControl.Remote.NoSuchProjectException : 'PROJECT'프로젝트가 CCNet 서버에 존재하지 않습니다. ThoughtWorks.CruiseControl.Core.Triggers.ProjectTrigger.GetCurrentProjectStatus()에서
ThoughtWorks.CruiseControl.Core.Triggers.ProjectTrigger.Fire()에서
ThoughtWorks.CruiseControl.Core.Triggers.MultipleTrigger.Fire에서
()
ThoughtWorks.CruiseControl.Core.ProjectIntegrator.PollTriggers() ThoughtWorks.CruiseControl.Core.ProjectIntegrator.Integrate()에서
에서 ThoughtWorks.CruiseControl.Core.ProjectIntegrator.Run()

에서
나는 활성이 디렉토리 계정 etup for CruiseControl, 그리고 서비스는 해당 사용자 계정 (관리자 권한 있음)에서 실행 중입니다. CruiseControl 사용자는 CruiseControl 구성의 내부 설정 섹션에서 내 "관리"그룹에 사용자를 추가하여 모든 프로젝트에 대한 전체 액세스 권한을 부여했습니다.

CruiseControl에서 프로젝트를 액세스 할 수있게 만드는 방법에 대한 아이디어가 있으므로 자동 배포를 실행할 수 있습니까?

+0

설정 파일 중 일부를 게시 할 수 있습니까? –

답변

0

웹 프로젝트를 모니터링하는 자동 배치 코드는 성공적으로 빌드되면 실행되지 않습니다. 그리고,이 내부 보안 구성없이 작동 않습니다

<cb:scope ProjectName="$(projMhWebDevDeploy)"> 
<project name="$(projMhWebDevDeploy)" queue="Q1" queuePriority="1"> 
    <cb:define safeProjectName="MH_Web_Dev_Branch_Deployment"/> 
    <cb:define projectDirectory="$(ccnetDirectory)\Projects\$(safeProjectName)"/> 

    <triggers> 
    <projectTrigger project="$(projMhWeb)"> 
     <triggerStatus>Success</triggerStatus> 
     <innerTrigger type="intervalTrigger" seconds="5" buildCondition="IfModificationExists" /> 
    </projectTrigger> 
    <projectTrigger project="$(projMhWeb)"> 
     <triggerStatus>Success</triggerStatus> 
     <innerTrigger type="intervalTrigger" seconds="5" buildCondition="ForceBuild" /> 
    </projectTrigger> 
    </triggers> 

    <category>DEV Deployments</category> 
    <webURL>$(urlCcnetDashBoard)</webURL> 
    <workingDirectory>$(projectDirectory)</workingDirectory> 
    <artifactDirectory>$(ccnetDirectory)\BuildFiles\$(safeProjectName)</artifactDirectory> 

    <tasks> 
    <!-- Deploy Code --> 
    <exec> 
     <executable>$(deployCodeBat)</executable> 
     <buildArgs> 
     $(ccnetDirectory)\Projects\MH_Web\Web 
     $(deployMhWebDev) 
     brh 
     </buildArgs> 
     <baseDirectory>$(ccnetDirectory)\BatchFiles\</baseDirectory> 
    </exec> 
    <!-- Deploy Helicon HTTPD --> 
    <exec> 
     <executable>$(deployHeliconBat)</executable> 
     <buildArgs> 
     $(ccnetDirectory)\Projects\MH_Web\Web 
     "$(deployHeliconDev)" 
     httpd.conf 
     </buildArgs> 
     <baseDirectory>$(ccnetDirectory)\BatchFiles\</baseDirectory> 
    </exec> 
    </tasks> 
    <publishers> 
    <xmllogger /> 
    <modificationHistory onlyLogWhenChangesFound="true" /> 
    <email mailport="25" includeDetails="true" useSSL="false" from="FROM" mailhost="SERVER"> 
     <users> 
     EMAIL ADDRESSES ARE HERE 
     </users> 
     <groups> 
     <group name="BuildMaster"> 
      <notifications> 
      <notificationType>Always</notificationType> 
      </notifications> 
     </group> 
     </groups> 
    </email> 
    </publishers> 
    <security type="defaultProjectSecurity" defaultRight="Deny"> 
    <permissions> 
     <rolePermission name="Developers" ref="Developers"/> 
     <rolePermission name="Admin" ref="Admin"/> 
    </permissions> 
    </security> 
</project> 
</cb:scope> 
0

나는 당신이 당신의 역할에 대한 보안 설정을 정의 할 필요가 있다고 생각 - 내가 거기에 내부 보안 마크 업을 볼 수 없습니다. AD 파마와 계정을 가지고 있으면 좋겠지 만 CCNet에 그 의미가 무엇인지 알려줄 필요가 있습니다. 물론 프로젝트 태그 내부에 다음을 추가하십시오 (도메인 및 그룹 이름을 변경 한 후).

<internalSecurity>   
    <permissions> 
     <!-- Roles --> 
     <rolePermission name="Admin" forceBuild="Allow" startProject="Allow" > 
      <users> 
       <userName name="DOMAIN\GROUP1\"/> 
      </users>   
     </rolePermission> 
     <rolePermission name="Developers" forceBuild="Deny" startProject="Deny"> 
      <users> 
       <userName name="DOMAIN\GROUP2\"/> 
      </users> 
     </rolePermission> 
    </permissions> 
</internalSecurity> 
관련 문제