先日、bitrise
というクラウドCIを導入する機会があり、その時ハマった内容を書いていこうと思います。
Bitrise
モバイルアプリ(Android、iOS)の為のCI。
使い方についてはいろんな記事が出ているので割愛。
対象者
SSH key
の設定をマニュアルで行おうとしたらinvalid error
と言われた人
原因
ほとんどの人が公式ページを見て以下のコマンドを叩いたと思います。
$ ssh-keygen -t rsa -b 4096 -P '' -f ./bitrise-ssh
このコマンドを打って生成された秘密鍵のヘッダー、フッターにかかれている文字を確認してみてください。
-----BEGIN OPENSSH PRIVATE KEY-----
...
...
...
-----END OPENSSH PRIVATE KEY-----
OPENSSH???RSAじゃないの???フォーマット違いでinvalidになっていたようです。
期待値としてはここはRSA
で出力されてほしいところです。
本当のところを言うとこのフォーマットは秘密鍵の新しいフォーマットらしいので、bitrise
さん対応お願いしますと言いたいところなのですが。
対応策
上記コマンドにオプションをつけてあげる。
$ ssh-keygen -m PEM -t rsa -b 4096 -P '' -f ./bitrise-ssh
参考:https://serverfault.com/questions/939909/ssh-keygen-does-not-create-rsa-private-key
感想
Bitrise
に限った話じゃない気もしてる。(秘密鍵扱うサービス全般)
AUTO
使えやって話なんですけどね。