From de5b62fa062ee08ffcdd899ac2180be57ea0454c Mon Sep 17 00:00:00 2001 From: Rushil Kapoor Date: Wed, 24 Jul 2024 16:39:39 +0530 Subject: [PATCH] feat: add a `publish.yml` for publishing packages to npmjs BTC-1336 --- .github/workflows/publish.yml | 63 +++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..dd046e2 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,63 @@ +name: Publish @wasm-miniscript +on: + workflow_dispatch: + push: + branches: + - master + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + +jobs: + publish: + name: Publish Release + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v3 + + - name: Setup Node + uses: actions/setup-node@v3 + with: + node-version: 18 + + - name: Install Rust + uses: actions-rs/toolchain@v1 + with: + toolchain: nightly + profile: minimal + override: true + + - name: Install wasm-pack + run: | + cargo install wasm-pack + + - name: Build Info + run: | + echo "node $(node --version)" + echo "npm $(npm --version)" + echo "yarn $(yarn --version)" + echo "rust $(rustup --version)" + git --version + + - name: Configure Git & NPM + run: | + git config --global user.name 'Git bot' + git config --global user.email 'bot@noreply.github.com' + git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }} + git checkout -b release-$(git rev-parse --short HEAD) + echo "email=${{ secrets.NPM_EMAIL }}" > .npmrc + echo "@bitgo:registry=https://registry.npmjs.org" >> .npmrc + echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" >> .npmrc + echo "//registry.npmjs.org/:always-auth=true" >> .npmrc + + - name: Install Packages + run: yarn install --with-frozen-lockfile + + - name: build packages + run: yarn lerna run build + + - name: Lerna Publish + run: yarn lerna publish --force-publish --sign-git-tag --sign-git-commit --include-merged-tags --conventional-commits --yes --loglevel silly +