kb84tkhrのブログ

何を書こうか考え中です あ、あと組織とは関係ないってやつです 個人的なやつ

GitHub実践入門(12)

Jenkins用の設定の続き

bot用のGitHubアカウントがいるらしい
あんまりアカウント増やしたくないんだけどなあ
gmailのサブアドレスが使えるかな
使えるみたい

公開鍵と秘密鍵を作る・・・
OSのアカウントも分けたほうがいいのかなあ
パッケージからインストールすれば自動的に作成されるって書いてあるけど

ちょっと面倒になってきた

分けずにやってみよう
「すでにJenkinsを利用している場合」のやり方でいけばいけそうな気がする

パスフレーズを空にして作った公開鍵をGitHubbot用アカウントに登録して
bot用アカウントをCollaboratorにして

~/.ssh/configに

「すでにJenkinsを利用している場合」ではホスト名で鍵を
使い分けようとしているからうまくいかないか
いやむしろわざわざ別の鍵にしなければいいのか

いや、こんなことを考えなきゃいけないのがそもそも間違っているのでは
やっぱりアカウント分けよう

そうすると、warをjenkinsユーザで起動するってことかな
動いた動いた
Javaの設定とかもなしでいけてる
botアカウントはさっき作ったのをそのまま使えばいいし
公開鍵を登録して git clone できることを確認

Jenkinsの管理 - Pluginの管理 から GitHub Pull Request Builder を

GitHub Pull Request Builder
Warning: This plugin version may not be safe to use. Please review the following security notices:
GitHub access tokens stored in in build.xml

おい

Since 1.40.0, the plugin no longer stores serialized objects containing the credential on disk.

インストールされるバージョンは1.42.0だから大丈夫っぽいが
なら表示しなくてよくね?
大丈夫ってことで「再起動せずにインストール」
成功

成功したんだけど

Warnings have been published for the following currently installed components.
GitHub Pull Request Builder 1.42.0
GitHub access tokens stored in in build.xml

おいー
どっちなんだよー

進むか

Jenkinsの管理 - システムの設定 で Git pluginの設定
「グローバルなuser.nameの値」と「グローバルなuser.emailの値」を入力
これはbotじゃなくて自分のアカウントのつもりで入れればいいのかな?
あとで区別がつくように名前だけ少し変えておこう

続いてGitHub Pull Request Builderの設定
UsernameとPasswordを入力してCreate access tokenを押せば
アクセストークンを取得できるらしいが
画面上にはCreate API Tokenというボタンしかない
画面が変わったのかな

よく見るとプラグインの名前が微妙に違う
本のスクリーンショットではGitHub pull requests builder
今見てる画面にはGithub Pull Request Builder
大文字小文字とsがひとつ違うだけだし他に似た名前もないから大丈夫だろうけど

Wikiの通りにやってみよう
Credentialの追加でJenkinsを選んだら種類をsecret textにしてと

SecretとかIDとか入れなきゃいけないのか
これがTokenってやつだろう

WikiによるとTest CredentialでTokenを作れるよって書いてあるけど
作れそうな感じしない
やっぱりCreate API Tokenから作るのかな
やってみるか

Username tempとPassword tempを入れてCreate Tokenを押すわけだが
tempってなんだよ
難易度高いな
tempっていうから適当なの入れてみたらエラー どういう意味だよ
botGitHubアカウント・パスワードを入れたら

Access token created: xxxxxxxxxxxxx
token CredentialsID: yyyyyyyyyyyy

みたいに出たのでそれぞれSecretとIDに入れてみたら
This ID is already in use だってさ
もう設定済みなの?
Shared secretてとこに値が設定済みなのがちょっと気になってたけど
もしかしてこのIDとそのShared secretが組になってて設定済みとか?

なんでみんなこれで使えてるんだ
たぶんなにか常識が足りてないんだな

「ユーザー名とパスワード」にしてbotのユーザー名とパスワードでやってみる
IDはよくわからないからとりあえず空白
これは成功

Test Credentialしてみる
Test basic connection to GitHubは成功
Connected to https://api.github.com as null (null) login: xxxxxxxx って表示された
null(null)はさっき空白にしたIDと説明のところか
やっぱり何か入れておいたほうがよさそうだ

といっても修正方法も見当たらない
Delete Serverっていうボタンがあるけどこれは一気にいろいろ消えない?
やってみる
ごっそり消えたので「追加」ボタンを押す
あれ
Credentialが消えてない
いいかもう
困るまでこのまま行こう

Test Permissions to a Repository も成功っぽいけど
User has access to: Push, Pull って表示されてるのが
ちょっと気になるな
それで足りてるのかな

Admin Listに本アカウントの名前を入れて保存
ここまでにしておく
うまくいかなくってもトラブルシューティングできる気がまったくしない件について