diff --git a/.github/workflows/reusable-docker.yml b/.github/workflows/reusable-docker.yml index 6b38bd9c..e7073c66 100644 --- a/.github/workflows/reusable-docker.yml +++ b/.github/workflows/reusable-docker.yml @@ -13,34 +13,42 @@ jobs: steps: - name: Checkout uses: actions/checkout@v4 + with: + fetch-depth: 0 # avoid shallow clone for GitVersion - name: Set up QEMU uses: docker/setup-qemu-action@v3 - name: Set up Buildx - uses: docker/setup-buildx-action@v2 - # with: - # buildkitd-flags: --debug + uses: docker/setup-buildx-action@v3 + + - name: Install GitVersion + uses: gittools/actions/gitversion/setup@v0 + with: + versionSpec: 5.x - - name: Check Version - id: check_version - shell: pwsh - run: ci/Test-Version.ps1 ${{ github.ref_name }} + - name: Determine Version + uses: gittools/actions/gitversion/execute@v0 + id: gitversion - name: Set Docker Tags id: meta uses: docker/metadata-action@v5 env: - SEMVER: type=semver,enable=${{ steps.check_version.outputs.match }},value=${{ github.ref_name }} + semver: >- + type=semver, + value=${{ steps.gitversion.outputs.semVer }} + prod: >- + enable=${{ steps.gitversion.outputs.preReleaseTag == '' }} with: images: | ${{ github.repository }} ghcr.io/${{ github.repository }} tags: | type=edge,branch=master - ${{ env.SEMVER }},pattern={{major}}.{{minor}}.{{patch}} - ${{ env.SEMVER }},pattern={{major}}.{{minor}} - ${{ env.SEMVER }},pattern={{major}} + ${{ env.semver }},pattern={{version}} + ${{ env.semver }},${{ env.prod }},pattern={{major}}.{{minor}} + ${{ env.semver }},${{ env.prod }},pattern={{major}} - name: Grab Artifacts uses: ./.github/actions/download-tar diff --git a/ci/Test-Version.ps1 b/ci/Test-Version.ps1 deleted file mode 100644 index c8e2be32..00000000 --- a/ci/Test-Version.ps1 +++ /dev/null @@ -1,12 +0,0 @@ -[CmdletBinding()] -param ( - [Parameter(Mandatory = $true)] - [string]$Version -) - -if ($Version -match 'v\d+\.\d+\.\d+') { - "match=true" >> $env:GITHUB_OUTPUT -} -else { - "match=false" >> $env:GITHUB_OUTPUT -} diff --git a/scripts/Prepare-Release.ps1 b/scripts/Prepare-Release.ps1 index b059f5bd..14dc0d0e 100644 --- a/scripts/Prepare-Release.ps1 +++ b/scripts/Prepare-Release.ps1 @@ -5,7 +5,7 @@ param ( $ErrorActionPreference = "Stop" -$version = if ($Version) { $Version } else { dotnet gitversion /showvariable SemVer } +$version = if ($Version) { $Version } else { dotnet gitversion /showvariable MajorMinorPatch } Update-Changelog -ReleaseVersion $version -LinkMode Automatic -LinkPattern @{ FirstRelease = "https://github.com/recyclarr/recyclarr/releases/tag/v{CUR}"