Skip to content

Commit 7ad2fa8

Browse files
committed
ci: add build gh-pages workflow
1 parent b286397 commit 7ad2fa8

File tree

2 files changed

+80
-0
lines changed

2 files changed

+80
-0
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Get Melt Changed Call
2+
3+
on:
4+
workflow_call:
5+
outputs:
6+
melt_changed:
7+
description: "Melt Changed"
8+
value: ${{ jobs.create.outputs.melt_changed }}
9+
10+
jobs:
11+
create:
12+
name: Detect Source Change
13+
runs-on: ubuntu-latest
14+
outputs:
15+
melt_changed: ${{ steps.set-source-changed.outputs.melt_changed }}
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v4
19+
20+
- name: Get source files that changed
21+
id: changed-source
22+
uses: tj-actions/changed-files@v36
23+
with:
24+
files: |
25+
gh-pages
26+
src
27+
Cargo.toml
28+
29+
- name: List source files that changed
30+
run: echo '${{ steps.changed-source.outputs.all_changed_files }}'
31+
32+
- name: Set melt_changed
33+
id: set-source-changed
34+
run: |
35+
echo "melt_changed=${{ steps.changed-source.outputs.any_changed }}" >> "$GITHUB_OUTPUT"

.github/workflows/gh-pages.yml

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: Build gh-pages
2+
3+
on:
4+
schedule:
5+
- cron: "0 23 * * *"
6+
7+
jobs:
8+
get-melt-changed:
9+
uses: ./.github/workflows/get-melt-changed.yml
10+
deploy:
11+
runs-on: ubuntu-latest
12+
needs: [get-melt-changed]
13+
if: needs.get-melt-changed.outputs.melt_changed == 'true'
14+
permissions:
15+
contents: write # To push a branch
16+
pull-requests: write # To create a PR from that branch
17+
steps:
18+
- uses: actions/checkout@v4
19+
with:
20+
fetch-depth: 0
21+
- name: Setup Rust
22+
uses: actions-rs/toolchain@v1
23+
with:
24+
toolchain: stable
25+
target: wasm32-unknown-unknown
26+
override: true
27+
- name: Install Trunk
28+
uses: jetli/[email protected]
29+
with:
30+
version: "latest"
31+
- name: Deploy GitHub Pages
32+
run: |
33+
cd gh-pages
34+
trunk build --release
35+
git worktree add gh-pages
36+
git config user.name "Deploy demo from CI"
37+
git config user.email ""
38+
cd gh-pages
39+
# Delete the ref to avoid keeping history.
40+
git update-ref -d refs/heads/gh-pages
41+
rm -rf *
42+
mv ../docs/* .
43+
git add .
44+
git commit -m "Deploy demo $GITHUB_SHA to gh-pages"
45+
git push --force --set-upstream origin gh-pages

0 commit comments

Comments
 (0)