2011-10-03 3 views
4

phing을 사용하여 PHP 응용 프로그램을 배포하고 있으며 우리 환경을 배포하는 데 약간의 문제가 있습니다.phing을 사용하여 다른 환경 배포

우리는 2 개의 다른 프로덕션 환경 (각각 다른 구성 파일이 있음)과 별도의 테스트 환경을 가지고 있습니다. 우리는 테스트 환경에 대해 다른 지점을 가지고 있기 때문에 테스트 환경에 문제가 없습니다. 문제는 두 가지 프로덕션 환경 모두에서 동일한 분기를 사용한다는 것입니다.

누구나 다른 설정/설정 파일을 사용하여 프로덕션 환경에 배포하는 방법에 대한 제안이 있습니까? 우리는 생산 브랜치를 하나의 브랜치로 유지하지만, 어떻게 든 설정 파일을 분리합니다. 우리는 zend 프레임 워크를 사용하고, 설정 파일에서 가질 수있는 다른 섹션에 대해서 알고 있지만, 우리는 또한 phing을위한 설정 파일을 가지고 있습니다.

주위를 둘러 보았지만 명령 줄 인수를 phing에 전달하는 방법을 찾지 못하는 것 같습니다. 이런 식으로 뭔가 정말 유용 할 수있다 :

phing -f build.xml production_live1 

답변

11

당신은 사용자 지정 속성

을 설정 -D을 사용할 수 있습니다
phing -Denvironment=production_live1 

당신은 다른 모든 재산

${environment} 

또 다른를 같은 빌드 파일에 액세스 할 수 있습니다 해결책은 모든 환경에 대해 서로 다른 빌드 파일을 생성한다는 것입니다.이 두 파일은 모두 "기본"빌드 파일 build.xml을 포함하며 th 만 포함합니다 전자 차이.

phing -f production_live1.xml 

(와우

<project name="production_live1" basedir="." default="all"> 
    <import file="main.xml" /> 
    <!-- different tasks here --> 
</project> 
+0

production_live1.xml에, 그게 내가. 감사 찾고있는 무슨을 정확히! – aporat

관련 문제