vPOD: Reprovision also wipes the installed-apps store
The UI's Reprovision button only dropped the session key; the console-driven ClearStore was the only path that cleared LaunchApps.json. Both now share VirtualLauncher.WipeApps, so Reprovision = fresh pod (key + app registry gone, beacon mode; extracted Games\ files stay, as on a real pod). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -87,10 +87,12 @@ assigned network config is shown in the window but never applied):
|
|||||||
and starts the launcher RPC. The pod row goes healthy (`Idle [<n> ms]`).
|
and starts the launcher RPC. The pod row goes healthy (`Idle [<n> ms]`).
|
||||||
|
|
||||||
The key persists in `%LocalAppData%\vPOD\TeslaKeyStore.key` (launcher format),
|
The key persists in `%LocalAppData%\vPOD\TeslaKeyStore.key` (launcher format),
|
||||||
so provisioning is one-time. **Reprovision** drops the key and returns to
|
so provisioning is one-time. **Reprovision** resets to a fresh pod — drops the
|
||||||
beacon mode — pair it with deleting the pod in Manage Site (the console's
|
key, clears the installed-apps store (`LaunchApps.json`) and returns to beacon
|
||||||
**Reconfigure…** does both ends automatically: its `ClearStore` makes vPOD
|
mode — pair it with deleting the pod in Manage Site (the console's
|
||||||
drop the key and beacon again).
|
**Reconfigure…** does both ends automatically: its `ClearStore` makes vPOD do
|
||||||
|
the same wipe and beacon again). Extracted packages under `Games\` are left on
|
||||||
|
disk either way.
|
||||||
|
|
||||||
### Product deployments
|
### Product deployments
|
||||||
|
|
||||||
|
|||||||
@@ -632,10 +632,13 @@ internal sealed class VPodForm : Form
|
|||||||
mRpcStatusLabel.ForeColor = Color.Gray;
|
mRpcStatusLabel.ForeColor = Color.Gray;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>Drops the session key and re-enters provisioning — from the UI
|
/// <summary>Drops the session key, clears the installed-apps store and
|
||||||
/// button, or when the console's Reconfigure clears our store.</summary>
|
/// re-enters provisioning — from the UI button, or when the console's
|
||||||
|
/// Reconfigure clears our store. (Fresh-pod state; extracted Games\ files
|
||||||
|
/// are left on disk.)</summary>
|
||||||
private void DropKeyAndReprovision()
|
private void DropKeyAndReprovision()
|
||||||
{
|
{
|
||||||
|
mLauncher.WipeApps();
|
||||||
mLauncher.DeleteKey();
|
mLauncher.DeleteKey();
|
||||||
mRpcServer.Stop();
|
mRpcServer.Stop();
|
||||||
mProvisioning.Stop();
|
mProvisioning.Stop();
|
||||||
|
|||||||
@@ -300,6 +300,15 @@ internal sealed class VirtualLauncher
|
|||||||
/// so re-entering provisioning (beacon mode) is what makes Reconfigure completable
|
/// so re-entering provisioning (beacon mode) is what makes Reconfigure completable
|
||||||
/// without the real pod's reboot-with-DHCP step.</summary>
|
/// without the real pod's reboot-with-DHCP step.</summary>
|
||||||
public void ClearStore()
|
public void ClearStore()
|
||||||
|
{
|
||||||
|
WipeApps();
|
||||||
|
Log?.Invoke("ClearStore: installed apps wiped; dropping session key to re-enter provisioning.");
|
||||||
|
ReprovisionRequested?.Invoke();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>Clears the installed/launched app registries (LaunchApps.json) —
|
||||||
|
/// the store-wipe half of ClearStore, also used by the UI's Reprovision.</summary>
|
||||||
|
public void WipeApps()
|
||||||
{
|
{
|
||||||
lock (mLock)
|
lock (mLock)
|
||||||
{
|
{
|
||||||
@@ -307,9 +316,7 @@ internal sealed class VirtualLauncher
|
|||||||
mLaunchedApps.Clear();
|
mLaunchedApps.Clear();
|
||||||
SaveApps();
|
SaveApps();
|
||||||
}
|
}
|
||||||
Log?.Invoke("ClearStore: installed apps wiped; dropping session key to re-enter provisioning.");
|
|
||||||
AppsChanged?.Invoke();
|
AppsChanged?.Invoke();
|
||||||
ReprovisionRequested?.Invoke();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ---- install progress (InitiateInstallProduct / GetOutOfBandProgress) ----
|
// ---- install progress (InitiateInstallProduct / GetOutOfBandProgress) ----
|
||||||
|
|||||||
Reference in New Issue
Block a user