controller v0.49.0: slice 10 P2 activation — pending-drive detection + restart button
pendingActivationDrives() flags registered drives the agent shows attached but not live-mounted in the container; settings banner + "Újraindítás most" button → /api/storage/activate → agentapi.GuestReboot. Batches all pending into one restart. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -352,6 +352,15 @@ function pollUntilBack() {
|
||||
<a href="/settings/storage/attach" class="btn btn-sm btn-outline">🔗 Meglévő meghajtó csatolása</a>
|
||||
</div>
|
||||
|
||||
{{if .PendingDrives}}
|
||||
<div class="alert alert-warning" style="margin-top:1rem">
|
||||
<strong>{{len .PendingDrives}} meghajtó aktiválásra vár.</strong>
|
||||
Az újonnan csatolt adatmeghajtók a vendég rövid (~30 mp) újraindítása után válnak elérhetővé az alkalmazások számára.
|
||||
<div style="margin-top:.6rem"><button class="btn btn-sm btn-primary" id="activate-drives-btn" onclick="activatePendingDrives()">Újraindítás most (~30 mp)</button></div>
|
||||
<div id="activate-result" style="margin-top:.5rem"></div>
|
||||
</div>
|
||||
{{end}}
|
||||
|
||||
<div style="margin-top:1.5rem">
|
||||
<h4 style="margin-bottom:.25rem">Meghajtók (ügynök nézet)</h4>
|
||||
<p class="form-hint" style="margin-bottom:.75rem">A host-ügynök által észlelt meghajtók élő nézete. A meghajtó <strong>szerepkörét</strong> az ügynök saját vizsgálattal állapítja meg: a rendszer- és biztonsági-mentés meghajtók védettek (csak operátori aláírással módosíthatók), a felhasználói adatmeghajtókat Ön kezeli.</p>
|
||||
@@ -481,6 +490,16 @@ window.__registeredPaths=[{{range .StoragePaths}}{{if .Path}}"{{.Path}}",{{end}}
|
||||
location.reload();
|
||||
}catch(e){ alert('Hiba: '+e.message); }
|
||||
};
|
||||
// Activate pending drive binds by rebooting the guest (~30s). The reboot takes the controller down
|
||||
// too, so the fetch may not resolve — we reload after the restart window regardless.
|
||||
window.activatePendingDrives=function(){
|
||||
if(!confirm('A vendég újraindul (~30 másodperc). Eközben az alkalmazások és a vezérlőpult rövid időre nem elérhetők. Folytatja?')) return;
|
||||
var btn=document.getElementById('activate-drives-btn'); var out=document.getElementById('activate-result');
|
||||
if(btn) btn.disabled=true;
|
||||
if(out) out.innerHTML='<span class="form-hint">Újraindítás folyamatban… az oldal automatikusan újratöltődik.</span>';
|
||||
fetch('/api/storage/activate',{method:'POST',headers:Object.assign({'Content-Type':'application/json'},csrfHeaders())}).catch(function(){});
|
||||
setTimeout(function(){location.reload();}, 45000);
|
||||
};
|
||||
window.confirmEject=function(where){
|
||||
var name=where.replace(/^\/mnt\//,'');
|
||||
openConfirm({title:'Meghajtó leválasztása', mount:where, mountName:name,
|
||||
|
||||
Reference in New Issue
Block a user