Skip to content

Commit 5abbb56

Browse files
Using workflow_dispatch for LLVM releases
1 parent 840a736 commit 5abbb56

File tree

2 files changed

+28
-15
lines changed

2 files changed

+28
-15
lines changed

.github/workflows/release-llvm.yml

Lines changed: 24 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
name: Release LLVM
22

33
on:
4-
push:
5-
tags:
6-
- "llvm*"
4+
workflow_dispatch:
5+
inputs:
6+
llvm_version:
7+
type: string
8+
required: true
9+
description: llvm version in "x.x.x" format, e.g. "18.1.8"
710

811
env:
912
CARGO_TERM_COLOR: always
@@ -13,13 +16,20 @@ jobs:
1316
runs-on: ubuntu-latest
1417
permissions:
1518
contents: write
19+
outputs:
20+
version: ${{ steps.resolve-version.outputs.result }}
1621
steps:
22+
- id: resolve-version
23+
run: |
24+
echo "version=${{ inputs.llvm_version }}-revive.${GITHUB_SHA:0:7}" >> $GITHUB_OUTPUT
25+
1726
- name: create release
1827
uses: softprops/action-gh-release@v2
1928
with:
20-
name: "LLVM binaries release: ${{ github.ref_name }}"
29+
name: "LLVM binaries release: ${{ steps.resolve-version.outputs.version }}"
2130
body: "This release includes binaries of LLVM, used to compile revive itself"
2231
make_latest: "false"
32+
tag_name: ${{ steps.resolve-version.outputs.version }}
2333

2434
build-macos:
2535
strategy:
@@ -68,14 +78,15 @@ jobs:
6878
6979
- name: package artifacts
7080
run: |
71-
tar -czf "${{ github.ref_name }}-macos-${{ matrix.arch }}.tar.gz" target-llvm/gnu/target-final
81+
tar -czf "${{ needs.create-release.outputs.version }}-macos-${{ matrix.arch }}.tar.gz" target-llvm/gnu/target-final
7282
7383
- name: upload archive to release
7484
uses: softprops/action-gh-release@v2
7585
with:
7686
make_latest: "false"
87+
tag_name: ${{ needs.create-release.outputs.version }}
7788
files: |
78-
${{ github.ref_name }}-macos-${{ matrix.arch }}.tar.gz
89+
${{ needs.create-release.outputs.version }}-macos-${{ matrix.arch }}.tar.gz
7990
8091
8192
build-linux-all:
@@ -141,15 +152,16 @@ jobs:
141152
142153
- name: package artifacts
143154
run: |
144-
tar -czf "${{ github.ref_name }}-x86_64-linux-gnu-linux.tar.gz" target-llvm/gnu/target-final
145-
tar -czf "${{ github.ref_name }}-x86_64-linux-musl.tar.gz" target-llvm/musl/target-final
146-
tar -czf "${{ github.ref_name }}-wasm32-unknown-emscripten.tar.gz" target-llvm/emscripten/target-final
155+
tar -czf "${{ needs.create-release.outputs.version }}-x86_64-linux-gnu-linux.tar.gz" target-llvm/gnu/target-final
156+
tar -czf "${{ needs.create-release.outputs.version }}-x86_64-linux-musl.tar.gz" target-llvm/musl/target-final
157+
tar -czf "${{ needs.create-release.outputs.version }}-wasm32-unknown-emscripten.tar.gz" target-llvm/emscripten/target-final
147158
148159
- name: upload archive to release
149160
uses: softprops/action-gh-release@v2
150161
with:
151162
make_latest: "false"
163+
tag_name: ${{ needs.create-release.outputs.version }}
152164
files: |
153-
${{ github.ref_name }}-x86_64-linux-gnu-linux.tar.gz
154-
${{ github.ref_name }}-x86_64-linux-musl.tar.gz
155-
${{ github.ref_name }}-wasm32-unknown-emscripten.tar.gz
165+
${{ needs.create-release.outputs.version }}-x86_64-linux-gnu-linux.tar.gz
166+
${{ needs.create-release.outputs.version }}-x86_64-linux-musl.tar.gz
167+
${{ needs.create-release.outputs.version }}-wasm32-unknown-emscripten.tar.gz

RELEASE.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ To create a new pre-release:
1111

1212
# LLVM release
1313

14-
To create a new LLVM release, create a git tag (not GitHub release) with `llvm-` prefix, e.g. `llvm-0.0.11`.
15-
`Release LLVM` action will start automatically. It will create new GitHub release, and upload LLVM binaries.
16-
Other actions including Release will use these binaries on the next run.
14+
To create a new LLVM release, run "Release LLVM" workflow. Use current LLVM version as parameter, e.g. `18.1.8`.
15+
Version suffix will be resolved automatically.
16+
The workflows will create new GitHub release, and upload LLVM binaries.
17+
Next release of resolc will use newly created binaries.

0 commit comments

Comments
 (0)