Хорошо, вот что я пытаюсь сделать. Я пытаюсь написать сценарий быстрой сборки на bash, который будет проверять частный репозиторий из GitHub на удаленном сервере. Чтобы сделать это, насколько это возможно, «без помощи рук», я хочу сгенерировать локальный ключ RSA, установленный на удаленном сервере, и добавить открытый ключ в качестве ключа развертывания для этого конкретного репозитория. Я знаю, как это сделать с помощью API GitHub, но у меня проблемы со сборкой полезной нагрузки JSON с помощью Bash.
Пока что у меня есть этот конкретный процесс, описанный ниже:
#!/bin/bash
ssh-keygen -t rsa -N '' -f ~/.ssh/keyname -q
public_key=`cat ~/.ssh/keyname.pub`
curl -u 'username:password' -d '{"title":"Test Deploy Key", "key":"'$public_key'"}' -i https://api.github.com/repos/username/repository/keys
Это просто неправильное построение полезной нагрузки. Я не эксперт, когда дело касается манипуляций со строками в Bash, так что мне могла бы пригодиться некоторая помощь. Спасибо!