name: Release on: push: branches: - master paths: - "version.ts" jobs: release: runs-on: ubuntu-latest permissions: contents: write steps: - name: Checkout repo uses: actions/checkout@v4 - name: Setup Deno uses: denoland/setup-deno@v2 with: deno-version: v2.x - name: Check formatting run: deno fmt --check - name: Run linter run: deno lint - name: Run tests env: SERPAPI_TEST_KEY: ${{ secrets.SERPAPI_TEST_KEY }} run: deno task test - name: Setup Node uses: actions/setup-node@v4 with: node-version: "22.x" registry-url: "https://registry.npmjs.org" - name: Build npm files run: deno task npm - name: Push tag run: | VERSION=$(cat version.ts | sed -n 's/.*"\(.*\)".*/\1/p') echo $VERSION git tag $VERSION git push origin $VERSION - name: npm publish env: NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} run: cd npm && npm publish