如何使用管道设置部署到远程SSH服务器

时间:2019-02-05 11:47:24

标签: bitbucket-pipelines laravel-envoy

我正在创建管道,当我将更改提交到开发分支时,它将负责在远程服务器上运行部署脚本。我正在使用laravel使者。我需要的只是在提交后在远程服务器上运行envoy run deploy

我正在使用here

中描述的步骤

这是bitbucket-pipelines.yml配置

pipelines:
 branches:
  develop:
   - step:
    script:
     - ssh -t user@example.com
     - cd /var/www/project_folder/html
     - envoy run deploy

发生无限执行,并且出现以下消息

因为stdin不是终端,所以不会分配伪终端。 警告:将IP地址“ 104.236.241.243”的RSA主机密钥永久添加到已知主机列表中。 欢迎使用Ubuntu 16.04.2 LTS(GNU / Linux 4.4.0-138-通用x86_64)  *文档:https://help.ubuntu.com  *管理:https://landscape.canonical.com  *支持:https://ubuntu.com/advantage   通过Ubuntu Advantage Cloud Guest获得云支持:     http://www.ubuntu.com/business/services/cloud 156个软件包可以更新。 0个更新为安全更新。 *需要重新启动系统* mesg:ttyname失败:设备的ioctl不适当

1 个答案:

答案 0 :(得分:0)

该错误表明出了什么问题,您的服务器需要重新启动,并且接下来的两个命令将不会在远程服务器上执行,请更改ssh命令以包括要在远程服务器上执行的命令:

ssh -t user@example.com "cd /var/www/project_folder/html && envoy run deploy"