mirror of
https://github.com/tiennm99/coolify.git
synced 2026-04-17 17:21:04 +00:00
feat: add async prerequisite installation with retry logic and visual feedback
This commit enhances the boarding flow to handle prerequisite installation asynchronously with proper retry logic and user feedback: - Add retry mechanism with max 3 attempts for prerequisite installation - Display live installation logs via ActivityMonitor during boarding - Reset ActivityMonitor state when starting new activity to prevent stale event dispatching - Support dynamic header updates in ActivityMonitor - Add prerequisitesInstalled event handler to revalidate after installation completes - Extract validation logic into continueValidation() method for cleaner flow - Add unit tests for prerequisite installation logic This improves UX by showing users real-time progress during prerequisite installation and handles installation failures gracefully with automatic retries. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -5,7 +5,7 @@
|
||||
])>
|
||||
@if ($activity)
|
||||
@if (isset($header))
|
||||
<div class="flex gap-2 pb-2 flex-shrink-0">
|
||||
<div class="flex gap-2 pb-2 flex-shrink-0" @if ($isPollingActive) wire:poll.1000ms @endif>
|
||||
<h3>{{ $header }}</h3>
|
||||
@if ($isPollingActive)
|
||||
<x-loading />
|
||||
|
||||
@@ -546,6 +546,13 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@if ($prerequisiteInstallAttempts > 0)
|
||||
<div class="p-6 bg-neutral-50 dark:bg-coolgray-200 rounded-lg border border-neutral-200 dark:border-coolgray-400">
|
||||
<h3 class="font-bold text-black dark:text-white mb-4">Installing Prerequisites</h3>
|
||||
<livewire:activity-monitor header="Prerequisites Installation Logs" :showWaiting="false" />
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<x-slide-over closeWithX fullScreen>
|
||||
<x-slot:title>Server Validation</x-slot:title>
|
||||
<x-slot:content>
|
||||
|
||||
Reference in New Issue
Block a user