add command for init project in workspace (#189) #543
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
# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node | |
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions | |
name: Node.js CI | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
jobs: | |
test: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [windows-latest, ubuntu-latest, macos-latest] | |
node-version: [lts/hydrogen] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- run: yarn | |
- run: yarn compile-tests | |
- name: Run e2e test | |
if: matrix.os != 'ubuntu-latest' | |
uses: coactions/setup-xvfb@v1 | |
with: | |
run: yarn test-with-coverage:e2e | |
- name: Run unit tests | |
run: yarn test-with-coverage:unit | |
- name: Update server coverage badge | |
uses: codecov/codecov-action@v4 | |
if: matrix.os == 'ubuntu-latest' | |
with: | |
files: ./packages/server/coverage/coverage-final.json | |
verbose: true | |
flags: lsp-ide-server | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
- name: Update client coverage badge | |
uses: codecov/codecov-action@v3 | |
if: matrix.os == 'windows-latest' | |
with: | |
files: ./packages/client/coverage/coverage-final.json | |
verbose: true | |
flags: lsp-ide-client | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
- name: Update debugger coverage badge | |
uses: codecov/codecov-action@v4 | |
if: matrix.os == 'ubuntu-latest' | |
with: | |
files: ./packages/debug-adapter/coverage/coverage-final.json | |
verbose: true | |
flags: debug-adapter | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
- name: Generate VSIX file | |
if: matrix.os == 'ubuntu-latest' && github.ref == 'refs/heads/master' | |
run: | | |
yarn package | |
- name: Add VSIX to the latest release | |
if: matrix.os == 'ubuntu-latest' && github.ref == 'refs/heads/master' | |
uses: 'marvinpinto/action-automatic-releases@latest' | |
with: | |
repo_token: '${{ secrets.GITHUB_TOKEN }}' | |
automatic_release_tag: 'draft' | |
prerelease: true | |
title: 'Draft' | |
files: | | |
./*.vsix |