jpskill.com
🛠️ 開発・MCP コミュニティ

jenkins-deploy

Jenkinsを使って、まるで手慣れた同僚に頼むように、Gitのブランチやタグ情報を活用しながら、プロジェクトの構築やリリースをスムーズに実行できる便利な自動化支援するSkill。

📜 元の英語説明(参考)

ABC Jenkins 项目发布技能。支持智能参数推断和交互式触发 Jenkins 构建,自动获取 Git 分支和标签信息。当用户请求"发布 Jenkins"、"触发构建"、"部署项目"、"Jenkins 发布"或类似操作时触发此技能。需要环境变量 JENKINS_USER 和 JENKINS_TOKEN。

🇯🇵 日本人クリエイター向け解説

一言でいうと

Jenkinsを使って、まるで手慣れた同僚に頼むように、Gitのブランチやタグ情報を活用しながら、プロジェクトの構築やリリースをスムーズに実行できる便利な自動化支援するSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o jenkins-deploy.zip https://jpskill.com/download/8796.zip && unzip -o jenkins-deploy.zip && rm jenkins-deploy.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/8796.zip -OutFile "$d\jenkins-deploy.zip"; Expand-Archive "$d\jenkins-deploy.zip" -DestinationPath $d -Force; ri "$d\jenkins-deploy.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して jenkins-deploy.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → jenkins-deploy フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

ABC Jenkins 发布技能

対話形式で Jenkins のビルドをトリガーし、スマートなパラメータ推論(ブランチ名の自動解析、環境推論)とリアルタイムな状態監視をサポートします。

前提条件

  1. JENKINS_USER 環境変数が設定済みであること(Jenkins ユーザー名)
  2. JENKINS_TOKEN 環境変数が設定済みであること(Jenkins API Token)
  3. 現在 Git リポジトリ内にいること(ブランチとタグを自動取得するため)

インストール

npx add-skill https://github.com/ABCFed/claude-marketplace/tree/main/skills/jenkins-deploy

準備

# ~/.zshrc または ~/.bashrc を編集
export JENKINS_USER="your_jenkins_username"
export JENKINS_TOKEN="your_jenkins_api_token"
source ~/.zshrc

使用フロー

方式 1:二段階デプロイ(推奨、進捗状況を確認可能)

ステップ 1:ビルドのトリガー(JSON を返す)

python scripts/jenkins_deploy.py \
  <project_name> \
  --trigger-only-no-monitor \
  --yes \
  --params "<json>"

JSON の戻り値:

{
  "queue_id": 161484,
  "full_name": "abc-his/test/PcFeatureTest",
  "project_name": "PcFeatureTest",
  "build_url": "http://ci.abczs.cn/job/abc-his/job/test/job/PcFeatureTest/"
}

ステップ 2:バックグラウンド監視の開始

Claude Code(run_in_background=true を使用):

# Claude Code で Bash ツールを使用し、run_in_background=true を設定
python scripts/jenkins_deploy.py \
  --monitor-only \
  --full-name abc-his/test/PcFeatureTest \
  --queue-id 161484 \
  --display-name PcFeatureTest

その他の AI ツールまたはターミナル(nohup を使用):

nohup python scripts/jenkins_deploy.py \
  --monitor-only \
  --full-name abc-his/test/PcFeatureTest \
  --queue-id 161484 \
  --display-name PcFeatureTest > /dev/null 2>&1 &

重要な説明:

  • 監視タスクはバックグラウンドタスクとして実行され、メインの会話/ターミナルをブロックしません
  • Claude Code:進捗状況はバックグラウンドタスクの出力に表示されます
  • その他のツール:nohup を使用してバックグラウンド実行を実現し、ビルド完了後にシステム通知を受信します
  • ユーザーは他の操作を続行できます

監視出力の例:

📊 ビルドの監視を開始: PcFeatureTest
   Queue ID: 161484
   プロジェクト: abc-his/test/PcFeatureTest

