Generalize USMT Dash and add a containerized demo mode
Remove all environment-specific data and make the dashboard adoptable anywhere, then add a demo that runs the real PowerShell services. - Strip cached device data, internal knowledge-base articles and screenshots, server/site names and the old project notes; replace the knowledge base with generic sample articles and diagrams - Move every environment value into Config/usmt-dash.psd1 - Route all infrastructure access in the worker and Get-Software.ps1 through a provider (Providers/SCCM.ps1), with a config-driven asset inventory view instead of a hard-coded custom class - Add Providers/Demo.ps1: a deterministic simulated fleet whose migrations progress in real time, and Demo/New-DemoData.ps1 to seed it - Server: -Demo makes the API read-only; add get-config and get-logs; serve static files only from web/, Documentation/ and an allowlist of Data/ files with a path-traversal guard; gzip large responses - Mirror both services' console output to Data/Logs via a Write-Host proxy, and add a terminal panel to the dashboard that streams it - Demo sandbox (web/demo/demo.js): visitor changes to tags, articles and images are kept in the visitor's browser and echoed in the terminals; nothing a visitor does reaches the server - Vendor marked, highlight.js and html2pdf.js instead of loading CDNs - Dockerfile and compose file for hosting the demo (Coolify-ready)
This commit is contained in:
commit
1c531bc2ab
56 files changed
+10232
No files matched your search
@@ -0,0 +1,36 @@
|
||||
[[Blue:Start Here]]
|
||||
|
||||
# Using USMT Dash
|
||||
|
||||
USMT Dash tracks a Windows device-refresh project: which old (**source**) device is being replaced by which new (**destination**) device, and how far each migration has got.
|
||||
|
||||

|
||||
|
||||
## The Pages
|
||||
| Page | What it's for |
|
||||
|---|---|
|
||||
| **Tracked Devices** | Register devices under a *tag* (your name, a date batch, a department...). The worker only watches tagged devices. |
|
||||
| **My Workbench** | Personal stacks: paste the devices on your cart and see just those. Saved in your browser. |
|
||||
| **USMT Status** | Every tracked migration, grouped by status, with ping, free space and USMT log lines. |
|
||||
| **All Devices** | Compares source and destination software and lists *specialty* apps missing from the new device. |
|
||||
| **Custom View** | Build your own table: add, remove, resize, drag and filter any column. |
|
||||
| **Documentation** | This knowledge base. Articles named after an app are linked from that app in the software view. |
|
||||
|
||||
## Migration Status
|
||||

|
||||
|
||||
| Status | Meaning |
|
||||
|---|---|
|
||||
| Not Started | Association exists, no backup yet |
|
||||
| Backup In Progress | Scanstate log on the source is actively being written |
|
||||
| Backup Completed | Backup finished, waiting for the new device |
|
||||
| Restore In Progress | Loadstate log on the destination is active |
|
||||
| Completed | Restore finished successfully |
|
||||
| Not Associated | No computer association in ConfigMgr |
|
||||
| Skipped | The device's tag has **Skip USMT** ticked (inventory only) |
|
||||
|
||||
## Tips
|
||||
- Pair devices manually with `SOURCE, DESTINATION` on one line when there's no ConfigMgr association.
|
||||
- Click any device name for full details: location, users, hardware, AD groups.
|
||||
- **Copy Location Info** builds a ready-to-paste table for facilities or asset tickets.
|
||||
- In articles, `[[Copy:text]]` creates a click-to-copy link, and `[[Yellow:Label]]` adds a badge.
|
||||
Reference in new issue
Block a user