Tak więc tło jest następujące: mam projekt Xcode, który zależy od szybkiego pakietu, który znajduje się w prywatnym repozytorium na github. Oczywiście wymaga to klucza dostępu. Do tej pory udało mi się skonfigurować CI tak, że mogę ssh w instancji i git clone
wymaganym repozytorium dla szybkiego pakietu. Niestety, gdy działa z xcbuild
CI tak jak CI, to nie działa i pojawia się ten komunikat:
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
Natomiast git clone
chętnie pobierze to repozytorium, jak pokazano tutaj:
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.
Dla nieco większego kontekstu działa to na CircleCI, skonfigurowanym za pomocą klucza Wdróż na GitHub, który został dodany do zadania w CI.
Wszelkie sugestie dotyczące tego, co może różnić się między sposobem, w jaki Xcode próbuje pobrać zależności, a sposobem, w jaki robi to waniliowy git, byłoby świetne. Dzięki.