【问题标题】:Deploy from github to Digital Ocean with Mina - hangs on "fetching commits"使用 Mina 从 github 部署到 Digital Ocean - 挂在“获取提交”上
【发布时间】:2020-02-27 23:08:53
【问题描述】:

我已添加服务器的 SSH 密钥以在 github 中部署密钥。

运行mina deploy 后,我得到以下信息:

-----> Quiet sidekiq (stop accepting new work)
       /var/www/myproject/tmp/build-157262358827785
-----> Fetching new git commits

它停留在这里,什么都没有发生

当我按 ctrl + c 时,它会说

-----> Mina: SIGINT received.
       Enter passphrase for key '/root/.ssh/id_rsa':
       Elapsed time: 1931.59 seconds

在我的deploy.rb 文件中,我有set :term_mode, nil - 人们说你需要它,因为它在输入 SSH 密码后挂断时需要,但我在控制台中执行 ctrl + c 之前从未启动过。

无法输入密码

编辑:

我为详细输出做了一个-v 标志:

 -----> Quiet sidekiq (stop accepting new work)
       $ cd /var/www/myproject/current
       $ if [ -f /var/www/myproject/shared/pids/sidekiq.pid ] && kill -0 `cat /var/www/myproject/shared/pids/sidekiq.pid` > /dev/null 2>&1; then
                     RAILS_ENV="production" bundle exec sidekiqctl quiet /var/www/myproject/shared/pids/sidekiq.pid
                   else
                     echo 'Skip quiet command (no pid file found)'
                   fi
       /var/www/myproject/tmp/build-157288289226943
-----> Fetching new git commits
       $ (cd "/var/www/myproject/scm" && git fetch "git@github.com:[company]/myproject.git" "dev:dev" --force)

进行-s 进行模拟表明这部分正在运行

if [ ! -d "/var/www/myproject/scm/objects" ]; then
    echo "-----> Cloning the Git repository"
    git clone "git@github.com:[company]/myproject.git" "/var/www/myproject/scm" --bare
  else
    echo "-----> Fetching new git commits"
    (cd "/var/www/myproject/scm" && git fetch "git@github.com:[company]/myproject.git" "dev:dev" --force)
  fi &&

【问题讨论】:

    标签: ruby ssh digital-ocean mina-deploy


    【解决方案1】:

    好的,我发现了这个已关闭的 github 问题:https://github.com/mina-deploy/mina/issues/449

    我发现我只需将set :execution_mode, :system 添加到我的部署文件中。

    github问题上的答案说它在FAQ上,但是,他们的措辞如下:

    - Mina hangs after i type my password in
    Mina assumes that you have set up the communication with your server through the public/private keys, not password. If you want to use the password you will have to change the execution mode:
    

    我什至从未被提示输入密码,所以我不知道这适用于我。我也在使用 ssh 公钥/私钥(显然),所以他们的措辞方式很奇怪。可能是因为我没有这方面的经验。

    无论如何,如果有人遇到同样的问题 - 这就是答案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-02
      • 2017-01-25
      • 1970-01-01
      • 2021-02-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-06
      相关资源
      最近更新 更多