首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gitlab CI部署AWS EC2

Gitlab CI部署AWS EC2
EN

Stack Overflow用户
提问于 2018-06-25 21:49:40
回答 1查看 9.2K关注 0票数 2

我们有一个流明应用程序,我们把项目转移到GitLab,如果一切正常,我们想要拉项目。

我们添加两个脚本:

..gitlab ci.yml:

代码语言:javascript
复制
variables:
 - All or variables
stages:
  - test
  - production

testing:
  type: test
  image: php:7.1
  script:
    - echo "ok"

#Production stage
production:   
   stage: production   
   before_script: 
     - mkdir -p ~/.ssh     
     - echo -e "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa     
     - chmod 600 ~/.ssh/id_rsa     
     - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'   
   script:     
      - bash .gitlab-deploy.sh   
   environment:     
      name: production     
      url: https://alpha.merci.network/
   when: manual

我们的部署脚本“..gitlab apply.sh”如下所示:

代码语言:javascript
复制
#!/bin/bash

#Get servers list
set -f
string=$DEPLOY_SERVER
array=(${string//,/ })

#Iterate servers for deploy and pull last commit
for i in "${!array[@]}"do    
      echo "Deploy project on server ${array[i]}"    
      ssh ubuntu@${array[i]} "cd /var/www && git pull origin master"
done

我们已经添加了配置:

当我们将更改推送到回购/主程序时,我们在仪表板日志中看到了下一个错误:

所以我们缺少了什么?有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-26 17:16:52

我把for改为这个是为了让它起作用:

代码语言:javascript
复制
for i in "${!array[@]}"; do
  echo "Deploying information to EC2 and Gitlab"
  echo "Deploy project on server ${array[i]}"
  ssh ubuntu@${array[i]} "cd  /var/www/merci_deploy_api && git pull origin master"
done
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51032256

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档