aboutsummaryrefslogtreecommitdiff
path: root/.github
diff options
context:
space:
mode:
authorA Farzat <a@farzat.xyz>2026-03-09 08:57:15 +0300
committerA Farzat <a@farzat.xyz>2026-03-09 09:23:21 +0300
commitb9bef653ecbd08a467a283ef090068ff857d1318 (patch)
tree01d7a19b354b8c133bc6b36bca4a79bc2ff9b6ae /.github
parent904f91027cdfa91790da6bfd153627616ad512fb (diff)
downloadoreilly-epub-b9bef653ecbd08a467a283ef090068ff857d1318.tar.gz
oreilly-epub-b9bef653ecbd08a467a283ef090068ff857d1318.zip
Add release build to GitHub workflow
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/ci.yml32
1 files changed, 32 insertions, 0 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 36f29cc..9062d46 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -4,6 +4,8 @@ on:
push:
branches:
- master
+ tags:
+ - 'v*'
pull_request:
jobs:
@@ -54,3 +56,33 @@ jobs:
- name: Run tests
run: cargo test --all
+
+ release:
+ needs: test
+ if: startsWith(github.ref, 'refs/tags/v')
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+
+ - name: Install Rust toolchain
+ uses: dtolnay/rust-toolchain@stable
+
+ - name: Cache cargo
+ uses: actions/cache@v4
+ with:
+ path: |
+ ~/.cargo/registry
+ ~/.cargo/git
+ target
+ key: rust-${{ hashFiles('Cargo.lock') }}
+
+ - name: Build release binary
+ run: cargo build --release
+
+ - name: Upload artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: oreilly-epub-linux-x86_64
+ path: target/release/oreilly-epub