|
9 | 9 | jobs:
|
10 | 10 | build:
|
11 | 11 | runs-on: windows-2022
|
| 12 | + strategy: |
| 13 | + matrix: |
| 14 | + arch: [x64, arm64] |
| 15 | + |
| 16 | + outputs: |
| 17 | + MESA_VERSION: ${{ steps.build.outputs.MESA_VERSION }} |
| 18 | + LLVM_VERSION: ${{ steps.build.outputs.LLVM_VERSION }} |
| 19 | + |
12 | 20 | steps:
|
13 | 21 |
|
14 | 22 | - name: checkout
|
15 |
| - uses: actions/checkout@v2 |
| 23 | + uses: actions/checkout@v4 |
16 | 24 |
|
17 | 25 | - name: build
|
18 | 26 | id: build
|
19 | 27 | shell: cmd
|
20 |
| - run: call build.cmd |
21 |
| - |
22 |
| - - name: release |
23 |
| - id: release |
24 |
| - if: steps.build.outputs.MESA_VERSION != '' |
25 |
| - uses: actions/create-release@v1 |
26 |
| - env: |
27 |
| - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
28 |
| - with: |
29 |
| - tag_name: ${{ steps.build.outputs.MESA_VERSION }} |
30 |
| - release_name: ${{ steps.build.outputs.MESA_VERSION }} |
31 |
| - body: | |
32 |
| - [mesa ${{ steps.build.outputs.MESA_VERSION }} release notes](https://docs.mesa3d.org/relnotes/${{ steps.build.outputs.MESA_VERSION }}.html) |
33 |
| - [llvm ${{ steps.build.outputs.LLVM_VERSION }} release notes](https://github.com/llvm/llvm-project/releases/tag/llvmorg-${{ steps.build.outputs.LLVM_VERSION }}) |
| 28 | + run: call build.cmd ${{ matrix.arch }} |
34 | 29 |
|
35 |
| - - name: upload llvmpipe |
36 |
| - id: upload-llvmpipe |
37 |
| - uses: actions/upload-release-asset@v1 |
38 |
| - env: |
39 |
| - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
| 30 | + - name: upload artifacts |
| 31 | + uses: actions/upload-artifact@v4 |
40 | 32 | with:
|
41 |
| - upload_url: ${{ steps.release.outputs.upload_url }} |
42 |
| - asset_path: "mesa-llvmpipe-${{ steps.build.outputs.MESA_VERSION }}.zip" |
43 |
| - asset_name: "mesa-llvmpipe-${{ steps.build.outputs.MESA_VERSION }}.zip" |
44 |
| - asset_content_type: application/zip |
45 |
| - |
46 |
| - - name: upload osmesa |
47 |
| - id: upload-osmesa |
48 |
| - uses: actions/upload-release-asset@v1 |
49 |
| - env: |
50 |
| - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
51 |
| - with: |
52 |
| - upload_url: ${{ steps.release.outputs.upload_url }} |
53 |
| - asset_path: "mesa-osmesa-${{ steps.build.outputs.MESA_VERSION }}.zip" |
54 |
| - asset_name: "mesa-osmesa-${{ steps.build.outputs.MESA_VERSION }}.zip" |
55 |
| - asset_content_type: application/zip |
| 33 | + name: mesa-${{ matrix.arch }}-${{ steps.build.outputs.MESA_VERSION }} |
| 34 | + path: mesa-*-${{ matrix.arch }}-${{ steps.build.outputs.MESA_VERSION }}.zip |
| 35 | + if-no-files-found: error |
| 36 | + compression-level: 0 |
| 37 | + |
| 38 | + release: |
| 39 | + runs-on: ubuntu-24.04 |
| 40 | + needs: build |
| 41 | + permissions: |
| 42 | + contents: write |
| 43 | + env: |
| 44 | + GH_TOKEN: ${{ github.token }} |
| 45 | + steps: |
56 | 46 |
|
57 |
| - - name: upload lavapipe |
58 |
| - id: upload-lavapipe |
59 |
| - uses: actions/upload-release-asset@v1 |
60 |
| - env: |
61 |
| - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
62 |
| - with: |
63 |
| - upload_url: ${{ steps.release.outputs.upload_url }} |
64 |
| - asset_path: "mesa-lavapipe-${{ steps.build.outputs.MESA_VERSION }}.zip" |
65 |
| - asset_name: "mesa-lavapipe-${{ steps.build.outputs.MESA_VERSION }}.zip" |
66 |
| - asset_content_type: application/zip |
| 47 | + - name: release |
| 48 | + run: | |
| 49 | + echo '[mesa ${{ needs.build.outputs.MESA_VERSION }} release notes](https://docs.mesa3d.org/relnotes/${{ needs.build.outputs.MESA_VERSION }}.html)' >>notes.txt |
| 50 | + echo '[llvm ${{ needs.build.outputs.LLVM_VERSION }} release notes](https://github.com/llvm/llvm-project/releases/tag/llvmorg-${{ needs.build.outputs.LLVM_VERSION }})' >>notes.txt |
| 51 | + gh release create ${{ needs.build.outputs.MESA_VERSION }} -R "${GITHUB_REPOSITORY}" -t '${{ needs.build.outputs.MESA_VERSION }}' -F notes.txt |
67 | 52 |
|
68 |
| - - name: upload d3d12 |
69 |
| - id: upload-d3d12 |
70 |
| - uses: actions/upload-release-asset@v1 |
71 |
| - env: |
72 |
| - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
| 53 | + - name: get artifacts |
| 54 | + uses: actions/download-artifact@v4 |
73 | 55 | with:
|
74 |
| - upload_url: ${{ steps.release.outputs.upload_url }} |
75 |
| - asset_path: "mesa-d3d12-${{ steps.build.outputs.MESA_VERSION }}.zip" |
76 |
| - asset_name: "mesa-d3d12-${{ steps.build.outputs.MESA_VERSION }}.zip" |
77 |
| - asset_content_type: application/zip |
| 56 | + pattern: mesa-*-${{ needs.build.outputs.MESA_VERSION }} |
| 57 | + merge-multiple: true |
78 | 58 |
|
79 |
| - - name: upload zink |
80 |
| - id: upload-zink |
81 |
| - uses: actions/upload-release-asset@v1 |
82 |
| - env: |
83 |
| - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
84 |
| - with: |
85 |
| - upload_url: ${{ steps.release.outputs.upload_url }} |
86 |
| - asset_path: "mesa-zink-${{ steps.build.outputs.MESA_VERSION }}.zip" |
87 |
| - asset_name: "mesa-zink-${{ steps.build.outputs.MESA_VERSION }}.zip" |
88 |
| - asset_content_type: application/zip |
| 59 | + - name: upload artifacts |
| 60 | + run: gh release upload '${{ needs.build.outputs.MESA_VERSION }}' mesa-*-${{ needs.build.outputs.MESA_VERSION }}.zip -R "${GITHUB_REPOSITORY}" |
0 commit comments