2017-02-19 21 views
0

Edit: я нашел это хороший ответ, так что это, вероятно, может быть отмечен дубликат: https://stackoverflow.com/a/31214819/123594Баш загрузки GitHub апи Баш ключ локон загрузки не работает

Я пытаюсь загрузить свежесгенерированным развертывания ключ GitHub через Баш/завитка

Вот что у меня есть: ($ 1 это имя мое репо, $ 2 является суффикс для моего имени ключа)

TOKEN=`cat /path/to/.github_token` 
ssh-keygen -b 2048 -t rsa -f /path/to/key/id_rsa-www_$2 -q -N "" 
KEY=`cat ~/projects/automatem/ansible/roles/accounts/templates/id_rsa-www_$2.pub` 
echo $KEY 
curl -u "myusername:$TOKEN" https://api.github.com/repos/jochendaum/$1/keys -d '{"name":"AUS1","key":"$KEY","read_only":true}' 

Как выход я получаю:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC3rVUbDbhhHCD2q00T29UJRbMqbDdXOq8qwUlY/gOtvzxCu20nQHvGXG4L2FLWffO8V5TQH+e5Ei0G2TDfbjgiYH/BBBEd+agkZf6VHfWmOTG93D55Sse6LoVJNgXu1RICM3zS0CPQ31b05UUIw6AFjesntIh8EoaeftSm99CCxgLT3bRkSWkfSAng6VD6EwT1od+RMXxqOMpyJv0BeJaOELjJM8AAIIbjrcPaprAG3OixtJoYdBnUyK14srdmUjKmnJMFcrlFRPphzTnpjXZAFVIK1j7+Mh9UnNIKE5nlBL5Y5YtUkyy7ixIM/dCfu9tAyxufKjGz23Ug111WTmzB [email protected] 

{ 

    "message": "Validation Failed", 
    "errors": [ 
    { 
     "resource": "PublicKey", 
     "code": "custom", 
     "field": "key", 
     "message": "key is invalid. It must begin with 'ssh-ed25519', 'ssh-rsa', 'ssh-dss', 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384', or 'ecdsa-sha2-nistp521'. Check that you're copying the public half of the key" 
    } 
    ], 
    "documentation_url": "https://developer.github.com/v3/repos/keys/#create" 
} 

Его, как будто что-то отрезают, когда ключ передается через завиток

+0

Попробуйте 'echo '{" name ":" AUS1 "," key ":" $ KEY "," read_only ": true}' ', чтобы увидеть, что видит curl: буквальный' $ KEY'. –

ответ

0

Помимо странных путей, которые вы, кажется, использовать, но это может быть просто плохо маскировка на вашей стороне, Bash ничего не будет расширяться внутри одиночных кавычек.

 Смежные вопросы

  • Нет связанных вопросов^_^