【问题标题】:CircleCI 2.0: Build directory for scp / rsync deploymentCircleCI 2.0:用于 scp / rsync 部署的构建目录
【发布时间】:2018-10-31 17:53:59
【问题描述】:

Re:CircleCI 2.0:用于 scp 部署的构建目录

我对用于通过 SSH(scp、rsync 等)部署到另一台服务器的源文件夹感到困惑。我尝试了构建中的 working_directory,我尝试了 ~/repo_name 和其他几个变体,但没有任何运气。

我只是尝试构建 circleci-demo-php-laravel 演示作为测试。

https://github.com/dmgig/circleci-demo-php-laravel/blob/circleci-2.0/.circleci/config.yml

感谢您的帮助。

这是我挂断的部署步骤。我已经尝试了所有方法 - 在构建和部署中设置 working_directory,使用部署机器启动时创建的 CIRCLE_WORKING_DIRECTORY env 变量。我完全不知所措。

run:
name: Deploy Over SSH
command: scp -r {WHAT_IS_THE_BUILD_DIR} serveradmin%mydomain.org@mydomain.org:~/domains/circleci.mydomain.org/html/

更新

虽然我确实在下面找到了一个解决方案,将构建下的部署结合起来,但我仍然对构建和部署在不同工作下的关系感到困惑。如果有人能澄清这一点,那就太好了。

【问题讨论】:

    标签: php build continuous-integration circleci


    【解决方案1】:

    我在发布赏金约 5 分钟后发现我的错误在于我的 builddeploy 步骤不同。

    错误

    jobs:
      build:
        docker:
          - image: circleci/php:7.1-node-browsers
    ...
    
      deploy:
        machine:
          enabled: true
    

    正确

    jobs:
      build:
        docker:
          - image: circleci/php:7.1-node-browsers
    ...
    
      deploy:
        docker:
          - image: circleci/php:7.1-node-browsers
    

    FINAL 我最终通过 rsync 构建和部署的超级简单的内容如下。

    我实际上完全删除了带有单独构建和部署部分的“工作流程”——它对我没有用。我可以在构建步骤下做所有事情。

    这是一个非常基本的设置,它只检查一个 repo,安装 composer 需求,然后通过 rsync 将所有内容传输到第三方服务器(在我的例子中是 MediaTemple)。

    唯一的其他步骤是创建一个 SSH 密钥并将其安装到 CircleCI 项目中(网上有很多教程)。

    # PHP CircleCI 2.0 configuration file
    #
    version: 2
    
    jobs:
      build:
        docker:
          - image: circleci/php:7.1-node-browsers
        working_directory: ~/beta
        steps:
          - checkout
          - run: php composer.phar install
          - run: pwd
          - deploy:
              name: Deploy Over SSH
              command: rsync -e "ssh -o StrictHostKeyChecking=no" -arvc --exclude .git ~/beta/ myuser@mysite.org:~/domains/mysite.org/html/beta
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-30
      • 2018-11-20
      • 2018-08-05
      相关资源
      最近更新 更多