質問

ビルドマシンからサーバーへのリモート展開を行いたい。リモート処理は、スクリプトからのsshコマンドを介して実行できますが、自動化を実行するphingとdeploy.xmlファイルを使用したいです。

phingビルドファイル内からssh(およびscp)タスクを実行するには、どのような代替手段が必要ですか?

役に立ちましたか?

解決

本当にphingが必要な場合は、execしかありません。他のツールを開いている場合は、 capistrano と" PHP Webプロジェクト、インフラストラクチャのセットアップ。"。

他のヒント

Phingの

SCPTask

  

scpを使用して、リモートホストとの間でファイルをコピーします。このタスクには、 PHP SSH2拡張機能が必要です。 機能するには...

SCPおよびSSHタスクに出会いました昨日のPhingまた、 SSH2 for PHPのインストールの手順に従う必要があります。箱から出してすぐにタスクを実行することができませんでした。必要に応じてコピーを修正しました。

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

SshTask :http://www.phing .info / docs / guide / stable / apcs60.htm

SemanticScuttle には、リリースするrsync リリースファイルをSourceForgeサーバーに-exec経由でも。 Rsyncはsshを理解します。

sshにはssh2 PECL拡張機能があり、Phingには ssh および scp タスク。

  1. Macでは、Homebrewを使用してlibssh2をインストールします。 Linuxでは、パッケージマネージャーを使用します。
  2. 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>
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top