2017-05-13 7 views
0

私はsftpのアップロードと置換を自動化するためにjenkinsを使って、sftpサーバのフォルダがgitリポジトリと同じになるようにしようとしています。これはsshpをopensshiftで実行してnginxを実行していて、すでにrhcクライアントを使って生成したsshキーを使ってftpだけをサポートしています。私はhttps://blog.openshift.com/using-filezilla-and-sftp-on-windows-with-openshift/の指示に従って、filezillaを使ってsftpに簡単に接続することができました。git-ftpクライアントでsftpを使用するにはどうすればよいですか?

私は、git-ftpというツールを使うことが最も有用で時間効率が良いことがわかりました。

手順は、ユーザー名、パスワード、およびFTPサーバードメインを使用しているftpではかなり進んでいます。私はそれが私のSSHのキーを使用してSFTPを行うに苦労している。 ここでは、使用するための最良のマニュアルで見つけたサイトを紹介します。 リファレンス:http://manpages.ubuntu.com/manpages/trusty/man1/git-ftp.1.html

私はこのガイドに従ってJenkinsのオートメーション設定 https://www.savjee.be/2016/02/Use-Jenkins-and-git-ftp-to-deploy-website-to-shared-webhosting/を取得しました。ただし、これはsftpを使用するコマンドを示していません。

https://tohin.wordpress.com/2014/02/11/git-and-sftp/を使用して、多少の相違があります。

たぶんこれは、FTPのみ、ユーザ名、パスワード、およびFTPサーバー与えると連携して動作します。私がする鉱山を調整してきました

git ftp init --user USERNAME --passwd PASSWORD ftp://YOUR-FTP-SERVER-ADDRESS/path/to/website/ 

を:

git ftp init -u <openshiftsshtoken> --sftp-key ~/.ssh/id_rsa sftp://YOUR-FTP-SERVER-ADDRESS/app-root/data/html/<foldertouploadto> 

しかし、それは私にいくつかのエラーを投げています。

初期化してsftpが動作していることを確認した後、git ftp pushを実行したいと思います。例えば。

git ftp push -u <openshiftsshtoken> --sftp-key ~/.ssh/id_rsa sftp://YOUR-FTP-SERVER-ADDRESS/app-root/data/html/<foldertouploadto> 

誰かが私が持っているエラーを指摘できますか?

+0

「しかし、それは私にいくつかのエラーを投げている」それは何のエラーを作り出しているのですか?彼らは何を正確に言いますか?通常のsftpクライアントを使用してこのリモートシステムとSFTP接続できますか? – Kenster

+0

エラーは単にクラッシュしたことを説明するものではなく、rsyncを使用してタスクを処理しました。はるかに効率的で、ソースにないファイルをターゲットから削除することができます。 – lastlink

答えて

0

あなたはsftp protocolなどport:22

として
git ftp init --user USERNAME --passwd PASSWORD sftp://domain.com:22/public_html/path/to/website/ 
1

を入力しようとすることができ、過去にGitの-FTPとSFTPを使用していくつかの問題がありました。あなたはそれらの1つまたは複数に直面するかもしれません。

  1. SSH秘密鍵に--keyオプションを指定する必要があります。別のオプションを使用しています。また、公開鍵も持っていることを確認してください。

  2. SFTPは、デフォルトでサーバー上の絶対パスを想定しています。 /app-rootがサーバーのルートディレクトリではなくユーザーのホームディレクトリにある場合は、URL sftp://YOUR-FTP-SERVER-ADDRESS/~/app-root/...を試してください。私は~/を追加しました。

  3. 最後に、既知のホストファイルにCurlが期待するのと同じ方法でサーバーのフィンガープリントがない場合は、追加するか、--insecureフラグを使用する必要があります。最後に、ここにcurrent manualから一例として

git ftp init -u "john" --key "$HOME/.ssh/id_rsa" "sftp://example.com/~/public_html" 
0

どのように正確なエラーを表示するために最初の--vvのパラメータをしようとは?

git ftp init -u <openshiftsshtoken> --sftp-key ~/.ssh/id_rsa sftp://YOUR-FTP-SERVER-ADDRESS/app-root/data/html/<foldertouploadto> -vv 
関連する問題