Phing에 사용할 수있는 SSH 및 SCP 작업이 있습니까?
-
04-07-2019 - |
문제
빌드 시스템에서 서버로 원격 배포를하고 싶습니다. 원격은 스크립트에서 SSH 명령을 통해 수행 할 수 있지만 자동화를 수행 할 Phing과 Deploy.xml 파일을 사용합니다.
Phing 빌드 파일 내에서 SSH (및 SCP) 작업을 수행 해야하는 대안은 무엇입니까?
해결책
정말로 phing이 필요하다면, afaik은 exec 만 있습니다. 다른 도구를 위해 열려 있다면 Capistrano 그리고 "내 대답"PHP 웹 프로젝트, 인프라 설정.".
다른 팁
scptask PHING :
SCP를 사용하여 원격 호스트와의 파일을 복사합니다. 이 작업에는 필요합니다 PHP SSH2 확장 기능하기 위해 ...
나는 만났다 SCP 및 SSH 작업 어제 phing을 위해. 또한 지침을 따라야합니다 PHP 용 SSH2 설치. 나는 상자에서 바로 작업 할 작업을 얻을 수 없었습니다. 내가 제공 할 수있는 경우 사본을 수정했습니다.
나는 약 1 년 전에 같은 문제를 겪었고 그때는 과제를 찾을 수 없었습니다. 결국 EXEC 작업을 수행했습니다. 이런 식으로 XML 파일에있었습니다.
<exec command="scp -i keys/id_rsa myfile user@$server:myfile" dir="." />
나는 이것이 오래되었음을 알고 있지만 여러 개의 깨진 링크와 약간의 잘못된 정보가있는 것 같습니다.
scptask: http://www.phing.info/docs/guide/stable/apcs60.html
을 위한 의미 단위, 우리는 사용 배포 할 rsync exec를 통해 파일을 Sourceforge 서버로 릴리스합니다. rsync는 SSH를 이해합니다.
SSH의 경우 SSH2 PECL 확장이 있고 Phing에는 다음과 같습니다. SSH 그리고 SCP 작업.
- Mac에 홈브류를 통해 Libssh2를 설치하십시오. Linux에서는 패키지 관리자를 사용하십시오.
sudo pecl install pecl.php.net/ssh2-0.12
이제 다음을 수행 할 수 있습니다.
<?xml version="1.0"?>
<project name="test" default="test">
<target name="test">
<ssh username="vagrant" password="vagrant" host="192.168.123.456"
command="pwd" property="pwd" display="false" />
<echo>The current working directory is ${pwd}</echo>
</target>
</project>