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@v2 - name: Setup node uses: actions/setup-node@v2 with: node-version: 14 - name: Cache uses: actions/cache@v2 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 run: (cd crates/wasm && wasm-pack build --release --scope=swc --target nodejs) - name: Publish run: | echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> ~/.npmrc (cd crates/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@v2 - name: Setup node uses: actions/setup-node@v2 with: node-version: 14 - name: Cache uses: actions/cache@v2 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 run: (cd crates/wasm && wasm-pack build --release --scope=swc --target web) - name: Rename run: | sed -i'' -e 's/"name": "@swc\/wasm"/"name": "@swc\/wasm-web"/g' package.json working-directory: crates/wasm/pkg - name: Publish run: | echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> ~/.npmrc (cd crates/wasm/pkg && npm publish --access public) env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} NPM_TOKEN: ${{ secrets.NPM_TOKEN }}