Skip to content

Rename CLI executable to managedbootstrapinstall.exe#8

Merged
rodchristiansen merged 2 commits into
mainfrom
rename-managedbootstrapinstall
Jun 22, 2026
Merged

Rename CLI executable to managedbootstrapinstall.exe#8
rodchristiansen merged 2 commits into
mainfrom
rename-managedbootstrapinstall

Conversation

@rodchristiansen

Copy link
Copy Markdown
Contributor

What

Hard-cut rename of the Windows CLI executable installapplications.exemanagedbootstrapinstall.exe.

Changes

  • BootstrapMate.csproj AssemblyName (root driver of the exe name)
  • BootstrapMateConstants.CliExecutableName, Program.cs usage/help/process-path text
  • build.ps1 published-exe path literals
  • WiX Product.wxs: File Source, RemoveFile, self-heal scheduled-task command, prose comments; adds a RemoveFile that sweeps the legacy installapplications.exe on upgrade (hard cut)
  • BootstrapMate.Installer.wixproj existence-check
  • README usage + CI/release workflow step names/copies (upstream credit links to macadmins/installapplications and rodchristiansen/installapplications left intact)

Notes / coordination

  • Intune detection is registry-based (HKLM\SOFTWARE\BootstrapMate\Version), so the exe rename causes no detection churn.
  • Ordering: this must merge + cut a release before the Cimian cimian-bootstrap-mgmt.yml change, which extracts/re-signs/repacks this MSI and keys its bin/app split off the exe filename. The pipeline PR bumps bootstrapMateTag to this release.
  • Not build-verified locally: net10.0-windows self-contained + WiX can't cross-build on macOS. CI builds it on a Windows runner.

Part of the cross-repo installapplicationsmanagedbootstrapinstall switch.

…all.exe

- csproj AssemblyName drives the new exe name
- BootstrapMateConstants.CliExecutableName, Program.cs usage/help text
- build.ps1 published-exe paths
- WiX: File Source, RemoveFile, self-heal scheduled task command, wixproj existence check; adds a RemoveFile sweeping the legacy installapplications.exe on upgrade (hard cut)
- README usage + CI/release workflow steps (upstream credit links to macadmins/rodchristiansen installapplications left intact)

Registry detection (HKLM\SOFTWARE\BootstrapMate\Version) is unchanged, so no Intune detection churn. Must release before the Cimian bootstrap pipeline change that repacks this MSI.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Hard rename of the Windows CLI executable from installapplications.exe to managedbootstrapinstall.exe, updating build/publish tooling, installer packaging, and documentation so the new binary name is consistently produced and referenced.

Changes:

  • Renamed the CLI output binary via AssemblyName and updated runtime/help text to the new executable name.
  • Updated build scripts and GitHub Actions workflows to publish/copy the renamed executable.
  • Updated WiX installer inputs and upgrade cleanup behavior for the renamed executable.

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/BootstrapMate.Core/BootstrapMateConstants.cs Updates the shared constant for the CLI executable filename.
README.md Updates usage examples and packaging documentation to reference the renamed executable.
Program.cs Updates elevation restart path and help/usage text to the renamed executable.
installer/Product.wxs Updates MSI payload source and scheduled-task command to the renamed executable; adds legacy cleanup.
installer/BootstrapMate.Installer.wixproj Updates pre-build existence checks to the renamed executable filename.
build.ps1 Updates publish output checks and test invocation paths to the renamed executable.
BootstrapMate.csproj Renames output binary via AssemblyName.
.github/workflows/release.yml Updates workflow step labels and artifact copy paths for the renamed executable.
.github/workflows/ci.yml Updates workflow step label for the renamed executable build.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread README.md Outdated
Comment on lines +82 to +86
# Run with a manifest URL
.\publish\x64\installapplications.exe --url "https://your-domain.com/bootstrap/management.json"
.\publish\x64\managedbootstrapinstall.exe --url "https://your-domain.com/bootstrap/management.json"

# Check status (useful for troubleshooting)
.\publish\x64\installapplications.exe --status
.\publish\x64\managedbootstrapinstall.exe --status
Comment thread README.md Outdated
Comment on lines +88 to +89
# Clear status (for testing)
.\publish\x64\installapplications.exe --clear-status
.\publish\x64\managedbootstrapinstall.exe --clear-status
Comment thread installer/Product.wxs
Comment on lines +45 to +48
<File Id="BootstrapMateExe" Source="$(var.BIN_DIR)\managedbootstrapinstall.exe" KeyPath="yes" Vital="yes" />
<RemoveFile Id="RemoveOldExecutable" Name="managedbootstrapinstall.exe" On="both" />
<!-- Hard cut: sweep the legacy installapplications.exe left by pre-rename installs -->
<RemoveFile Id="RemoveLegacyExecutable" Name="installapplications.exe" On="both" />
…RemoveFile

- README Quick Start now points at publish\executables\x64 (the layout build.ps1 actually produces), not publish\x64
- Product.wxs: remove the RemoveFile targeting the component's own managedbootstrapinstall.exe (the File table removes it automatically); keep only the legacy installapplications.exe sweep
@rodchristiansen

Copy link
Copy Markdown
Contributor Author

Addressed Copilot review in 1f8cbc8:

  • README Quick Start paths corrected to publish\executables\x64 (the layout build.ps1 produces).
  • Product.wxs: dropped the RemoveFile targeting the component's own managedbootstrapinstall.exe (File table removes it automatically); kept only the legacy installapplications.exe sweep.

@rodchristiansen rodchristiansen merged commit 0d9a0f9 into main Jun 22, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants