【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登录服务器会出现以下提示,因为没有响应而报错。

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

    参考:ssh 登录出现Are you sure you want to continue connecting (yes/no)?解决方法






    本博客所有文章如无特别注明均为原创。
    复制或转载请以超链接形式注明转自枫芸志,原文地址《【Gitlab】集成自动化部署PHP代码
    分享:

已经有2 条评论抢在你前面了~

  1. 沙发
    repostone 2019年10月19日 下午4:59

    非技术的路过。

    [回复]

  2. 板凳
    VPS234 2019年9月4日 下午3:39

    Gitlab确实是必SVN好用多了,分支太方便了

    [回复]

无觅相关文章插件,快速提升流量