Итак, история такова: у меня есть проект Xcode, который зависит от быстрого пакета, который находится в частном репозитории на github. Конечно, для этого требуется ключ для доступа. До сих пор мне удалось настроить CI таким образом, чтобы я мог использовать ssh в экземпляре и git clone
требуемом хранилище для пакета swift. К сожалению, когда он работает с xcbuild
CI, он не работает, и я получаю следующее сообщение:
static:ios distiller$ xcodebuild -showBuildSettings -workspace ./Project.xcworkspace \
-scheme App\ Prod
Resolve Package Graph
Fetching git@github.com:company-uk/ProjectDependency.git
xcodebuild: error: Could not resolve package dependencies:
Authentication failed because the credentials were rejected
В отличие от этого, мы git clone
будем рады получить этот репозиторий, как показано здесь:
static:ios distiller$ git clone git@github.com:company-uk/ProjectDependency.git
Cloning into 'ProjectDependency'...
Warning: Permanently added the RSA host key for IP address '11.22.33.44' to the list of known hosts.
remote: Enumerating objects: 263, done.
remote: Counting objects: 100% (263/263), done.
remote: Compressing objects: 100% (171/171), done.
remote: Total 1335 (delta 165), reused 174 (delta 86), pack-reused 1072
Receiving objects: 100% (1335/1335), 1.11 MiB | 5.67 MiB/s, done.
Resolving deltas: 100% (681/681), done.
Для некоторого большего контекста, это работает на CircleCI, настроенном с ключом Deploy на GitHub, который был добавлен к Заданию на CI.
Любые предложения о том, что может отличаться между тем, как Xcode пытается получить зависимости, и тем, как это делает vanilla git, было бы замечательно. Спасибо.