Merge pull request #62 from FormulaMonks/add/schema-constrained-tokens #143
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: ci | |
on: | |
workflow_dispatch: # allow manual trigger | |
pull_request: # on pull request changes | |
push: | |
branches: [main] # on commits to the main branch | |
jobs: | |
ci: | |
environment: ${{ github.ref == 'refs/heads/main' && 'publish' || 'test' }} | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write # to publish releases | |
issues: write # to comment on released issues | |
pull-requests: write # to comment on released PRs | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v2.5.1 | |
with: { node-version: 20.x } | |
- run: npm install -g pnpm@9 | |
# Main tests. | |
- run: pnpm install --frozen-lockfile | |
- run: pnpm run test | |
- run: pnpm run build | |
- run: pnpm run type-check | |
# Validate that the tests pass without the pnpm overrides that alter | |
# the intra-monorepo dependencies for local development. | |
- run: cat package.json | jq 'del(.pnpm.overrides)' | tee package.json | |
- run: pnpm install --no-frozen-lockfile | |
- run: pnpm run test | |
# Validate that the prepublish hook works. | |
- run: pnpm run prepublish | |
# Finally, release (actual publishing only happens on the main branch). | |
- run: pnpm run release | |
env: | |
GITHUB_TOKEN: ${{ github.token }} | |
NPM_TOKEN: ${{ secrets.NPM_TOKEN }} |