Загрузите файл из раздела релиза репозитория Github, используя ключ развертывания - PullRequest
0 голосов
/ 30 марта 2019

Я использую ключ развертывания только для чтения, чтобы клонировать частное репозиторий Github в контейнер Docker. Тем не менее, представляется невозможным использовать тот же ключ развертывания для загрузки файла из выпуска. В частности, загрузка файла из выпуска возможна только с использованием личного ключа доступа. Например, вот один такой инструмент для этого:

https://github.com/gruntwork-io/fetch

Кажется, что все эти ответы сосредоточены на использовании персональных токенов доступа вместо ключей развертывания:

Как загрузить двоичные файлы выпуска GitHub?

Как загрузить GitHub Release из частного репозитория с помощью командной строки

Однако я еще не видел никого, кто бы указывал, что это невозможно. Так я что-то пропустил? Можно ли загрузить файл из выпуска (или, черт возьми ... целого выпуска) с помощью ключа развертывания (а не личного ключа доступа)?

Мне нужен ключ, который не привязан к одной из учетных записей сопровождающего, и я ненавижу идею создания какого-то одноразового фантомного пользователя исключительно с целью автоматизации загрузок. В конце концов, фантомная учетная запись будет привязана к чьей-либо учетной записи, и мне не нравится идея этого.

1 Ответ

1 голос
/ 30 марта 2019

Невозможно использовать ключ развертывания для загрузки релиза.Ключ развертывания - это ключ SSH, а в GitHub функциональность SSH ограничена извлечением и извлечением.

Когда вы хотите загрузить архив, извлечь необработанный файл или выполнить любое другое действие, использующее HTTPS, вынужны учетные данные HTTPS.Это может быть токен личного доступа или токен OAuth из приложения OAuth, включенного в вашей учетной записи.Ключи SSH не могут быть использованы для этого, потому что они для другого протокола.

Вероятно, для вас лучше всего будет использовать приложение OAuth, которое имеет доступ к учетной записи организации.Это поможет избежать проблемы, когда конкретный пользователь покидает организацию.

Вы также можете загрузить репозиторий и использовать git archive, чтобы создать архив самостоятельно (или извлечь только те файлы, которые вам нужны, комбинируя его сtar).Это, конечно, не так эффективно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...