プロジェクト

全般

プロフィール

バグ #730

未完了

【機能】スクリプト実行・自動化システム (設計完了)

Redmine Admin さんが約6時間前に追加.

ステータス:
新規
優先度:
高め
担当者:
-
開始日:
2025-06-26
期日:
進捗率:

0%

予定工数:

説明

⚡ 機能概要

VPS-ROOT環境でのスクリプト実行・自動化・スケジュール管理機能

📋 実装対象関数 (16関数)

スクリプト実行関数

  • executeScript(scriptType, args?): スクリプト実行 (📋 設計完了)
  • executeVPSStatus(): VPS状況確認 (📋 設計完了)
  • executeComposeRestart(service?): Docker Compose再起動 (📋 設計完了)
  • executeNginxReload(): Nginx再読み込み (📋 設計完了)
  • executeQuickFix(): 自動修復実行 (📋 設計完了)

実行管理関数

  • getExecutionHistory(filters?): 実行履歴取得 (📋 設計完了)
  • cancelExecution(executionId): 実行キャンセル (⭕ 未着手)
  • getExecutionStatus(executionId): 実行状況確認 (📋 設計完了)
  • getExecutionOutput(executionId): 実行結果取得 (📋 設計完了)

スケジュール管理関数

  • scheduleScript(script): スクリプトスケジュール (⭕ 未着手)
  • updateSchedule(scheduleId, schedule): スケジュール更新 (⭕ 未着手)
  • deleteSchedule(scheduleId): スケジュール削除 (⭕ 未着手)
  • getScheduledScripts(): スケジュール一覧 (⭕ 未着手)

安全性チェック関数

  • validateScriptSafety(scriptContent): スクリプト安全性確認 (📋 設計完了)
  • checkScriptPermissions(scriptType, user): スクリプト実行権限 (📋 設計完了)
  • sanitizeScriptArgs(args): 引数サニタイズ (📋 設計完了)

🌐 API エンドポイント (14エンドポイント)

スクリプト実行

  • GET /api/v1/scripts/available - 利用可能スクリプト (📋 設計完了)
  • POST /api/v1/scripts/execute - スクリプト実行 (📋 設計完了)
  • POST /api/v1/scripts/execute/vps-status - VPS状況確認 (📋 設計完了)
  • POST /api/v1/scripts/execute/compose-restart - Docker Compose再起動 (📋 設計完了)
  • POST /api/v1/scripts/execute/nginx-reload - Nginx再読み込み (📋 設計完了)
  • POST /api/v1/scripts/execute/quick-fix - 自動修復 (📋 設計完了)

実行管理

  • GET /api/v1/scripts/executions - 実行履歴 (📋 設計完了)
  • GET /api/v1/scripts/executions/:id - 実行詳細 (📋 設計完了)
  • GET /api/v1/scripts/executions/:id/output - 実行結果 (📋 設計完了)
  • POST /api/v1/scripts/executions/:id/cancel - 実行キャンセル (⭕ 未着手)

スケジュール管理

  • GET /api/v1/scripts/schedules - スケジュール一覧 (⭕ 未着手)
  • POST /api/v1/scripts/schedules - スケジュール作成 (⭕ 未着手)
  • PUT /api/v1/scripts/schedules/:id - スケジュール更新 (⭕ 未着手)
  • DELETE /api/v1/scripts/schedules/:id - スケジュール削除 (⭕ 未着手)

🎛️ UI コンポーネント

  • ScriptSelectionGrid: スクリプト選択グリッド
  • ParameterInputForm: パラメータ入力フォーム
  • ExecuteScriptButton: スクリプト実行ボタン
  • ExecutionProgressBar: 実行進捗バー
  • ExecutionOutputTerminal: 実行結果ターミナル
  • ExecutionHistoryTable: 実行履歴テーブル
  • DownloadResultButton: 結果ダウンロードボタン

⚡ 対応スクリプト一覧

VPS管理スクリプト

  • vps_status: システム全体状況確認
  • vps_monitor: リアルタイム監視
  • vps_auto_maintenance: 自動メンテナンス
  • vps_safe_restart: 安全再起動

Docker管理スクリプト

  • compose_restart: Docker Compose再起動
  • docker_health: Dockerヘルスチェック
  • docker_cleanup: 不要リソース削除
  • container_logs: コンテナログ取得

Nginx管理スクリプト

  • nginx_reload: 設定再読み込み
  • nginx_test: 設定テスト
  • ssl_check: SSL証明書確認
  • access_log_analysis: アクセスログ解析

システム修復スクリプト

  • quick_fix: 一般的問題自動修復
  • disk_cleanup: ディスクスペース確保
  • service_recovery: サービス自動復旧

🛡️ セキュリティ機能

  • スクリプト実行権限: Operator以上
  • 引数サニタイゼーション: インジェクション攻撃防止
  • 実行タイムアウト: 無限ループ防止
  • ログ記録: 全実行履歴の監査ログ
  • 危険コマンド制限: rm -rf, dd 等の禁止

🎯 実装優先順序

  1. 基本スクリプト実行・履歴管理 (Phase 2)
  2. VPS管理スクリプト統合 (Phase 2)
  3. スケジュール実行・自動化 (Phase 3)

表示するデータがありません

他の形式にエクスポート: Atom PDF