Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssh 允许CI访问专用BitBucket repo_Ssh_Continuous Integration_Bitbucket_Fastlane_Visual Studio App Center - Fatal编程技术网

Ssh 允许CI访问专用BitBucket repo

Ssh 允许CI访问专用BitBucket repo,ssh,continuous-integration,bitbucket,fastlane,visual-studio-app-center,Ssh,Continuous Integration,Bitbucket,Fastlane,Visual Studio App Center,我正在AppCenter上运行一台CI计算机,需要允许对私有BitBucket存储库进行读/写访问,但我不知道如何做到这一点 我的方法是创建一个ssh密钥,并在CI构建过程中使用ssh add-K(mac机器)将私钥添加到机器ssh agent 我使用ssh-keygen在本地计算机(mac)上创建了一个ssh密钥,并将.pub密钥上载到BitBucket。然后,当我的CI运行时,我尝试获取私钥并将其添加到ssh代理,但提示我输入密码,并且不知道如何以非交互式shell模式注入密码 这是授予对C

我正在AppCenter上运行一台CI计算机,需要允许对私有BitBucket存储库进行读/写访问,但我不知道如何做到这一点

我的方法是创建一个ssh密钥,并在CI构建过程中使用
ssh add-K
(mac机器)将私钥添加到机器
ssh agent

我使用
ssh-keygen
在本地计算机(mac)上创建了一个
ssh
密钥,并将
.pub
密钥上载到BitBucket。然后,当我的CI运行时,我尝试获取私钥并将其添加到
ssh代理
,但提示我输入密码,并且不知道如何以非交互式shell模式注入密码

这是授予对CI中BitBucket的访问权限的正确方法吗?如果是这样,如何添加ssh密钥而不提示输入密码?

  • 脚本使用Ruby或Bash
  • 回购协议包含用于快速车道匹配的证书

    • 回答我自己的问题

      我最终使用了
      BitBucket AppPasword
      并通过
      https
      进行了克隆。我认为必须有更好的方法,但这是我目前的工作需要

      我需要从我的CI访问私有BitBucket证书repo以与
      Fastlane Match
      一起使用,我的匹配文件中
      git_url
      允许我克隆repo的值为:

      git_url "https://{BITBUCKET_USER}:{BITBUCKET_APP_PASSWORD}@bitbucket.org/{BITBUCKET_USER}/{REPO}.git"
      
      您可以通过单击您的个人资料(化身)->设置->应用程序密码来获取bitbucket应用程序密码