curl で GitHub に SSH 公開鍵をアップロードする
SSH公開鍵を手でアップロードするのが面倒なので自動化しました
#!/bin/bash key_name=`hostname` pub_key=`cat ~/.ssh/id_ed25519.pub` json=""" { \"title\": \"$key_name\", \"key\": \"$pub_key\" } """ read -sp "Enter your accout name: " user echo read -sp "Enter github password: " pass echo read -sp "Enter github one-time password: " otp echo curl -X POST -u "$user:$pass" -H "X-GitHub-OTP: ${otp}" -d "$json" https://api.github.com/user/keys
必要に応じて pub_key
のパスを変えたり、 user
を固定値にすると良いと思います。