name: Publish Pyth JS packages on: push: tags: - pyth-js-v* jobs: publish-js: name: Publish Javascript Packages to NPM runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions-rust-lang/setup-rust-toolchain@v1 - uses: actions/setup-node@v4 with: node-version-file: "package.json" # Libusb is a build requirement for the node-hid package and so pnpm # install will fail if this isn't in the build environment and if a # precompiled binary isn't found. - name: Install libusb run: sudo apt-get update && sudo apt-get install -y libusb-1.0-0-dev libudev-dev # Install Foundry for Ethereum contract builds - name: Install Foundry uses: foundry-rs/foundry-toolchain@v1 with: version: v0.3.0 - uses: pnpm/action-setup@v4 name: Install pnpm with: run_install: true - name: Install Forge dependencies run: cd target_chains/ethereum/contracts && pnpm run install-forge-deps - name: Set publishing config run: pnpm config set '//registry.npmjs.org/:_authToken' "${NODE_AUTH_TOKEN}" env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} - run: pnpm run turbo build - run: pnpm publish -r --no-git-checks