From c8556c3af812f33499e607361b424c47d0fa6d2c Mon Sep 17 00:00:00 2001 From: Joshua Sing Date: Fri, 15 Dec 2023 16:36:25 +1100 Subject: ci: clean up release workflow --- .github/workflows/release.yml | 81 ++++++++++++++++++++++++++++++++++++ .github/workflows/release_by_tag.yml | 66 ----------------------------- 2 files changed, 81 insertions(+), 66 deletions(-) create mode 100644 .github/workflows/release.yml delete mode 100644 .github/workflows/release_by_tag.yml (limited to '.github/workflows') diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..8230b82 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,81 @@ +# GitHub Actions workflow to create releases from tags. +name: "Release" + +on: + push: + tags: [ "v*" ] + +permissions: + contents: write + +jobs: + release: + name: "Release" + runs-on: "ubuntu-latest" + outputs: + upload_url: "${{ steps.create_release.outputs.upload_url }}" + steps: + - name: "Checkout repository" + uses: actions/checkout@v4 + + - name: "Generate version changelog" + run: .github/scripts/changelog.sh "$VERSION" > release-changelog.txt + env: + VERSION: "${{ github.ref_name }}" + + - name: "Create GitHub release" + id: create_release + uses: softprops/action-gh-release@v1 + with: + body_path: "${{ github.workspace }}/release-changelog.txt" + + build-windows: + name: "${{ matrix.os }}/${{ matrix.arch }}" + runs-on: "${{ matrix.os }}" + needs: ["release"] + strategy: + matrix: + os: [ "windows-2022" ] + arch: [ "Win32", "x64", "ARM64" ] + steps: + - name: "Checkout repository" + uses: actions/checkout@v4 + + - name: "Setup MSYS2" + uses: msys2/setup-msys2@v2 + with: + update: true + install: >- + autoconf + automake + diffutils + libtool + gcc + git + patch + perl + + - shell: msys2 {0} + run: ./autogen.sh + + - shell: cmd + run: cmake -Bbuild -G "Visual Studio 17 2022" -A ${{ matrix.arch }} -DCMAKE_INSTALL_PREFIX=local + + - shell: cmd + run: cmake --build build --config Release + + - shell: cmd + run: cmake --install build --config Release + + - shell: pwsh + run: Compress-Archive -Path local\* local.zip + + - name: "Upload release artifact" + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: "${{ github.token }}" + with: + upload_url: "${{ needs.release.outputs.upload_url }}" + asset_path: "local.zip" + asset_name: "libressl_${{ github.ref_name }}_windows_${{ matrix.arch }}.zip" + asset_content_type: "application/zip" diff --git a/.github/workflows/release_by_tag.yml b/.github/workflows/release_by_tag.yml deleted file mode 100644 index de05254..0000000 --- a/.github/workflows/release_by_tag.yml +++ /dev/null @@ -1,66 +0,0 @@ - -on: - push: - tags: [ "v*" ] - -permissions: - contents: write - -jobs: - release: - runs-on: ubuntu-latest - outputs: - upload_url: ${{ steps.create_release.outputs.upload_url }} - steps: - - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ github.ref }} - release_name: Release ${{ github.ref }} - draft: false - prerelease: false - - build-windows: - needs: release - strategy: - matrix: - arch: [ Win32, x64, ARM64 ] - runs-on: windows-2022 - name: windows - ${{ matrix.arch }} - steps: - - uses: msys2/setup-msys2@v2 - with: - update: true - install: >- - autoconf - automake - diffutils - libtool - gcc - git - patch - perl - - uses: actions/checkout@main - - shell: msys2 {0} - run: ./autogen.sh - - shell: cmd - run: cmake -Bbuild -G "Visual Studio 17 2022" -A ${{ matrix.arch }} -DCMAKE_INSTALL_PREFIX=local - - shell: cmd - run: cmake --build build --config Release - - shell: cmd - run: cmake --install build --config Release - - shell: pwsh - run: | - Compress-Archive -Path local\* local.zip - - - name: upload release - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ needs.release.outputs.upload_url }} - asset_path: local.zip - asset_name: windows-${{ matrix.arch }}-${{ github.ref }}.zip - asset_content_type: application/zip -- cgit v1.2.3-55-g6feb