php git自动化部署,【Gitlab】集成自动化部署PHP代码

1、在Gitlab项目的Setting > Variables 里增加SSH_PASSWORD和SSH_USERNAME变量,分别保存服务器的登录用户名和密码;这两个变量在.gitlab-ci.yml里会用到

2、在.gitlab-ci.yml里增加以下配置,其中的serverName替换为服务器的域名或IP,deploytest为自己写的部署脚本;其他参数按需自定义stages:

- deploy-test

deploy-test:

stage: deploy-test

script:

- sshpass -p "$SSH_PASSWORD" ssh -o StrictHostKeyChecking=no -p 22 $SSH_USERNAME@serverName "cd /data/www/deploy_test; ./deploytest master quiet"

environment:

name: test

when: manual

tags:

- chest

only:

- master

以上-o StrictHostKeyChecking=no是必须的,否则会出现ERROR: Job failed: exit code 1报错;细究以下发现是gitlab里的容器第一次ssh登录服务器会出现以下提示,因为没有响应而报错。

09/11/2020 补充:出现 ERROR: Job failed: exit code 1 还可能是因为环境变量SSH_USERNAME和SSH_PASSWORD没有正确设置。需要到CI/CD配置的Variable里设置正确的值。同时注意Protected属性,如果勾上的话只有Protected的Branch和Tag上的Pipeline才能获取到这变量值,其他分支上跑Pipeline就会因为找不到变量值无法登陆而报错。

Are you sure you want to continue connecting (yes/no)?

本博客所有文章如无特别注明均为原创。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值