1 hour ago · Science · hide · 0 comments

gh auth login はWSL2でkeyringが使えない場合、トークンを ~/.config/gh/hosts.yml に平文保存をしてしまう。また、GitHub CLIで生成されるOAuth tokenはトークンは である。この当たりは が詳しい。 これを回避するために、 というCLIを導入した。ghtknはGitHub Appから8時間毎に更新されるUser Access Tokenを発行するCLIである。さらに、最近入った機能でバックエンドを agent にすることで、keyringに依存せず できる。 今回は、作者の を見ながらインストールをしたので、その方法をメモしておく。 インストール 今回は mise 経由でインストールをした。 mise install ghtkn mise use ghtkn GitHub Appの作成 GitHub Appを作成し、client_idを取得する。これを設定ファイルに書けば良い。 今回は、作者の記事から以下のURLをベースに作成をした。 作成後に発行されるClient IDを次で設定する設定ファイルに書き込む。 設定ファイル ghtkn init を実行して設定ファイルを生成し、そこにGitHub AppのClient IDと今回使うbackendの設定をする。 ~/.config/ghtkn/ghtkn.yaml apps: - name: suzuki-shunsuke/write # 識別用のapp名。適当に書き換える client_id: xxx # GitHub AppのClient ID backend: type: agent 初回認証 ghtkn auth これを実行するとDevice Flowが開始される。 ではheadless環境ではブラウザを開かなくなったため、WSL2では自分で表示されたURLを開いてコードを入力する。 agentバックエンドの設定 バックエンドはデフォルトはOS keyringだが、WSL2ではハマりどころがありそうだった( はいるにはいる)のでagentバックエンドを使うことにした。 設定は、先程のbackendの設定を type: agent にしていればよい。 agentバックエンドは以下の特徴がある。…

No comments yet. Log in to reply on the Fediverse. Comments will appear here.