@@ -419,64 +419,6 @@ namespace :server do
419419 end
420420 end
421421
422- desc "指定したサーバーを再作成(削除して作成)"
423- task :recreate , [ :server_name ] => [ :check_api_credentials ] do |t , args |
424- server_name = args [ :server_name ]
425-
426- unless server_name
427- abort "❌ エラー: サーバー名が必要です\n " \
428- "使い方: rake server:recreate[coderdojo-japan]"
429- end
430-
431- puts "=" *SEPARATOR_WIDTH
432- puts "🔄 DojoPaaS サーバー再作成"
433- puts "=" *SEPARATOR_WIDTH
434- puts ""
435-
436- # 1. まず既存サーバーを検索
437- puts "📍 ステップ1: 既存サーバーの検索"
438- require_relative 'scripts/deploy'
439- require_relative 'scripts/sakura_server_user_agent'
440-
441- # 初期化パラメータとAPIクライアントのセットアップ
442- cli = CoderDojoSakuraCLI . new ( [ ] )
443- request_params = cli . send ( :perform_init_params )
444- ssua = SakuraServerUserAgent . new ( **request_params )
445-
446- # 既存サーバーを検索
447- servers = ssua . get_servers ( ) [ 'Servers' ]
448- existing_server = servers . find { |s | s [ 'Name' ] == server_name }
449-
450- if existing_server
451- ip_address = existing_server [ 'Interfaces' ] . first [ 'IPAddress' ]
452- puts " ✅ 既存サーバーが見つかりました"
453- puts " - サーバー名: #{ server_name } "
454- puts " - IPアドレス: #{ ip_address } "
455- puts ""
456-
457- # 2. サーバー削除
458- puts "📍 ステップ2: サーバーの削除"
459- puts " 削除実行のため、rake server:execute_deletion を使用してください:"
460- puts " rake \" server:execute_deletion[#{ ip_address } ,true]\" "
461- puts ""
462- puts " 削除完了後、以下のコマンドで再作成:"
463- puts " rake \" server:create[#{ server_name } ]\" "
464- else
465- puts " ℹ️ サーバーが存在しません。新規作成します。"
466- puts ""
467-
468- # 3. サーバー作成
469- puts "📍 ステップ3: サーバーの新規作成"
470- success = cli . create_single_server ( server_name )
471-
472- if success
473- puts "✅ 再作成完了"
474- else
475- puts "❌ 作成に失敗しました"
476- exit 1
477- end
478- end
479- end
480422end
481423
482424# ヘルパーメソッド(将来の拡張用に保持)
0 commit comments