Стручки какао совместно используют частный модуль через SSH

#git #ssh #gitlab #cocoapods

# #git #ssh #gitlab #cocoapods

Вопрос:

Я создал фреймворк, который я распространяю через модули Cocoa. Это частный модуль, поэтому пользователь должен включить его через git:

   pod 'my-sdk', :git => 'ssh://git@our.gitlab.online/ourcompany/sdk/my-sdk.git', :tag => '1.0.0'
 

когда я запускаю pod install , это работает, поскольку в моем файле конфигурации ssh у меня есть следующее:

 Host our.gitlab.online
  Preferredauthentications publickey
  IdentityFile ~/.ssh/gitlab_rsa
 

Теперь, когда мы хотим поделиться им с интегратором один к одному, мы создаем токен доступа, чтобы иметь доступ к репозиторию git через SSH, чтобы модули Cocoa могли извлекать и создавать его тоже.

Проблема заключается в том, как настроить доступ по SSH с использованием токена доступа вместо пары ключей. Мы также не можем использовать https (ограничения на нашем сервере Gitlab, который был настроен).

Я решил, что можно настроить конфигурацию SSH на устройстве, которое хочет установить SDK, следующим образом:

 Host our.gitlab.online
  Preferredauthentications password
  KbdInteractiveAuthentication yes
 

а затем изменили импорт модуля на этот:

 pod 'my-sdk', :git => 'ssh://project_123_bot@our.gitlab.online/ourcompany/sdk/my-sdk.git', :tag => '1.0.0'
 

где project_123_bot находится пользователь, которого GitLab автоматически создает для проекта. Я надеялся, что при установке модуля появится запрос пароля ssh, но чтобы мы могли ввести токен доступа, но вместо этого я получил только: ...Permission denied (publickey). fatal: Could not read from remote repository.

Когда кто-то входит в Gitlab, например, для Docker, вы можете использовать свое имя пользователя, а затем токен доступа в качестве пароля, как можно добиться чего-то подобного для стручков какао?