Skip to content

Commit 263234d

Browse files
authored
Build on pull requests (#20)
1 parent e1394a8 commit 263234d

File tree

1 file changed

+42
-13
lines changed

1 file changed

+42
-13
lines changed

.github/workflows/release.yml

Lines changed: 42 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ name: Release
33
on:
44
release:
55
types: [published]
6+
pull_request:
67

78
env:
89
CARGO_TERM_COLOR: always
@@ -12,10 +13,11 @@ permissions:
1213
contents: write
1314

1415
jobs:
15-
publish-bin-to-github:
16-
name: Publish bin tool to Github
16+
build-bin:
17+
name: Build bin tool
1718
runs-on: ${{matrix.os}}
1819
strategy:
20+
max-parallel: 2
1921
matrix:
2022
include:
2123
- build: linux
@@ -66,23 +68,28 @@ jobs:
6668
sudo apt update
6769
sudo apt install ${{ matrix.linker }}
6870
cat .cargo/config.github >> .cargo/config
71+
6972
- name: Install Rust
7073
run: |
7174
rustup install ${{ matrix.rust }}
7275
rustup target add ${{ matrix.target }}
7376
rustup show
77+
7478
- name: Build
7579
run: cargo build --release --target ${{ matrix.target }}
80+
7681
- name: Copy and rename binary
82+
if: github.event_name == 'release'
7783
run: cp target/${{ matrix.target }}/release/esp_stacktrace_decoder esp_stacktrace_decoder_${{ matrix.bin_suffix }}
7884

79-
- name: Release
85+
- name: Upload to GitHub Release
86+
if: github.event_name == 'release'
8087
uses: softprops/[email protected]
8188
with:
8289
files: esp_stacktrace_decoder_${{ matrix.bin_suffix }}
8390

84-
publish-exe-to-github:
85-
name: Publish exe tool to Github
91+
build-exe:
92+
name: Build exe tool
8693
runs-on: ubuntu-latest
8794
steps:
8895
- name: Checkout repository
@@ -104,55 +111,77 @@ jobs:
104111
run: |
105112
sudo apt update
106113
sudo apt install mingw-w64
114+
107115
- name: Install Rust
108116
run: |
109117
rustup install stable
110118
rustup target add x86_64-pc-windows-gnu
111119
rustup show
120+
112121
- name: Build
113122
run: cargo build --release --target x86_64-pc-windows-gnu
114123

115-
- name: Release
124+
- name: Upload to GitHub Release
125+
if: github.event_name == 'release'
116126
uses: softprops/[email protected]
117127
with:
118128
files: target/x86_64-pc-windows-gnu/release/esp_stacktrace_decoder.exe
119129

120-
publish-web-to-github:
121-
name: Publish web tool to GitHub
130+
build-web:
131+
name: Build web tool
122132
runs-on: ubuntu-latest
123-
permissions:
124-
pages: write
125-
id-token: write
126-
contents: write
127133

128134
steps:
129135
- uses: actions/[email protected]
136+
130137
- uses: actions-rs/toolchain@v1
131138
with:
132139
toolchain: stable
133140
target: wasm32-unknown-unknown
141+
134142
- uses: Swatinem/rust-cache@v2
135143

136144
- uses: jetli/[email protected]
145+
137146
- name: Run wasm-pack
138147
run: wasm-pack build --target web --out-dir web/
148+
139149
- name: Make an archive for web deployment
150+
if: github.event_name == 'release'
140151
run: tar czf esp_stacktrace_decoder_wasm.tar.gz -C web index.html esp_stacktrace_decoder_rs.js esp_stacktrace_decoder_rs_bg.wasm
141152

142-
- name: Release
153+
- name: Upload to GitHub Release
154+
if: github.event_name == 'release'
143155
uses: softprops/[email protected]
144156
with:
145157
files: esp_stacktrace_decoder_wasm.tar.gz
146158

147159
- name: Copy files for GitHub Pages deployment
160+
if: github.event_name == 'release'
148161
run: mkdir -p public; cp web/index.html web/esp_stacktrace_decoder_rs.js web/esp_stacktrace_decoder_rs_bg.wasm public/
149162

150163
- uses: actions/[email protected]
164+
if: github.event_name == 'release'
151165
with:
152166
path: public
153167
retention-days: 1
168+
169+
deploy-pages:
170+
name: Deploy to GitHub Pages
171+
runs-on: ubuntu-latest
172+
permissions:
173+
pages: write
174+
id-token: write
175+
contents: write
176+
if: github.event_name == 'release'
177+
needs:
178+
- build-web
179+
steps:
154180
- name: Setup Pages
181+
if: github.event_name == 'release'
155182
uses: actions/[email protected]
183+
156184
- name: Deploy to GitHub Pages
185+
if: github.event_name == 'release'
157186
id: deployment
158187
uses: actions/[email protected]

0 commit comments

Comments
 (0)