3. Test Language Server and publish - Prisma CLI version 6.15.0-dev.11 #7213
This file contains hidden or 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: 3. Test Language Server and publish | |
run-name: 3. Test Language Server and publish - ${{ inputs.trigger_reason }} | |
on: | |
workflow_dispatch: | |
inputs: | |
npm_channel: | |
description: 'Prisma CLI NPM Channel' | |
required: true | |
extension_version: | |
description: 'VS Code extension version' | |
required: true | |
branch: | |
description: 'Branch to run run this workflow on' | |
required: true | |
trigger_reason: | |
description: 'Information about what caused the publishing process in the first place.' | |
required: true | |
env: | |
PRISMA_TELEMETRY_INFORMATION: 'language-tools 3_LS_unit_tests_publish.yml' | |
jobs: | |
tests: | |
name: Run tests | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 10 | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-latest, windows-latest] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
token: ${{ secrets.PRISMA_BOT_TOKEN }} | |
ref: ${{ github.event.inputs.branch }} | |
- name: Use Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '20' | |
cache: 'npm' | |
- name: Install Dependencies | |
run: npm install && npm run bootstrap | |
- name: Build Language Server | |
run: npx lerna run build --scope @prisma/language-server | |
- name: Run Language Server tests | |
run: npx lerna run test --scope @prisma/language-server | |
bump: | |
name: Bump Language Server version | |
needs: [tests] | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.event.inputs.branch }} | |
- name: Use Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '20' | |
cache: 'npm' | |
# Setup .npmrc file to publish to npm | |
registry-url: 'https://registry.npmjs.org' | |
- name: Print inputs | |
run: | | |
echo ${{github.event.inputs.npm_channel}} | |
echo ${{github.event.inputs.extension_version}} | |
echo ${{github.event.inputs.branch}} | |
echo ${{github.event.inputs.trigger_reason}} | |
- name: Install Dependencies | |
run: npm install && npm run bootstrap | |
- name: Build Language Server | |
run: npx lerna run build --scope @prisma/language-server | |
- name: Publish Language Server to npm | |
run: npx lerna exec --scope @prisma/language-server -- npm publish --tag ${{ github.event.inputs.npm_channel }} --access public | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | |
- name: Trigger next workflow for bumping Language Server in extension | |
uses: benc-uk/workflow-dispatch@v1 | |
with: | |
workflow: 4. Bump LS in VSCode extension | |
token: ${{ secrets.PRISMA_BOT_TOKEN }} | |
inputs: '{ "npm_channel": "${{ github.event.inputs.npm_channel }}", "extension_version": "${{ github.event.inputs.extension_version }}", "branch": "${{ github.event.inputs.branch }}", "trigger_reason": "${{github.event.inputs.trigger_reason}}" }' |