jenkins-cli は何をしますか?
Jenkins用のGitHubスタイルCLI — コンテキスト、実行、ログ、管理タスクをターミナルから操作できます。
概要
jenkins-cliは、Jenkins CI/CDサーバーをコマンドラインから操作するためのツールです。GitHub CLI (gh) にインスパイアされたインターフェースで、以下の操作を効率的に行えます。
- 複数のJenkinsコンテキストの管理
- ジョブ実行の開始と監視
- ビルドログのリアルタイム表示
- 管理タスク(プラグイン管理、ノード管理など)
インストール
# npmによるインストール
npm install -g @avivsinai/jenkins-cli
# またはHomebrew(macOS/Linux)
brew tap avivsinai/tap
brew install jenkins-cli
クイックスタート
1. 認証設定
jenkins auth login --url https://jenkins.example.com --username your-user --token your-api-token
2. コンテキストの管理
# コンテキストの一覧表示
jenkins context list
# アクティブコンテキストの切り替え
jenkins context use production
3. ジョブの実行
# ジョブの実行
jenkins run build my-pipeline
# 特定のパラメータを指定して実行
jenkins run build my-pipeline --param BRANCH=main --param ENV=staging
# 実行状況の確認
jenkins run status <run-id>
# ログの表示
jenkins run logs <run-id> --follow
4. 管理タスク
# ノード一覧
jenkins admin nodes
# プラグイン一覧
jenkins admin plugins
# プラグインのインストール
jenkins admin plugins install <plugin-name>
設定
設定ファイルは~/.config/jenkins-cli/config.ymlに保存されます。
current_context: production
contexts:
production:
url: https://jenkins.example.com
username: admin
token: "" # 環境変数 JENKINS_TOKEN からも読み込まれます
staging:
url: https://jenkins-staging.example.com
username: admin
token: ""
環境変数
JENKINS_URL- JenkinsサーバーのURLJENKINS_USER- ユーザー名JENKINS_TOKEN- APIトークン(推奨)JENKINS_CONTEXT- 使用するコンテキスト名
ヒント
- APIトークンは
.envファイルに保存しないでください。代わりに環境変数JENKINS_TOKENを使用することを推奨します。 --jsonフラグを使うと、スクリプトで処理しやすいJSON形式で出力されます。- パイプラインの実行が長い場合は、
--waitフラグで完了を待つことができます。
トラブルシューティング
問題: "403 Forbidden" エラーが発生する
CSRF保護が有効になっている可能性があります。jenkins auth login コマンドで再認証してください。
問題: "Cannot find context" エラーが発生する
jenkins context list で利用可能なコンテキストを確認し、アクティブなコンテキストを切り替えてください。
ライセンス
MIT