From a614d0be543451285655c44c5b8fd64dcc8c1081 Mon Sep 17 00:00:00 2001 From: Aaron Feledy Date: Sun, 21 Apr 2024 16:46:00 -0400 Subject: [PATCH 1/4] Generate exe from ps1 in GHA --- .github/workflows/pr-windows-packaging.yml | 38 ++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 .github/workflows/pr-windows-packaging.yml diff --git a/.github/workflows/pr-windows-packaging.yml b/.github/workflows/pr-windows-packaging.yml new file mode 100644 index 0000000..f400a74 --- /dev/null +++ b/.github/workflows/pr-windows-packaging.yml @@ -0,0 +1,38 @@ +name: Package Windows Installer + + +on: + workflow_dispatch: + push: + paths: + - 'setup-lando.ps1' + pull_request: + paths: + - 'setup-lando.ps1' + +jobs: + build: + runs-on: windows-latest + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Install PS2EXE + run: Install-Module -Name ps2exe -Force -Scope CurrentUser + + - name: Convert PowerShell script to EXE + run: | + $scriptPath = "${{ github.workspace }}/setup-lando.ps1" + $outputPath = "${{ github.workspace }}/setup-lando.exe" + Invoke-ps2exe -inputFile $scriptPath -outputFile $outputPath + + - name: Upload EXE as artifact + uses: actions/upload-artifact@v4 + id: artifact-upload-step + with: + name: setup-lando-exe + path: ${{ github.workspace }}/setup-lando.exe + + - name: Output artifact ID + run: echo 'Artifact ID is ${{ steps.artifact-upload-step.outputs.artifact-url }}' \ No newline at end of file From 1bbbac962aea6b14ee2848d44b0e93749a199a0d Mon Sep 17 00:00:00 2001 From: Aaron Feledy Date: Sun, 21 Apr 2024 16:54:33 -0400 Subject: [PATCH 2/4] Test trigger --- .github/workflows/pr-windows-packaging.yml | 3 +-- setup-lando.ps1 | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pr-windows-packaging.yml b/.github/workflows/pr-windows-packaging.yml index f400a74..d272ffe 100644 --- a/.github/workflows/pr-windows-packaging.yml +++ b/.github/workflows/pr-windows-packaging.yml @@ -1,8 +1,7 @@ -name: Package Windows Installer +name: Windows Installer Packaging on: - workflow_dispatch: push: paths: - 'setup-lando.ps1' diff --git a/setup-lando.ps1 b/setup-lando.ps1 index 8f062a0..816aa3e 100755 --- a/setup-lando.ps1 +++ b/setup-lando.ps1 @@ -47,7 +47,7 @@ param( ) $LANDO_DEFAULT_MV = "3" -$LANDO_SETUP_PS1_URL = "https://get.lando.dev/setup-lando.ps1" +$LANDO_SETUP_PS1_URL = "https://raw.githubusercontent.com/lando/setup-lando/setup-windoze/setup-lando.ps1" $LANDO_SETUP_SH_URL = "https://get.lando.dev/setup-lando.sh" $LANDO_APPDATA = "$env:LOCALAPPDATA\Lando" From e9f4ff7da032e4e4e0cc62308ff193b4d8bbbd4b Mon Sep 17 00:00:00 2001 From: Aaron Feledy Date: Sun, 21 Apr 2024 17:00:37 -0400 Subject: [PATCH 3/4] Use powershell 5 --- .github/workflows/pr-windows-packaging.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/pr-windows-packaging.yml b/.github/workflows/pr-windows-packaging.yml index d272ffe..b8ac1b8 100644 --- a/.github/workflows/pr-windows-packaging.yml +++ b/.github/workflows/pr-windows-packaging.yml @@ -18,9 +18,11 @@ jobs: uses: actions/checkout@v4 - name: Install PS2EXE + shell: powershell run: Install-Module -Name ps2exe -Force -Scope CurrentUser - name: Convert PowerShell script to EXE + shell: powershell run: | $scriptPath = "${{ github.workspace }}/setup-lando.ps1" $outputPath = "${{ github.workspace }}/setup-lando.exe" From d1bc4b395b38c8eb4808f50e10339db1e6db66e2 Mon Sep 17 00:00:00 2001 From: Aaron Feledy Date: Sun, 21 Apr 2024 17:31:07 -0400 Subject: [PATCH 4/4] Target Windows versions later than 8 --- .github/workflows/pr-windows-packaging.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pr-windows-packaging.yml b/.github/workflows/pr-windows-packaging.yml index b8ac1b8..787625a 100644 --- a/.github/workflows/pr-windows-packaging.yml +++ b/.github/workflows/pr-windows-packaging.yml @@ -26,7 +26,7 @@ jobs: run: | $scriptPath = "${{ github.workspace }}/setup-lando.ps1" $outputPath = "${{ github.workspace }}/setup-lando.exe" - Invoke-ps2exe -inputFile $scriptPath -outputFile $outputPath + Invoke-ps2exe -inputFile $scriptPath -outputFile $outputPath -supportOS - name: Upload EXE as artifact uses: actions/upload-artifact@v4 @@ -35,5 +35,5 @@ jobs: name: setup-lando-exe path: ${{ github.workspace }}/setup-lando.exe - - name: Output artifact ID - run: echo 'Artifact ID is ${{ steps.artifact-upload-step.outputs.artifact-url }}' \ No newline at end of file + - name: Output artifact URL + run: echo 'Artifact URL is ${{ steps.artifact-upload-step.outputs.artifact-url }}' \ No newline at end of file