Commit Graph

85 Commits

Author SHA1 Message Date
Jordan Dominion 609fea8fde Remove unused install banner 2023-07-02 08:45:02 -04:00
Jordan Dominion 04e9ff306f Add uninstall check to winget 2023-07-02 07:52:36 -04:00
Jordan Dominion ef4ef59cf3 Fix push_manifest.ps1's parameter and default hash 2023-07-02 07:52:35 -04:00
Jordan Dominion d0d9e7b2ba Switch from .vdproj to .wixprojs
Wix is just better, it drives the fucking Visual Studio installer for gods' sakes. Thankfully, v4 is a whole lot better than v3 in that it's native dotnet tooling.

- Added ability to set base path for loading configuration files.
- Added Service command descriptions for help text.
- New `.exe` installer also installs dotnet dependencies.
- New `.msi` properly invokes configure, sets up and controls service, sends detach stop signal on upgrades, and uses ProgramData for configs with appropriate permissions.
- Remove .deb symlinks in favor of explicitly setting config directory.
- Adjust CI pipeline with new installer changes.
- Appropriately bump TGS migrator version.
2023-07-02 04:08:14 -04:00
Jordan Dominion e13aa79efe Add Wix dotnet-tools.json 2023-07-02 03:43:36 -04:00
Jordan Dominion 5d1e7bc27e Remove .NET 4.7.2 prereq from the installer 2023-06-28 20:48:16 -04:00
Jordan Dominion bbc17a62cf Publish configure project with runtime identifier
Give it its own directory too because it's chonky now
2023-06-27 18:33:21 -04:00
Jordan Dominion f79777daec Add missing silent flag to uninstall 2023-06-26 13:15:04 -04:00
Jordan Dominion f26e770730 Cleanup configure app 2023-06-26 11:21:15 -04:00
Jordan Dominion b7ac1f6238 Fix stylecop applying to test projects 2023-06-26 10:23:08 -04:00
Jordan Dominion ed0786ce65 Working winget push into deploy CI 2023-06-26 02:13:21 -04:00
Jordan Dominion 315a32ce73 Rename build_package.ps1 to build_msi.ps1 2023-06-26 00:12:54 -04:00
Jordan Dominion 3861d2db8d Disallow msi upgrades
See https://stackoverflow.com/a/14736573

Also set some additional .vdproj fields
2023-06-25 21:00:34 -04:00
Jordan Dominion 12e71119c5 Add missing restore to packaging script 2023-06-25 21:00:34 -04:00
Jordan Dominion 3d17597ddc We should now be implicitly upgradable in winget 2023-06-25 21:00:31 -04:00
Jordan Dominion 13d9a92abb Run configure app as winforms to be non-intrusive 2023-06-25 21:00:30 -04:00
Jordan Dominion 7fcc1e8208 Fix .vdproj ProductCode and ProductVersion
Also change installation folder name to just `tgstation-server`
2023-06-25 21:00:27 -04:00
Jordan Dominion a6c85366ae Add Windows service commands 128, 129, and 130
- 128 triggers a server shutdown.
- 129 and 130 are identical to SIGUSR1 and SIGUSR2 respectively, triggering a graceful shutdown and detaching shutdown respectively.
- These are implemented via pipes and are preferred to using the update path going forward. Should eventually replace the param entirely at the next possibility.
- New service params to detach and restart any running server as opposed to stopping entirely.
- Defer all service control to Service executable from Configure app.
- Console runner returns non-zero on error.
- Fix setting ACL of appsettings.Production.yml.
2023-06-25 21:00:26 -04:00
Jordan Dominion de7d93d218 Fix cd backup in build_package.ps1 2023-06-25 21:00:25 -04:00
Jordan Dominion 375895a5cd A bunch of .vdproj fixups
I can't read the diff because of this fucking project format
2023-06-25 12:37:09 -04:00
Jordan Dominion 4f0d3876e3 Set ACL info in configure script 2023-06-25 12:34:33 -04:00
Jordan Dominion ebadd12cc4 Use windows targeted net6.0 for configure project 2023-06-25 12:34:16 -04:00
Jordan Dominion 2760060969 dotnet commands here do not speed up the build 2023-06-25 12:33:19 -04:00
Jordan Dominion 1a472a4cf1 Add configure shortcut to start menu 2023-06-25 12:33:18 -04:00
Jordan Dominion cde647bc63 Fix .msi shortcut icon 2023-06-25 12:33:17 -04:00
Jordan Dominion 5202a79d81 Rename manifest.xml to uac_elevation_manifest.xml 2023-06-25 12:09:44 -04:00
Jordan Dominion 2c2797134d Fix .msi packaging failing due to non-existent dir 2023-06-25 10:35:32 -04:00
Jordan Dominion 8614b07a9e Start service if configured during installation 2023-06-25 10:02:13 -04:00
Jordan Dominion e5858d02f4 Enable (roughly) upgrading the installation 2023-06-24 11:02:10 -04:00
Jordan Dominion 15a996f785 Add .msi variables README.md 2023-06-24 09:48:37 -04:00
Jordan Dominion b2414fa92d Installer should now be x86 compatible 2023-06-24 09:32:18 -04:00
Jordan Dominion 55a7d656a9 Remove useless install folder 2023-06-24 09:29:25 -04:00
Jordan Dominion bc87686f97 Remove installer prequisites
- It's just a useless prompt
2023-06-24 09:28:23 -04:00
Jordan Dominion 8ee8baf897 Standalone .sln for .Msi project
Fixes it breaking all the other CI builds
2023-06-24 09:25:34 -04:00
Jordan Dominion 5f353b4e2b .msi + winget package initial support 2023-06-24 03:13:40 -04:00