2016-02-29 30 views
0

我需要在需要使用.pem密鑰文件進行登錄的Amazon服務器中使用flightplan.js部署node.js應用程序。 一般情況下我登錄到我的SSH終端是這樣的:Node.js部署在帶有飛行計劃的Amazon服務器實例中

:~$ ssh -i key_file.pem [email protected]_server_instance_ip 

但現在我需要與飛行計劃要做到這一點,我不知道要放什麼東西在我的目標通常它是這樣說:

plan.target('testing', { 
    host: 'amazon_server_instance_ip', 
    username: 'username', 
    password: 'password',' 
    agent: process.env.SSH_AUTH_SOCK, 
    repository: 'http://github.com/my_user/my_repo.git', 
    branch: 'master', 
    maxDeploys: 10 
}); 

回答

0

我做到了,就像這樣:

plan.target('testing', { 
    host: 'amazon_server_instance_ip', 
    username: 'username', 
    agent: process.env.SSH_AUTH_SOCK, 
    repository: 'http://github.com/my_user/my_repo.git', 
    branch: 'master', 
    privateKey: '/path/to/private/key.pem', 
    maxDeploys: 10 
}); 

感謝@mscdex。

2

解決辦法有兩個位置:

  1. 使用您現有的配置,並通過ssh-add R之前,添加key_file.pem到您的SSH代理統一你的腳本。

  2. 更改您的配置以使用privateKey: '/path/to/key_file.pem'而不是agent: ....

+0

做了第二個,但離開了'agent'字段(這是必要的),並且擦除了'password'字段(不需要)。 – fuelusumar