name: Publish (wasm) env: CARGO_INCREMENTAL: 0 CARGO_PROFILE_RELEASE_LTO: "fat" CI: "1" on: create: tags: - v* jobs: publish-node: if: ${{ startsWith(github.ref, 'refs/tags/v') }} name: Build - wasm for node.js runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Setup node uses: actions/setup-node@v3 with: node-version: 16 - name: Cache uses: actions/cache@v3 with: path: | ~/.cargo/ **/target/ key: ${{ runner.os }}-publish-integration - name: Install node dependencies run: yarn - name: Install wasm-pack run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh - name: Build working-directory: bindings/binding_core_wasm run: | wasm-pack build --out-name wasm --release --scope=swc --target nodejs sed -i -e 's/"name": "@swc\/binding_core_wasm"/"name": "@swc\/wasm"/g' pkg/package.json - name: Publish run: | echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> ~/.npmrc (cd bindings/binding_core_wasm/pkg && npm publish --access public) env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} NPM_TOKEN: ${{ secrets.NPM_TOKEN }} publish-web: if: ${{ startsWith(github.ref, 'refs/tags/v') }} name: Build - wasm for web runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Setup node uses: actions/setup-node@v3 with: node-version: 16 - name: Cache uses: actions/cache@v3 with: path: | ~/.cargo/ **/target/ key: ${{ runner.os }}-publish-integration - name: Install node dependencies run: yarn - name: Install wasm-pack run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh - name: Build working-directory: bindings/binding_core_wasm run: | wasm-pack build --out-name wasm-web --release --scope=swc --target web sed -i -e 's/"name": "@swc\/binding_core_wasm"/"name": "@swc\/wasm-web"/g' pkg/package.json - name: Publish run: | echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> ~/.npmrc (cd bindings/binding_core_wasm/pkg && npm publish --access public) env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} NPM_TOKEN: ${{ secrets.NPM_TOKEN }}