2013-01-10 2 views
2

현재 PHP 애플리케이션을 배포하는 방법에 관한 딜레마에 직면 해 있습니다. 여기젠킨스 대 커스텀 스크립트

내 설치 같은 모습입니다 :

  • 나는 또한 내 SVN 저장소를 테스트 서버. 트렁크를 내 보내어 커밋 할 때마다 테스트 서버에 복사본을 자동으로 배포하는 post-commit 스크립트가 있습니다.
  • 두 번째 프로덕션 서버.

첫 번째 서버에서 두 번째 서버로의 전개가 분명합니다.

#!/bin/bash 

echo "Removing Old Export." 
rm -rf /tmp/app_export 

echo "SVN Export." 
svn export -q -r HEAD "file:///var/www/svn/app/trunk" /tmp/app_export 

echo "Changing permissions" 
chown -R apache.apache /tmp/app_export 

echo "*** Rsynching to app.com." 
rsync -zai --progress --stats --ignore-times --checksum /tmp/app_export/ [email protected]:/var/www/html/app/ --exclude '*.log' 

을하지만 모두가 내 응용 프로그램을 배포하는 젠킨스 (또는 같은)를 사용한다 말한다 : 나는 현재 스크립트를 사용하고

나는이 같은 꽤 많이 보인다 썼다. 이것의 찬성은 무엇입니까? 사전에

감사합니다.

+0

는, 그것은 당신의 필요를 충족합니다. Jenkins는 자신의 웹 사이트에서 읽을 수있는 방대한 양의 추가 기능을 보유하고 있지만 필요하지 않은 경우 신경 쓰지 마십시오. – jiggy

답변

2

젠킨스는 빌드를 지원하도록 설계 있지만, 사실은 일반적인 자동화 프레임 워크를 젠킨스 사용

장점입니다된다

  • 당신이 응용 프로그램을 배포하기 위해 현재 사용하고있는 동일한 스크립트를 호출 수를
  • 누군가가 소스 코드 저장소를 만들 때마다 Jenkins 작업을 자동으로 트리거하도록 설정할 수 있습니다.
  • 배포 용 자격 증명은 Jenkins에만 국한 될 수 있습니다. 이렇게하면 배포가 자동으로 시작되거나 배포를 허용 할 사용자를 제어 할 수있는 사용자 권한 부여 규칙을 설정할 수 있습니다.
  • 젠킨스는 중앙 대시 보드 역할을하여 배포가 수행되었을 때 기록합니다.
  • Jenkins에서 "빌드 완료"작업으로 실행되는 일부 기능 테스트를 추가 할 수 있습니다. 이 스크립트는 사용자의 요구 사항을 충족하는 경우
  • ..
  • ..
+0

그래서 거의 @jiggy가 어떻게 쓰는지 알 것 같습니다. 필요할 때까지 스크립트를 계속 사용하겠습니다. 감사! – Mauro