@php $supportUpdateAuthUser = auth()->user(); $supportCanRunUpdate = $supportUpdateAuthUser && method_exists($supportUpdateAuthUser, 'hasAnyRole') && $supportUpdateAuthUser->hasAnyRole(['super-admin', 'admin', 'amministratore']); @endphp
Launcher esterno per update e sync Git
Usa questa pagina per lanciare aggiornamenti senza restare dentro la pagina completa Modifiche mentre Livewire e i file vengono riallineati. Il flusso principale da Gitea ora blocca nuove richieste, crea il backup pre-update, aggiorna DB e ricostruisce l'app prima di riaprire il nodo.
@if(! $supportCanRunUpdate)
I lanci update/sync sono abilitati solo per super-admin, admin e amministratore.
@endif
Refresh nodo da Gitea
Flusso consigliato per staging e nodi interni: backup, finestra protetta, sync Git, dipendenze, migrate e cache rebuild.
@if(! $this->ticketAttachmentMetadataReady)
Il nodo non ha ancora la colonna ticket_attachments.metadata. Finche non applichi le migration da questa pagina, GPS ed EXIF dei ticket non possono essere persistiti correttamente.
@endif
Aggiorna nodo completo da Gitea Aggiorna staging da Gitea Solo sync Git avanzata Aggiorna avanzamento refresh
Il pulsante Aggiorna staging da Gitea esegue il refresh completo del nodo: backup pre-update, maintenance mode per bloccare nuove operazioni utente, sync da Gitea, composer install, tentativo di build frontend se disponibile, migrate --force, pulizia cache, rebuild Blade e riapertura automatica del sistema.
@if($this->updateInProgress)
@else
@endif
Avanzamento refresh nodo {{ (int) $this->updateProgressPercent }}%
{{ $this->updateProgressMessage }}
@if(filled($this->lastUpdateIssue))
{{ $this->lastUpdateIssue }}
@endif
Stato nodo
Repository Git sorgente: {{ $this->gitWorkspacePath ?? '-' }}
Branch locale: {{ $this->gitCurrentBranch ?? '-' }}
Commit deploy/ultimo sync: {{ $this->gitCurrentCommit ?? '-' }}
Data commit deploy: {{ $this->gitCurrentCommitDate ?? '-' }}
@if($this->gitStatusUsesSyncSummary && filled($this->gitSourceCommit) && $this->gitSourceCommit !== $this->gitCurrentCommit)
Commit repository sorgente cache: {{ $this->gitSourceCommit }}
Data commit repository sorgente: {{ $this->gitSourceCommitDate ?? '-' }}
@endif
Commit remoto: {{ $this->gitRemoteCommit ?? '-' }}
Data commit remoto: {{ $this->gitRemoteCommitDate ?? '-' }}
Tracking: {{ $this->gitAheadBehind }}
Aggiornamenti da caricare sul nodo: {{ $this->gitWorkspacePath === null && filled($this->pendingGitPreviewIssue) ? 'n/d' : (int) $this->pendingGitCommitCount }}
Commit locali da inviare: {{ (int) $this->gitAheadCount }}
Working tree: {{ $this->gitWorkingTreeDirty ? 'sporco' : 'pulito' }}
Ultima sync Git: {{ $this->lastGitSyncAt ?? '-' }}
Ultimo update: {{ $this->lastUpdateAt ?? '-' }}
Il flusso consigliato del nodo e: push su Gitea, poi "Aggiorna staging da Gitea" da questa pagina. I dati utente non vengono distribuiti via Git: per questo il launcher esegue prima il backup pre-update e poi una finestra di maintenance per evitare scritture concorrenti durante il riallineamento del nodo.
@if(filled($this->pendingGitPreviewIssue))
{{ $this->pendingGitPreviewIssue }}
@endif
Aggiornamento distribution
Usare solo quando il manifest update sul server distribution e valido.
Applica migration Lancia aggiornamento Lancia aggiornamento (riserva) Check connettivita update optimize:clear Rebuild view
@if($this->updateInProgress)
@else
@endif
Avanzamento aggiornamento {{ (int) $this->updateProgressPercent }}%
{{ $this->updateProgressMessage }}
@if(filled($this->lastUpdateIssue))
{{ $this->lastUpdateIssue }}
@endif
Esito e backup
Exit update: {{ $this->lastUpdateExitCode !== null ? $this->lastUpdateExitCode : '-' }}
Exit sync Git: {{ $this->lastGitSyncExitCode !== null ? $this->lastGitSyncExitCode : '-' }}
Backup snapshot: {{ $this->latestBackupSummary['snapshot_id'] ?? '-' }}
Backup creato il: {{ $this->latestBackupSummary['created_at'] ?? '-' }}
@if(filled($this->lastConnectivityCheckOutput))
Ultimo check connettivita
{{ $this->lastConnectivityCheckOutput }}
@endif