Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add optional configuration steps to .msi installer #348

Merged
merged 1 commit into from
Oct 25, 2022

Conversation

thenextman
Copy link
Member

@thenextman thenextman commented Oct 24, 2022

Adds the basic configuration options from Devolutions Server Console directly to the Devolutions Gateway installer.

Customization via the installer is only available for new installs, and only if the user has PowerShell 5.1 at least. To configure an existing installation using the installer, the user must uninstall first before re-running the installer.

Options are configured in multiple steps with a summary page at the end. Each step is backed by a custom action that will perform basic validation as well as format the values into the necessary PowerShell commands.

Todo:

  • French localizations are needed for the new strings in the fr-FR.wxl. I'll need to validate that the new strings don't overflow any UI elements once this is done.

Notes:

  • The installer now displays the version number on the initial "Welcome" page
  • The installer will now query the service startup type of an existing Devolutions Gateway service, and re-apply it after repairing or upgrading. This prevents a bug where that setting could be lost if a user customized it directly post-installation. The check is made in user-mode; in general local users are able to query service configurations but there are circumstances (e.g. remote install) where this might not work, so the result is unchecked and remains a best effort.
  • To try and make things clearer, the .wxs now uses "namespaces" (as far as possible) for different IDs (P.* for properties, CA.* for custom actions, etc).
  • The .wxs file(s) are also refactored to try and include common parts together. The existing "InitConfig" action is switched to use WiX quiet execution and prevent it popping a console window when it runs.
  • The GitHub runners are switched to windows-2022 to allow using the v143 build tools (VS 2022). Note that msbuild is now required to be in your PATH to package Devolutions Gateway on Windows.

@thenextman thenextman requested a review from a team October 24, 2022 20:33
@thenextman thenextman temporarily deployed to build-and-publish October 24, 2022 21:14 Inactive
@thenextman thenextman temporarily deployed to build-and-publish October 24, 2022 21:14 Inactive
@thenextman thenextman temporarily deployed to build-and-publish October 25, 2022 00:06 Inactive
@thenextman thenextman temporarily deployed to build-and-publish October 25, 2022 00:06 Inactive
@thenextman thenextman temporarily deployed to build-and-publish October 25, 2022 00:06 Inactive
@thenextman thenextman temporarily deployed to build-and-publish October 25, 2022 00:06 Inactive
@thenextman thenextman marked this pull request as ready for review October 25, 2022 12:51
@thenextman thenextman requested a review from a team as a code owner October 25, 2022 12:51
Copy link
Member

@CBenoit CBenoit left a comment

Choose a reason for hiding this comment

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

Nice! 💯

ci/tlk.ps1 Show resolved Hide resolved
package/Windows/Actions/stdafx.cpp Outdated Show resolved Hide resolved
@thenextman thenextman force-pushed the installer-config-wip branch from 75fa98e to d7b77f7 Compare October 25, 2022 13:41
@thenextman thenextman force-pushed the installer-config-wip branch from f95eaad to 1c7bf39 Compare October 25, 2022 15:47
@thenextman thenextman enabled auto-merge (squash) October 25, 2022 15:51
@thenextman thenextman merged commit 6392ed9 into master Oct 25, 2022
@thenextman thenextman deleted the installer-config-wip branch October 25, 2022 16:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

4 participants