name: Publish Nightly on: schedule: - cron: '0 7 * * *' # enable users to manually trigger with workflow_dispatch workflow_dispatch: {} permissions: contents: read # Ensure scripts are run with pipefail. See: # https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#exit-codes-and-error-action-preference defaults: run: shell: bash jobs: test: runs-on: ubuntu-latest if: github.repository == 'microsoft/TypeScript' steps: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 with: node-version: 'lts/*' - run: | npm --version # corepack enable npm npm install -g $(jq -r '.packageManager' < package.json) npm --version - name: Setup and test nightly run: | npm ci npx hereby configure-nightly npm test publish: needs: [test] runs-on: ubuntu-latest if: github.repository == 'microsoft/TypeScript' steps: - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 with: node-version: 'lts/*' # Use NODE_AUTH_TOKEN environment variable to authenticate to this registry. registry-url: https://registry.npmjs.org/ - run: | npm --version # corepack enable npm npm install -g $(jq -r '.packageManager' < package.json) npm --version - name: Setup and publish nightly run: | npm whoami npm ci npx hereby configure-nightly npx hereby LKG node ./scripts/addPackageJsonGitHead.mjs package.json npm publish --tag next env: NODE_AUTH_TOKEN: ${{secrets.npm_token}}