Skip to content

Publish the studio-natives-modules package to npm #54

Publish the studio-natives-modules package to npm

Publish the studio-natives-modules package to npm #54

name: Publish the studio-natives-modules package to npm
on:
workflow_dispatch:
workflow_run:
workflows:
- Test Prebuilds for all platforms
types:
- completed
jobs:
publish-studio-native-modules:
runs-on: ubuntu-latest
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_REGISTRY_TOKEN }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
cache: npm
node-version: 22
- name: Install toolkit
run: npm ci
- name: Set Electron Major version in env
run: echo "ELECTRON_MAJOR_VERSION=$(node ./bin/get-electron-major-version.js)" >> $GITHUB_ENV
- name: Download artifact
id: download-artifact
uses: dawidd6/action-download-artifact@v5
with:
# Optional, GitHub token, a Personal Access Token with `public_repo` scope if needed
# Required, if the artifact is from a different repo
# Required, if the repo is private a Personal Access Token with `repo` scope is needed or GitHub token in a job where the permissions `action` scope set to `read`
github_token: ${{secrets.GITHUB_TOKEN}}
# Optional, workflow file name or ID
# If not specified, will be inferred from run_id (if run_id is specified), or will be the current workflow
workflow: discover-native-modules.yml
# Optional, the status or conclusion of a completed workflow to search for
# Can be one of a workflow conclusion:
# "failure", "success", "neutral", "cancelled", "skipped", "timed_out", "action_required"
# Or a workflow status:
# "completed", "in_progress", "queued"
# Use the empty string ("") to ignore status or conclusion in the search
workflow_conclusion: success
name: modulesToBuildForElectron-${{ env.ELECTRON_MAJOR_VERSION }}
- run: cat modulesToBuild.json
- name: Publish npm package
run: npm run publish-studio-natives