forked from verus-lang/verus
-
Notifications
You must be signed in to change notification settings - Fork 0
110 lines (97 loc) · 3.48 KB
/
Copy pathrolling-release.yml
File metadata and controls
110 lines (97 loc) · 3.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
name: rolling-release
on:
push:
branches: [main]
workflow_dispatch:
permissions:
contents: write
concurrency:
group: rolling-release
cancel-in-progress: true
jobs:
# build the release artifacts
build:
if: github.repository == 'verus-lang/verus'
uses: ./.github/workflows/build.yml
with:
checkout_ref: ${{ github.sha }}
is_rolling: true
# publish the release artifacts to the rolling pre-release
publish:
needs: [build]
runs-on: ubuntu-24.04
steps:
- name: download all artifacts
uses: actions/download-artifact@v8
- name: create release tag
shell: bash
run: |
version="${{ needs.build.outputs.version }}"
{
echo "TAG_NAME=release/rolling/${version}"
echo "RELEASE_NAME=${version}"
} >> "$GITHUB_ENV"
echo "${version}"
- name: list artifacts
run: ls -Al .
- name: update release
id: update_release
uses: verus-lang/action-update-release@v0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
id: 163437062
new_name: Rolling Release ${{ env.RELEASE_NAME }}
new_body: |
Rolling release from Continuous Integration
delete_tags_prefix: release/rolling/
delete_assets: true
new_draft_status: true
- name: upload release for x86-linux
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
UPLOAD_URL: ${{ steps.update_release.outputs.upload_url }}
run: |
curl -fsSL -X POST \
-H "Authorization: Bearer $GITHUB_TOKEN" \
-H "Content-Type: application/zip" \
--data-binary @./verus-x86-linux/verus-x86-linux.zip \
"${UPLOAD_URL%%\{*}?name=verus-${{ env.RELEASE_NAME }}-x86-linux.zip"
- name: upload release for arm64-macos
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
UPLOAD_URL: ${{ steps.update_release.outputs.upload_url }}
run: |
curl -fsSL -X POST \
-H "Authorization: Bearer $GITHUB_TOKEN" \
-H "Content-Type: application/zip" \
--data-binary @./verus-arm64-macos/verus-arm64-macos.zip \
"${UPLOAD_URL%%\{*}?name=verus-${{ env.RELEASE_NAME }}-arm64-macos.zip"
- name: upload release for x86-macos
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
UPLOAD_URL: ${{ steps.update_release.outputs.upload_url }}
run: |
curl -fsSL -X POST \
-H "Authorization: Bearer $GITHUB_TOKEN" \
-H "Content-Type: application/zip" \
--data-binary @./verus-x86-macos/verus-x86-macos.zip \
"${UPLOAD_URL%%\{*}?name=verus-${{ env.RELEASE_NAME }}-x86-macos.zip"
- name: upload release for x86-win
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
UPLOAD_URL: ${{ steps.update_release.outputs.upload_url }}
run: |
curl -fsSL -X POST \
-H "Authorization: Bearer $GITHUB_TOKEN" \
-H "Content-Type: application/zip" \
--data-binary @./verus-x86-win/verus-x86-win.zip \
"${UPLOAD_URL%%\{*}?name=verus-${{ env.RELEASE_NAME }}-x86-win.zip"
- name: publish release
uses: verus-lang/action-update-release@v0.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
id: 163437062
new_tag: ${{ env.TAG_NAME }}
new_draft_status: false