タスクの実行を開始 (Build #11122)
📦 ビルド番号: #11122
⏳ ビルドの進捗状況を監視中...
   キャンセルする必要がある場合は、"ビルド #11122 をキャンセル" と教えてください

⏳ [███████████░░░░░░░░░░░░░░░] 42% (125s)
...
✅ PcFeatureTest ビルドが成功しました!

パラメータの説明

--trigger-only-no-monitor モード(ビルドのトリガー)

パラメータ 必須 説明
project_name Jenkins プロジェクト名(例:PcFeatureTest)
--trigger-only-no-monitor ビルドをトリガーするだけで、監視を開始せず、JSON を返します
--yes 対話形式の確認をスキップします
--params JSON 形式の完全なビルドパラメータ

--monitor-only モード

パラメータ 必須 説明
--monitor-only バックグラウンド監視モード
--full-name プロジェクトの完全なパス(例:abc-his/test/PcFeatureTest)
--queue-id キュー ID
--display-name プロジェクトの表示名(通知用)

完全な例

テスト環境へのリリース

# ステップ 1: ビルドのトリガー
python scripts/jenkins_deploy.py \
  PcFeatureTest \
  --trigger-only-no-monitor \
  --yes \
  --params '{"repoTag":"pc-t2025.53.19","tapdId":"1167459320001118371","featureNo":"70"}'

# JSON の戻り値:
# {"queue_id": 161484, "full_name": "abc-his/test/PcFeatureTest", ...}

# ステップ 2: バックグラウンド監視の開始
# Claude Code: 直接実行(run_in_background=true が使用されます)
# その他のツール: nohup と & を追加してバックグラウンドに配置
python scripts/jenkins_deploy.py \
  --monitor-only \
  --full-name abc-his/test/PcFeatureTest \
  --queue-id 161484 \
  --display-name PcFeatureTest

開発環境へのリリース

python scripts/jenkins_deploy.py \
  staticPcOwn \
  --trigger-only-no-monitor \
  --yes \
  --params '{"repoBranch":"hotfix/xxx-1167459320001118371"}'

その他のコマンド

# すべてのプロジェクトをリスト表示
python scripts/jenkins_deploy.py --list --all

# 現在のリポジトリに関連するプロジェクトをリスト表示(自動フィルタリング)
python scripts/jenkins_deploy.py --list

# 指定されたビルド番号を停止
python scripts/jenkins_deploy.py --stop <build_number>

テストと検証

スキルを変更するたびに、次の手順で検証することをお勧めします。

クイックテストコマンド

# すべてのテストケースを自動的に実行
python scripts/run_tests.py

手動テスト

1. パラメータ検証(必須)

python scripts/jenkins_deploy.py \
  PcFeatureTest \
  --validate \
  --params '{"repoTag":"pc-t2025.53.19","featureNo":"70"}'

2. 模擬実行(必須)

python scripts/jenkins_deploy.py \
  PcFeatureTest \
  --dry-run \
  --params '{"repoTag":"pc-t2025.53.19","featureNo":"70"}'

詳細なテストケースtest-cases.md を参照してください

ワークフロー(推奨モード)

┌─────────────────────────────────────────────────────────────┐
│ 1. Claude Code: AskUserQuestion を使用してパラメータを収集               │
│    その他の AI ツール: 対話を通じてパラメータを収集                            │
│    - プロジェクト名                                               │
│    - Git ブランチ / タグ                                         │
│    - TAPD ID(ブランチ名から自動解析)                             │
│    - featureNo(プロジェクトにこのパラメータがある場合、**必須**)                 │
│    - その他のビルドパラメータ                                            │
└─────────────────────────────────────────────────────────────┘
                          ↓
┌─────────────────────────────────────────────────────────────┐
│ 2. スクリプトを --trigger-only モードで呼び出す                            │
│    - 完全な JSON パラメータを渡す                                    │
│    - Jenkins API を直接トリガー                                   │
└─────────────────────────────────────────────────────────────┘
                          ↓
┌─────────────────────────────────────────────────────────────┐
│ 3. ビルド情報を返す                                            │
│    - Queue ID                                               │
│    - ビルドページの URL                                           │
└─────────────────────────────────────────────────────────────┘

スマートパラメータ推論

パラメータ 推論ルール
repoBranch 現在の Git ブランチ hotfix/盤点页面增加备注及搜索-1167459320001118371
repoTag 最新の Git タグ pc-f2026.05.48
tapdId / tapdid ブランチ名から自動解析(標準化されたフロー:ブランチ名の末尾の数字) 1167459320001118371
execType tag=deploy がある場合は deploy、ない場合は build tag がある → deploy
featureNo 必須(プロジェクトにこのパラメータがある場合)、ユーザーが明確に指定する必要がある 1122044681001112866
envNo 一部のプロジェクトで必要、ユーザーが明確に指定する必要がある 001

TAPD ID の自動解析

標準化されたフローでは、ブランチ名の形式は feature/xxx-{TAPD_ID} または hotfix/xxx-{TAPD_ID} です。

ブランチ名:hotfix/盤点页面增加备注及搜索-1167459320001118371
                                         └────────────────────┘
                                          自動的に TAPD ID を抽出

手動で設定する必要はなく、リリース時に tapdId または tapdid パラメータに自動的に入力されます。

⚠️ 重要

  • featureNo(機能番号):プロジェクトにこのパラメータがある場合は必須、ユーザーが提供する必要があります
  • envNo(環境番号):一部のプロジェクトで必要、ユーザーが提供する必要があります

サポートされているパラメータタイプ

パラメータタイプ 説明 対話方式
StringParameterDefinition テキスト入力 直接入力するか、Enter キーを押してデフォルト値を使用します
ChoiceParameterDefinition ドロップダウン選択 オプションのリストを表示し、番号を入力して選択します
PT_CHECKBOX チェックボックスの複数選択 オプションのリストを表示し、カンマ区切りの番号を入力します
BooleanParameterDefinition ブール値 y/n を選択します
WReadonlyStringParameterDefinition 読み取り専用パラメータ 自動的に使用され、変更できません

一般的なプロジェクトタイプ

詳細なプロジェクトパラメータの参照:[projects.md](references

(原文がここで切り詰められています)

📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

ABC Jenkins 发布技能

交互式触发 Jenkins 构建,支持智能参数推断(自动解析分支名、环境推断)和实时状态监控。

前置条件

  1. JENKINS_USER 环境变量已设置(Jenkins 用户名)
  2. JENKINS_TOKEN 环境变量已设置(Jenkins API Token)
  3. 当前在 Git 仓库中(用于自动获取分支和标签)

安装

npx add-skill https://github.com/ABCFed/claude-marketplace/tree/main/skills/jenkins-deploy

准备

# 编辑 ~/.zshrc 或 ~/.bashrc
export JENKINS_USER="your_jenkins_username"
export JENKINS_TOKEN="your_jenkins_api_token"
source ~/.zshrc

使用流程

方式一:两阶段部署(推荐,进度可见)

步骤 1:触发构建(返回 JSON)

python scripts/jenkins_deploy.py \
  <project_name> \
  --trigger-only-no-monitor \
  --yes \
  --params "<json>"

返回 JSON:

{
  "queue_id": 161484,
  "full_name": "abc-his/test/PcFeatureTest",
  "project_name": "PcFeatureTest",
  "build_url": "http://ci.abczs.cn/job/abc-his/job/test/job/PcFeatureTest/"
}

步骤 2:启动后台监控

Claude Code(使用 run_in_background=true):

# 在 Claude Code 中使用 Bash 工具,设置 run_in_background=true
python scripts/jenkins_deploy.py \
  --monitor-only \
  --full-name abc-his/test/PcFeatureTest \
  --queue-id 161484 \
  --display-name PcFeatureTest

其他 AI 工具或终端(使用 nohup):

nohup python scripts/jenkins_deploy.py \
  --monitor-only \
  --full-name abc-his/test/PcFeatureTest \
  --queue-id 161484 \
  --display-name PcFeatureTest > /dev/null 2>&1 &

重要说明:

  • 监控任务作为后台任务运行,不阻塞主对话/终端
  • Claude Code:进度显示在后台任务输出中
  • 其他工具:使用 nohup 实现后台运行,构建完成后会收到系统通知
  • 用户可以继续进行其他操作

监控输出示例:

📊 开始监控构建: PcFeatureTest
   Queue ID: 161484
   项目: abc-his/test/PcFeatureTest

任务开始执行 (Build #11122)
📦 构建号: #11122
⏳ 监控构建进度...
   需要取消时,请告诉我: "取消构建 #11122"

⏳ [███████████░░░░░░░░░░░░░░░] 42% (125s)
...
✅ PcFeatureTest 构建成功!

参数说明

--trigger-only-no-monitor 模式(触发构建)

参数 必填 说明
project_name Jenkins 项目名称(如 PcFeatureTest)
--trigger-only-no-monitor 仅触发构建,不启动监控,返回 JSON
--yes 跳过交互式确认
--params JSON 格式的完整构建参数

--monitor-only 模式

参数 必填 说明
--monitor-only 后台监控模式
--full-name 项目完整路径(如 abc-his/test/PcFeatureTest)
--queue-id 队列 ID
--display-name 项目显示名称(用于通知)

完整示例

测试环境发布

# 步骤 1: 触发构建
python scripts/jenkins_deploy.py \
  PcFeatureTest \
  --trigger-only-no-monitor \
  --yes \
  --params '{"repoTag":"pc-t2025.53.19","tapdId":"1167459320001118371","featureNo":"70"}'

# 返回 JSON:
# {"queue_id": 161484, "full_name": "abc-his/test/PcFeatureTest", ...}

# 步骤 2: 启动后台监控
# Claude Code: 直接运行(会使用 run_in_background=true)
# 其他工具: 添加 nohup 和 & 放到后台
python scripts/jenkins_deploy.py \
  --monitor-only \
  --full-name abc-his/test/PcFeatureTest \
  --queue-id 161484 \
  --display-name PcFeatureTest

开发环境发布

python scripts/jenkins_deploy.py \
  staticPcOwn \
  --trigger-only-no-monitor \
  --yes \
  --params '{"repoBranch":"hotfix/xxx-1167459320001118371"}'

其他命令

# 列出所有项目
python scripts/jenkins_deploy.py --list --all

# 列出当前仓库相关的项目(自动过滤)
python scripts/jenkins_deploy.py --list

# 停止指定构建号
python scripts/jenkins_deploy.py --stop <build_number>

测试与验证

每次修改技能后,建议按以下流程验证:

快速测试命令

# 自动化运行所有测试用例
python scripts/run_tests.py

手动测试

1. 参数验证(必做)

python scripts/jenkins_deploy.py \
  PcFeatureTest \
  --validate \
  --params '{"repoTag":"pc-t2025.53.19","featureNo":"70"}'

2. 模拟运行(必做)

python scripts/jenkins_deploy.py \
  PcFeatureTest \
  --dry-run \
  --params '{"repoTag":"pc-t2025.53.19","featureNo":"70"}'

详细测试用例:参见 test-cases.md

工作流程(推荐模式)

┌─────────────────────────────────────────────────────────────┐
│ 1. Claude Code: 使用 AskUserQuestion 收集参数               │
│    其他 AI 工具: 通过对话收集参数                            │
│    - 项目名称                                               │
│    - Git 分支 / 标签                                         │
│    - TAPD ID(从分支名自动解析)                             │
│    - featureNo(如果项目有此参数,**必填**)                 │
│    - 其他构建参数                                            │
└─────────────────────────────────────────────────────────────┘
                          ↓
┌─────────────────────────────────────────────────────────────┐
│ 2. 调用脚本 --trigger-only 模式                            │
│    - 传递完整的 JSON 参数                                    │
│    - 直接触发 Jenkins API                                   │
└─────────────────────────────────────────────────────────────┘
                          ↓
┌─────────────────────────────────────────────────────────────┐
│ 3. 返回构建信息                                            │
│    - Queue ID                                               │
│    - 构建页面 URL                                           │
└─────────────────────────────────────────────────────────────┘

智能参数推断

参数 推断规则 示例
repoBranch 当前 Git 分支 hotfix/盘点页面增加备注及搜索-1167459320001118371
repoTag 最新 Git 标签 pc-f2026.05.48
tapdId / tapdid 从分支名自动解析(标准化流程:分支名末尾的数字) 1167459320001118371
execType 有 tag=deploy,无 tag=build 有 tag → deploy
featureNo 必填(当项目有此参数时),需用户明确指定 1122044681001112866
envNo 部分项目需要,需用户明确指定 001

TAPD ID 自动解析

标准化流程下,分支名格式为 feature/xxx-{TAPD_ID}hotfix/xxx-{TAPD_ID}

分支名:hotfix/盘点页面增加备注及搜索-1167459320001118371
                                         └────────────────────┘
                                          自动提取 TAPD ID

无需手动配置,发布时会自动填充到 tapdIdtapdid 参数。

⚠️ 重要

  • featureNo(功能编号):当项目有此参数时必填,需由用户提供
  • envNo(环境编号):部分项目需要,需由用户提供

支持的参数类型

参数类型 说明 交互方式
StringParameterDefinition 文本输入 直接输入或回车使用默认值
ChoiceParameterDefinition 下拉选择 显示选项列表,输入编号选择
PT_CHECKBOX 复选框多选 显示选项列表,输入逗号分隔的编号
BooleanParameterDefinition 布尔值 y/n 选择
WReadonlyStringParameterDefinition 只读参数 自动使用,不可修改

常见项目类型

详细项目参数参考:参见 projects.md

1. PcFeatureTest (测试环境发布)

用途:使用标签发布到测试环境

关键参数

  • repoTag:发布标签(如 pc-t2025.53.19
  • tapdId:TAPD 需求 ID(自动从分支名解析)
  • featureNo功能编号(必填),需用户提供
  • buildEnv:固定为 test

示例

python scripts/jenkins_deploy.py \
  PcFeatureTest \
  --trigger-only \
  --params '{"repoTag":"pc-f2026.05.48","tapdId":"1167459320001118371","featureNo":"1122044681001112866"}'

2. staticPcOwn (开发环境发布)

用途:使用分支发布到开发环境

关键参数

  • repoBranch:发布分支(如 hotfix/xxx-1167459320001118371
  • dockerTag:Docker 镜像标签(默认 latest
  • buildEnv:固定为 dev

示例

python scripts/jenkins_deploy.py staticPcOwn

3. static-mf-deepseek (微服务发布)

用途:微服务项目发布,支持多区域部署

关键参数

  • projectRootDir:项目子目录(如 packages/mf-deepseek
  • deployZone:部署区域(复选框:primary / standby
  • repoBranch:发布分支

示例

python scripts/jenkins_deploy.py static-mf-deepseek

缓存机制

缓存位置: scripts/cache/jobs.json

缓存策略:

  • 首次运行:从 Jenkins API 获取 542 个项目并缓存
  • 后续运行:直接使用缓存(速度快)
  • 强制刷新:使用 --refresh 参数

手动清除缓存:

rm scripts/cache/jobs.json

支持的 Jenkins 环境

环境 Dev Test
abc-his
abc-bis
abc-cooperation
abc-global
abc-oa
mira

错误处理

场景 处理方式
未配置认证 提示设置 JENKINS_USERJENKINS_TOKEN
项目不存在 列出可用项目
缺少 featureNo 如果项目有此参数,必须提示用户提供
构建失败 显示构建 URL 和日志链接
参数验证失败 提示正确格式
网络超时 提示检查网络连接

触发关键词

Jenkins、发布、部署、构建、Deploy、Build、CI/CD