-
Notifications
You must be signed in to change notification settings - Fork 16
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
Windows: install dotnet and latest wix #354
Conversation
3561082
to
ff3089d
Compare
Cirrus CI build successful. Found built image names and IDs:
|
@cevich @edsantiago containers/podman#22408 has passed CI but still pending review. Remind me, should I wait for that PR to merge first before merging this image update PR? |
I have a medium-high preference for merging an auto-imgs PR before a tool-that-uses-it PR, but as long as both get done shortly within each other I think it's OK |
ok, I'll set up a hold on the podman PR and remove it only after we have 1. LGTM there and 2. auto-img pr is merged. |
|
SGTM |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with some non-blocking comments.
# Install dotnet as that's the best way to install WiX 4+ | ||
# Choco does not support installing anything over WiX 3.14 | ||
Invoke-WebRequest -Uri https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.ps1 -OutFile dotnet-install.ps1 | ||
.\dotnet-install.ps1 -InstallDir 'C:\Program Files\dotnet' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would have installed it using winget
because it automatically adds dotnet
to the %PATH%
. Using the script works too, though, and there may be other reasons to choose it that I am not aware of.
What I have found is:
The intended use of the scripts is for Continuous Integration (CI) scenarios, where:
- The SDK needs to be installed without user interaction and without admin rights.
- The SDK installation doesn't need to persist across multiple CI runs.
The typical sequence of events:
. CI is triggered.
. CI installs the SDK using one of these scripts.
. CI finishes its work and clears temporary data including the SDK installation.
To set up a development environment or to run apps, use the installers rather than these scripts.
In the build_windows.md
we are suggesting to install dotnet using winget.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I pushed a separate commit here to use winget. If this works out, even better. Thanks.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Drive-by non-expert comment: Remember this is preparing a VM image to run CI w/o having to install anything during runtime. So the "typical sequence" isn't completely correct in this context. This makes me think that having %PATH%
all ready to go at CI runtime might be a good idea - it will simplify the CI scripts to which more developers are exposed.
(please take this comment with a grain of salt)
.\dotnet-install.ps1 -InstallDir 'C:\Program Files\dotnet' | ||
|
||
# Configure NuGet sources for dotnet to fetch wix (and other packages) from | ||
& 'C:\Program Files\dotnet\dotnet.exe' nuget add source https://api.nuget.org/v3/index.json -n nuget.org |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Locally, I didn't had to do that. dotnet tool install --global wix
worked right after dotnet
installation. No extra configuration of sources was required. That may be related to the use of winget instead of the pwsh script though.
win_images/win_packaging.ps1
Outdated
|
||
# Install WixToolset.Heat as we need the `heat` executable | ||
& 'C:\Program Files\dotnet\dotnet.exe' new console | ||
& 'C:\Program Files\dotnet\dotnet.exe' add package WixToolset.Heat |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, the two commands above were not required in my case. I could build the msi package without running them.
The chocolatey tool that was fetching us wix v3 can no longer be used to fetch wix v4+ so we had to switch to dotnet to fetch the latest wix. This commit builds the installer with wix v5. wix v5 is installed via the `dotnet` tool in the windows image itself at containers/automation_images#354. Going forward, the `dotnet` tool will also be used to build the installer. In the process, the wix v3 files were converted to wix v4+ using `wix convert` followed by manual modifications along with switch to wixproj builds with dotnet. Contributions from Mario Loriedo: - bundle setup update to wix5 - updates to build and release process scripts - small fixes to windows installer theme Ref: https://github.com/lsm5/podman/pull/3/commits Resolves: RUN-2055 Co-authored-by: Mario Loriedo <mario.loriedo@gmail.com> Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
The chocolatey tool that was fetching us wix v3 can no longer be used to fetch wix v4+ so we had to switch to dotnet to fetch the latest wix. This commit builds the installer with wix v5. wix v5 is installed via the `dotnet` tool in the windows image itself at containers/automation_images#354. Going forward, the `dotnet` tool will also be used to build the installer. In the process, the wix v3 files were converted to wix v4+ using `wix convert` followed by manual modifications along with switch to wixproj builds with dotnet. Contributions from Mario Loriedo: - bundle setup update to wix5 - updates to build and release process scripts Ref: #3 - small fixes to windows installer theme Ref: #4 Resolves: RUN-2055 Co-authored-by: Mario Loriedo <mario.loriedo@gmail.com> Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
bf0bbcb
to
3ad8b77
Compare
Cirrus CI build successful. Found built image names and IDs:
|
The chocolatey tool that was fetching us wix v3 can no longer be used to fetch wix v4+ so we had to switch to dotnet to fetch the latest wix. This commit builds the installer with wix v5. wix v5 is installed via the `dotnet` tool in the windows image itself at containers/automation_images#354. Going forward, the `dotnet` tool will also be used to build the installer. In the process, the wix v3 files were converted to wix v4+ using `wix convert` followed by manual modifications along with switch to wixproj builds with dotnet. Contributions from Mario Loriedo: - bundle setup update to wix5 - updates to build and release process scripts Ref: #3 - small fixes to windows installer theme Ref: #4 Resolves: RUN-2055 Co-authored-by: Mario Loriedo <mario.loriedo@gmail.com> Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
wix3 is EOL and choco doesn't support installing wix > 3.14. So, this commit installs the `dotnet` runtime and uses dotnet to install the latest wix in the windows image. Also remove pasta package timebomb from debian packaging. Resolves: RUN-2055 Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
I'm gonna merge this soon after this passes. |
Cirrus CI build successful. Found built image names and IDs:
|
The chocolatey tool that was fetching us wix v3 can no longer be used to fetch wix v4+ so we had to switch to dotnet to fetch the latest wix. This commit builds the installer with wix v5. wix v5 is installed via the `dotnet` tool in the windows image itself at containers/automation_images#354. Going forward, the `dotnet` tool will also be used to build the installer. In the process, the wix v3 files were converted to wix v4+ using `wix convert` followed by manual modifications along with switch to wixproj builds with dotnet. Contributions from Mario Loriedo: - bundle setup update to wix5 - updates to build and release process scripts Ref: #3 - small fixes to windows installer theme Ref: #4 Resolves: RUN-2055 Co-authored-by: Mario Loriedo <mario.loriedo@gmail.com> Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
FWIW, this got a bunch of "Context canceled" failures. I got that earlier today and had to repush because something-something images had already been tagged. I think it's a Cirrus issue. All the jobs got retried here and passed. Diff against Chris's PR from yesterday:
|
Looks like Win Installer is broken: containers/podman#22726 |
The chocolatey tool that was fetching us wix v3 can no longer be used to fetch wix v4+ so we had to switch to dotnet to fetch the latest wix. This commit builds the installer with wix v5. wix v5 is installed via the `dotnet` tool in the windows image itself at containers/automation_images#354. Going forward, the `dotnet` tool will also be used to build the installer. In the process, the wix v3 files were converted to wix v4+ using `wix convert` followed by manual modifications along with switch to wixproj builds with dotnet. Contributions from Mario Loriedo: - bundle setup update to wix5 - updates to build and release process scripts Ref: #3 - small fixes to windows installer theme Ref: #4 Resolves: RUN-2055 Co-authored-by: Mario Loriedo <mario.loriedo@gmail.com> Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
The chocolatey tool that was fetching us wix v3 can no longer be used to fetch wix v4+ so we had to switch to dotnet to fetch the latest wix. This commit builds the installer with wix v5. wix v5 is installed via the `dotnet` tool in the windows image itself at containers/automation_images#354. Going forward, the `dotnet` tool will also be used to build the installer. In the process, the wix v3 files were converted to wix v4+ using `wix convert` followed by manual modifications along with switch to wixproj builds with dotnet. Contributions from Mario Loriedo: - bundle setup update to wix5 - updates to build and release process scripts Ref: #3 - small fixes to windows installer theme Ref: #4 Resolves: RUN-2055 Co-authored-by: Mario Loriedo <mario.loriedo@gmail.com> Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
The chocolatey tool that was fetching us wix v3 can no longer be used to fetch wix v4+ so we had to switch to dotnet to fetch the latest wix. This commit builds the installer with wix v5. wix v5 is installed via the `dotnet` tool in the windows image itself at containers/automation_images#354. Going forward, the `dotnet` tool will also be used to build the installer. In the process, the wix v3 files were converted to wix v4+ using `wix convert` followed by manual modifications along with switch to wixproj builds with dotnet. Contributions from Mario Loriedo: - bundle setup update to wix5 - updates to build and release process scripts Ref: #3 - small fixes to windows installer theme Ref: #4 - Better win-installer sidebar logo Ref: #5 Resolves: RUN-2055 Co-authored-by: Mario Loriedo <mario.loriedo@gmail.com> Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
The chocolatey tool that was fetching us wix v3 can no longer be used to fetch wix v4+ so we had to switch to dotnet to fetch the latest wix. This commit builds the installer with wix v5. wix v5 is installed via the `dotnet` tool in the windows image itself at containers/automation_images#354. Going forward, the `dotnet` tool will also be used to build the installer. In the process, the wix v3 files were converted to wix v4+ using `wix convert` followed by manual modifications along with switch to wixproj builds with dotnet. The GitHub Action to upload windows installer now builds the installer using winmake.ps1. Contributions from Mario Loriedo: - bundle setup update to wix5 - updates to build and release process scripts Ref: #3 - small fixes to windows installer theme Ref: #4 - Better win-installer sidebar logo Ref: #5 Resolves: RUN-2055 Co-authored-by: Mario Loriedo <mario.loriedo@gmail.com> Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
The chocolatey tool that was fetching us wix v3 can no longer be used to fetch wix v4+ so we had to switch to dotnet to fetch the latest wix. This commit builds the installer with wix v5. wix v5 is installed via the `dotnet` tool in the windows image itself at containers/automation_images#354. Going forward, the `dotnet` tool will also be used to build the installer. In the process, the wix v3 files were converted to wix v4+ using `wix convert` followed by manual modifications along with switch to wixproj builds with dotnet. The GitHub Action to upload windows installer now builds the installer using winmake.ps1. Contributions from Mario Loriedo: - bundle setup update to wix5 - updates to build and release process scripts Ref: #3 - small fixes to windows installer theme Ref: #4 - Better win-installer sidebar logo Ref: #5 Resolves: RUN-2055 Co-authored-by: Mario Loriedo <mario.loriedo@gmail.com> Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
wix3 is EOL and choco doesn't support installing wix > 3.14.
So, this commit installs the
dotnet
runtime and uses dotnet to installthe latest wix in the windows image.
Resolves: RUN-2055