From a59a30f9055a94b3fd80f83f21277386fb64b445 Mon Sep 17 00:00:00 2001 From: Martin Wiethan <47688561+Marterich@users.noreply.github.com> Date: Fri, 28 Jun 2024 17:05:25 +0200 Subject: [PATCH] Modify Release Workflow (#2160) * Add pre-release functionality * Change Pre-Release Action Name * commit set prerelease to false on release --- .github/workflows/pre-release.yaml | 46 ++++++++++++++++++++++++++++++ .github/workflows/release.yaml | 5 +--- 2 files changed, 47 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/pre-release.yaml diff --git a/.github/workflows/pre-release.yaml b/.github/workflows/pre-release.yaml new file mode 100644 index 00000000..01b9a9f6 --- /dev/null +++ b/.github/workflows/pre-release.yaml @@ -0,0 +1,46 @@ +name: Pre-Release WinUtil + +on: + workflow_run: + workflows: ["Compile"] #Ensure Compile winget.ps1 is done + types: + - completed + workflow_dispatch: # Manual trigger added + +jobs: + build-runspace: + runs-on: windows-latest + outputs: + version: ${{ steps.extract_version.outputs.version }} + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + + - name: Extract Version from winutil.ps1 + id: extract_version + run: | + $version = '' + Get-Content ./winutil.ps1 -TotalCount 30 | ForEach-Object { + if ($_ -match 'Version\s*:\s*(\d{2}\.\d{2}\.\d{2})') { + $version = $matches[1] + echo "version=$version" >> $GITHUB_ENV + echo "::set-output name=version::$version" + break + } + } + if (-not $version) { + Write-Error "Version not found in winutil.ps1" + exit 1 + } + shell: pwsh + + - name: Create and Upload Release + id: create_release + uses: softprops/action-gh-release@v2 + with: + tag_name: ${{ steps.extract_version.outputs.version }} + name: Pre-Release ${{ steps.extract_version.outputs.version }} + files: ./winutil.ps1 + prerelease: true + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index fc3e679b..5bf217bb 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -1,10 +1,6 @@ name: Release WinUtil on: - workflow_run: - workflows: ["Compile"] #Ensure Compile winget.ps1 is done - types: - - completed workflow_dispatch: # Manual trigger added jobs: @@ -41,5 +37,6 @@ jobs: tag_name: ${{ steps.extract_version.outputs.version }} name: Release ${{ steps.extract_version.outputs.version }} files: ./winutil.ps1 + prerelease: false env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}