Skip to content

Commit

Permalink
feat: ci
Browse files Browse the repository at this point in the history
  • Loading branch information
magic-akari committed Sep 7, 2024
1 parent 587b0fc commit e1c6a86
Show file tree
Hide file tree
Showing 2 changed files with 136 additions and 0 deletions.
100 changes: 100 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
name: Publish

on:
push:
tags:
- "v*"

env:
CARGO_INCREMENTAL: 0
CARGO_TERM_COLOR: "always"
RUST_LOG: "off"

jobs:
wasm-build:
name: Wasm build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Install wasm-pack
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh

- name: Build wasm
run: npm run build:wasm

- name: Package
run: npm pack
working-directory: crates/swc_ast_viewer/pkg

- name: Upload
uses: actions/upload-artifact@v4
with:
name: build
path: crates/swc_ast_viewer/pkg

publish-npm:
if: startsWith(github.ref, 'refs/tags/v')
runs-on: ubuntu-latest
needs: wasm-build
permissions:
id-token: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version-file: ".node-version"
registry-url: "https://registry.npmjs.org"

- uses: actions/download-artifact@v4
with:
name: build
path: crates/swc_ast_viewer/pkg

- run: npm publish --provenance
working-directory: crates/swc_ast_viewer/pkg
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

publish-github:
if: startsWith(github.ref, 'refs/tags/v')
runs-on: ubuntu-latest
needs: wasm-build
permissions:
packages: write
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version-file: ".node-version"
registry-url: "https://npm.pkg.github.com"

- uses: actions/download-artifact@v4
with:
name: build
path: crates/swc_ast_viewer/pkg

- run: npm publish
working-directory: crates/swc_ast_viewer/pkg
env:
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

publish-github-release:
if: startsWith(github.ref, 'refs/tags/v')
runs-on: ubuntu-latest
needs: wasm-build
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
name: build
path: crates/swc_ast_viewer/pkg

- name: Release
uses: softprops/action-gh-release@69320dbe05506a9a39fc8ae11030b214ec2d1f87
with:
files: |
crates/swc_ast_viewer/pkg/swc_ast_viewer_bg.wasm
crates/swc_ast_viewer/pkg/*.tgz
36 changes: 36 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,42 @@ on:
types: ["opened", "reopened", "synchronize"]

jobs:
cargo-fmt:
name: Cargo fmt
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: cargo fmt -- --check

cargo-clippy:
name: Cargo clippy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: cargo clippy

wasm-build:
name: Wasm build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Install wasm-pack
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh

- name: Build wasm
run: ./crates/swc_ast_viewer/scripts/build.sh

- name: Package
run: npm pack
working-directory: crates/swc_ast_viewer/pkg

- name: Upload
uses: actions/upload-artifact@v4
with:
name: build
path: crates/swc_ast_viewer/pkg

test:
runs-on: ubuntu-latest
steps:
Expand Down

0 comments on commit e1c6a86

Please sign in to comment.