execute($environment); echo "\nPipeline Result:\n"; echo " Pipeline ID: {$result->pipelineId->value}\n"; echo " Environment: {$result->environment->value}\n"; echo " Status: {$result->status->value}\n"; echo " Total Duration: {$result->totalDuration->toMilliseconds()}ms\n"; echo " Stages Executed: " . count($result->stageResults) . "\n\n"; echo "Stage Results:\n"; foreach ($result->stageResults as $stageResult) { $statusIcon = $stageResult->isSuccess() ? '✅' : '❌'; echo " {$statusIcon} {$stageResult->stage->value}: {$stageResult->duration->toMilliseconds()}ms\n"; if ($stageResult->output) { echo " Output: {$stageResult->output}\n"; } if ($stageResult->error) { echo " Error: {$stageResult->error}\n"; } } echo "\n"; if ($result->isSuccess()) { echo "✅ Pipeline completed successfully!\n"; } elseif ($result->isRolledBack()) { echo "⚠️ Pipeline was rolled back due to failure\n"; } else { echo "❌ Pipeline failed!\n"; } } catch (\Throwable $e) { echo "❌ Pipeline execution failed with exception:\n"; echo " {$e->getMessage()}\n"; echo " {$e->getFile()}:{$e->getLine()}\n"; } echo "\n"; // Test 2: Check status store echo "Test 2: Check Pipeline Status Store\n"; echo "------------------------------------\n"; try { if (isset($result)) { $status = $statusStore->getStatus($result->pipelineId); echo "Pipeline Status from Store:\n"; echo " Pipeline ID: {$status['pipeline_id']}\n"; echo " Environment: {$status['environment']}\n"; echo " Status: {$status['status']}\n"; echo " Stages:\n"; foreach ($status['stages'] as $stageName => $stageData) { echo " - {$stageName}: {$stageData['status']}\n"; } echo "\n"; } } catch (\Throwable $e) { echo "⚠️ Status store check failed: {$e->getMessage()}\n\n"; } // Test 3: Check pipeline history echo "Test 3: Check Pipeline History\n"; echo "-------------------------------\n"; try { $history = $historyService->getRecentPipelines(limit: 5); echo "Recent Pipelines: " . count($history) . "\n"; foreach ($history as $entry) { echo " - {$entry->pipelineId->value}: {$entry->status->value} ({$entry->environment->value})\n"; } echo "\n"; } catch (\Throwable $e) { echo "⚠️ History check failed: {$e->getMessage()}\n\n"; } echo "=== Test completed ===\n";