操作
機能 #290
未完了テンプレート拡充: インフラ変更とリリース管理テンプレートの追加
ステータス:
新規
優先度:
通常
担当者:
-
開始日:
2025-06-06
期日:
進捗率:
0%
予定工数:
説明
開発タスク起票テンプレート¶
1. 前回開発進捗確認¶
- 関連チケット番号:#287(MCPツール改修: チケット起票テンプレート機能の実装)
- 前回の達成状況:基本的なテンプレート機能の実装が完了
- 残された課題:テンプレート種類の拡充とUI改善
2. 切り戻し準備¶
- 最新バックアップ日時:2025-06-07 00:42:00
- バックアップ場所:/root/redmine-mcp (feature/ticket-templates ブランチ)
- 復元手順の確認:完了 [x]
3. ゴール確認¶
- 実装する機能:インフラ変更用とリリース管理用のテンプレート追加
- 期待される成果:
- より多様なタスクタイプに対応したテンプレート環境の提供
- インフラ変更とリリースプロセスの標準化
- 完了条件:新テンプレートが作成され、コマンドから利用可能になる
4. 前提確認¶
インフラ構成¶
- VPS-root構成状態:Ubuntu 24.04.2 LTS
- 動作中コンテナ:redmine-mcp, redmine-prod
- ネットワーク構成:DockerCompose+Nginx+SNI方式のマルチドメイン
バージョン管理¶
- Gitリポジトリ:/root/redmine-mcp
- ブランチ戦略:feature/ticket-templates から feature/additional-templates に分岐
- 現在のブランチ:feature/ticket-templates
関連リソース¶
- RedmineMCP関連チケット:#287, #289
- MCP設定状況:チケット作成コマンドが正常に動作
- 参照する仕様書:既存テンプレート仕様
5. 開発方針¶
- アプローチ方法:
- 既存テンプレートの構造を参考に、新しいテンプレートを作成
- テンプレート選択機能の拡充
- 使用技術・フレームワーク:
- Markdown形式のテンプレート
- Ruby(テンプレート管理スクリプト)
- 開発環境構築手順:
- feature/ticket-templates ブランチをベースに新ブランチを作成
- templates ディレクトリに新しいテンプレートファイルを追加
6. 設計¶
機能設計¶
- 実装する機能の詳細:
- インフラ変更用テンプレート:インフラストラクチャ変更に関する情報を網羅
- リリース管理用テンプレート:リリースプロセスとバージョン管理情報を記録
- 処理フロー:既存の処理フローを活用(テンプレート読み込み→チケット作成→子チケット分割)
関数定義¶
既存の関数を再利用し、新たな関数定義は不要。
データベース¶
- テーブル定義:変更なし
- スキーマ変更:なし
7. 詳細設計¶
- 実装方法:新しいMarkdownテンプレートファイルの作成
- 対象ファイル:
- /root/redmine-mcp/mcp-redmine/templates/infrastructure_change.md
- /root/redmine-mcp/mcp-redmine/templates/release_management.md
- 作成・更新箇所:新規テンプレートファイルの作成のみ
- コード構造:変更なし
8. 試験仕様¶
- ユースケース:
- インフラ変更用テンプレートを使用したチケット作成
- リリース管理用テンプレートを使用したチケット作成
- テストデータ:
- テストチケットのタイトルと説明
- テストパターン:
- mcp-redmine-ticket "テスト: インフラ変更" infrastructure_change.md
- mcp-redmine-ticket "テスト: リリース管理" release_management.md
- 実施方法:コマンドラインからの実行
- 期待結果:テンプレートが適用されたチケットが作成される
9. デプロイ方法¶
- デプロイ手順:
- 新テンプレートファイルを作成
- git add, commit, push で変更をコミット
- 本番環境にmerge
- 必要な環境変更:なし
- ロールバック手順:git checkout で前のコミットに戻す
10. 成果物と残課題¶
- 作成する成果物リスト:
- infrastructure_change.md テンプレート
- release_management.md テンプレート
- 仕様書更新箇所:README.mdに新テンプレートの情報を追加
- 残課題と対応方法:
- UIからのテンプレート選択機能(別チケットで対応)
- 次タスクの開発指示:
- WebUIからのテンプレート管理機能の開発
タスク管理¶
- 担当者:システム管理者
- 優先度:中
- 開始予定日:2025-06-10
- 完了予定日:2025-06-12
- 工数見積:1人日
コミュニケーション¶
- 進捗報告方法:Redmineチケットへのコメント
- レビュアー:開発チーム
- 関係者:開発チーム全員
Redmine Admin さんが1日前に更新
作業指示:テンプレート拡充の実装¶
RedmineMCPのチケット起票テンプレート機能に、インフラ変更用とリリース管理用のテンプレートを追加する作業を進めてください。基本的なテンプレート機能は既に実装済み(#287)で、必要なバグ修正も完了しています(#289, #293)。
作業手順¶
-
新ブランチの作成
cd /root/redmine-mcp git checkout feature/ticket-templates git pull git checkout -b feature/additional-templates
-
インフラ変更用テンプレートの作成
-
/root/redmine-mcp/mcp-redmine/templates/infrastructure_change.md
ファイルを作成 - 以下の項目を含めること:
- 変更概要(目的、範囲、期待される効果)
- リスク評価(潜在的な影響、ダウンタイム、復旧計画)
- 変更前チェックリスト(バックアップ、通知、テスト環境での検証)
- 実施手順(詳細な手順、タイムライン)
- ロールバック手順(問題発生時の対応)
- 変更後の確認項目(稼働確認、モニタリング)
- レビュー(変更の成果、学習点、次回への改善)
-
-
リリース管理用テンプレートの作成
-
/root/redmine-mcp/mcp-redmine/templates/release_management.md
ファイルを作成 - 以下の項目を含めること:
- リリース情報(バージョン、日時、対象環境)
- 変更内容(新機能、改善点、修正されたバグ)
- 前提条件(依存関係、環境要件)
- リリース手順(デプロイ手順、データマイグレーション)
- テスト計画(テスト項目、期待される結果)
- コミュニケーション計画(通知対象、タイミング、内容)
- ロールバック計画(問題発生時の対応)
- リリース後のモニタリング計画
-
-
テンプレート選択ロジックの拡張
- 新しいテンプレートをコマンドから選択できるようにする
-
/root/redmine-mcp/mcp-redmine/mcp_redmine_template_manager.rb
の修正は不要(既存のロジックで対応可能)
-
READMEの更新
-
/root/redmine-mcp/mcp-redmine/README.md
を更新し、新しいテンプレートの説明と使用方法を追加
-
-
テスト
- 各新テンプレートを使用してテストチケットを作成
-
mcp-redmine-ticket "テスト: インフラ変更テンプレート" infrastructure_change.md mcp-redmine-ticket "テスト: リリース管理テンプレート" release_management.md
-
変更のコミット
git add . git commit -m 'テンプレート拡充: インフラ変更とリリース管理テンプレートを追加 (#290)' git push origin feature/additional-templates
テンプレート作成のポイント¶
- 明確な構造: 各セクションを明確に区分し、## や ### で階層構造を表現する
- 適切な粒度: 詳細すぎず、かといって抽象的すぎない適切な粒度のテンプレートを作成
- 汎用性: 様々なタイプのインフラ変更やリリースに適用できる汎用的な内容にする
- ガイダンス: テンプレート内に入力のヒントや例を含める(実際の使用時に削除可能)
完了条件¶
- 2つの新テンプレートが作成され、正しくフォーマットされている
- テンプレートを使用してチケットが正常に作成できる
- READMEが更新され、新テンプレートの使用方法が記載されている
- 変更がGitにコミットされている
注意事項¶
- テンプレートは実際の運用を想定して作成すること
- 長すぎるセクションは子チケットに分割される可能性があるため、適切なサイズを心がける
- テンプレートのフォーマットは既存のテンプレートを参考にすること
完了したら、このチケットにコメントを追加し、テスト結果とともに報告してください。
操作