diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml index d93f73f10..594aef9c7 100644 --- a/.github/workflows/cicd.yml +++ b/.github/workflows/cicd.yml @@ -45,9 +45,21 @@ jobs: key: ${{ matrix.os }}-nuget-${{ hashFiles('Directory.Packages.props') }} path: ~/.nuget/packages + # - name: Free Disk Space + # run: Remove-Item '/usr/local/lib/android', '/opt/ghc', '/opt/hostedtoolcache/CodeQL' -ErrorAction SilentlyContinue -Recurse -Force # TODO: Split module tests across multiple runners (the Docker images require too much disk space) + # shell: pwsh + - name: Free Disk Space - run: Remove-Item -Recurse -Force '/usr/local/lib/android', '/opt/ghc', '/opt/hostedtoolcache/CodeQL' -ErrorAction SilentlyContinue # TODO: Split module tests across multiple runners (the Docker images require too much disk space) - shell: pwsh + uses: jlumbroso/free-disk-space@main + if: runner.os == 'Linux' + with: + tool-cache: true + android: true + dotnet: true + haskell: true + large-packages: true + docker-images: true + swap-storage: false - name: Setup .NET uses: actions/setup-dotnet@v4 @@ -84,7 +96,7 @@ jobs: environment: production - runs-on: windows-2022 # It looks like the Linux runner cannot sign the NuGet using a PFX file. + runs-on: ubuntu-22.04 permissions: contents: write @@ -109,13 +121,13 @@ jobs: fetch-depth: 0 - name: Download Test And Coverage Results (ubuntu-22.04) - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: name: ubuntu-22.04 path: test-results - name: Download Test And Coverage Results (windows-2022) - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: name: windows-2022 path: test-results @@ -124,18 +136,14 @@ jobs: run: Get-ChildItem -Path 'test-results' -Filter *.xml -Recurse | Select-Object -ExpandProperty FullName | % { (Get-Content -LiteralPath $_) -Replace 'fullPath="[A-Za-z0-9:\-\/\\]+(src|tests)', 'fullPath="${{ github.workspace }}/$1' | Set-Content -LiteralPath $_ } shell: pwsh - - name: Decode Code Signing Certificate - run: echo $CODE_SIGNING_CERTIFICATE_BASE64 | base64 --decode > code-signing-certificate.pfx - shell: bash - - name: Cache NuGet Packages uses: actions/cache@v4 with: - key: windows-2022-nuget-${{ hashFiles('Directory.Packages.props') }} + key: ubuntu-22.04-nuget-${{ hashFiles('Directory.Packages.props') }} path: ~/.nuget/packages - name: Setup Java - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: distribution: temurin java-version: 17 @@ -161,7 +169,7 @@ jobs: - name: Publish NuGet Package run: dotnet cake --target=Publish - - uses: release-drafter/release-drafter@65c5fb495d1e69aa8c08a3317bc44ff8aabe9772 + - uses: release-drafter/release-drafter@v5 with: version: ${{ env.semVer }} # Cake sets the semVer environment variable env: