Releases: AspiringKnowItAll/MSI-Deployment-Script
Releases · AspiringKnowItAll/MSI-Deployment-Script
v1.1.2
What's Changed
- Added Detail Documentation by @AspiringKnowItAll in #4
- Enhance reachability checks and reliability in Install-RemoteMSI.ps1 by @AspiringKnowItAll in #5
Full Changelog: v1.1.1...v1.1.2
v1.1.1
What's Changed
- v1.1 by @AspiringKnowItAll in #1
- V1.1.1 by @AspiringKnowItAll in #3
New Contributors
- @AspiringKnowItAll made their first contribution in #1
Full Changelog: v1.1...v1.1.1
v1.1
Summary
This PR upgrades the deployment script from v1.0 (single-host MSI install) to v1.1 (single + batch MSI/MSIX deployment) with stronger validation, retry handling, and run-level reporting.
Key Differences (v1.0 → v1.1)
1) Scope and Execution Model
- v1.0: Single remote machine workflow.
- v1.1: Supports:
- Single-machine mode
- Batch mode from
.txt/.csvmachine lists
- Adds chunked/throttled execution for multi-machine deployments.
2) PowerShell Runtime Handling
- Adds PowerShell 7 detection/bootstrap logic.
- Supports relaunch into
pwshfor parallel execution support. - Optional install attempt for PowerShell 7 via configured Windows Update service.
- Falls back to sequential behavior when PS7 parallelism is unavailable.
3) Input and Validation
- Adds hostname sanitization (
ConvertTo-Hostname). - Adds batch file discovery in script directory.
- Batch parsing now ignores blank/commented lines and removes duplicates.
- Adds pre-validation pipeline for batch machines:
- AD lookup (with DNS fallback if AD module is unavailable)
- online/reachability checks
4) Credential Validation
- Adds probe-machine credential validation before wider execution.
- Verifies remote admin access early.
- Retains bounded credential retry attempts.
5) Resilience and Retry Behavior
- Adds transfer retry delays: 5s, 10s, 30s, 60s.
- Adds interactive retry options for failed machines:
- Retry failed machine
- Skip machine
- Abort run
- Retry rounds target only failures (not full batch replay).
6) Reboot Requirement Detection
- Improves logic from simple post-install check to before/after reboot state comparison plus MSI exit code handling (
1641,3010). - Reports reboot requirement attributable to the installation event.
7) Logging and Reporting
- v1.0: Primarily per-machine style outcomes.
- v1.1: Single aggregated run log (
Deployment_<timestamp>.log) with optional-RunLogPath. - Adds structured result objects and final summary output (status, attempts, exit, reboot flag, duration).
- Adds explicit failed-machine detail in summary logging.
8) Batch File Rerun Ergonomics
- Adds in-place batch file update:
- successful entries are commented out to simplify reruns.
9) New Parameters
-NonInteractive-RunLogPath
Operational Impact
- Expands from one-off remote installs to controlled batch deployment workflows.
- Improves reliability and troubleshooting via retries, validation, and richer logging.
- Reduces rerun effort with selective retry handling and success-marking in batch files.
v1.0
This release supports the single entry of a machine name for execution. Upon completion, the script ends.