@W-13900452: support Guidance Panel in layout.json #132
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: Build and test | |
on: | |
push: | |
branches: | |
- develop | |
env: | |
NODE_VERSION: '16.14.2' | |
jobs: | |
# We really only need to run lint on one job so we'll do it here | |
build: | |
runs-on: macos-latest | |
timeout-minutes: 15 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Use Node.js ${{ env.NODE_VERSION }} | |
uses: actions/setup-node@v2 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
- name: Build | |
run: | | |
npm install | |
npm run compile | |
npm run lint | |
- name: Tests | |
run: npm test | |
build-linux: | |
runs-on: ubuntu-latest | |
timeout-minutes: 15 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Use Node.js ${{ env.NODE_VERSION }} | |
uses: actions/setup-node@v2 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
- name: Build | |
run: | | |
npm install | |
npm run compile | |
- name: Tests | |
# start X virtual frame buffer so tests can do ui | |
run: | | |
sudo /usr/bin/Xvfb :10 -ac -screen 0 1024x768x24 -audit 4 2>&1 & | |
DISPLAY=:10 npm test | |
# have a build job that builds the .vsix files and runs the vscode-integration tests against them, then | |
# make the extensions available off github | |
build-vsixs: | |
runs-on: ubuntu-latest | |
timeout-minutes: 15 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Use Node.js ${{ env.NODE_VERSION }} | |
uses: actions/setup-node@v2 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
- name: Build | |
# do --ignore-scripts so it skips the bootstrap in the extensions/, since test:vsix-integration runs | |
# a git clean and a bootstrap to build the vsix's | |
run: | | |
npm install --ignore-scripts | |
- name: Tests | |
# start X virtual frame buffer so tests can do ui | |
run: | | |
sudo /usr/bin/Xvfb :10 -ac -screen 0 1024x768x24 -audit 4 2>&1 & | |
DISPLAY=:10 npm run test:vsix-integration | |
- name: Package extensions | |
# upload-artifact doesn't support globs, so put them in a single folder | |
run: | | |
mkdir dist-extensions | |
find . -name '*.vsix' -type f -exec mv {} dist-extensions \; | |
- name: Upload extensions | |
uses: actions/upload-artifact@v2 | |
with: | |
name: extensions | |
path: dist-extensions | |
build-insiders: | |
runs-on: ubuntu-latest | |
timeout-minutes: 15 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Use Node.js ${{ env.NODE_VERSION }} | |
uses: actions/setup-node@v2 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
- name: Build | |
run: | | |
npm install | |
npm run compile | |
- name: Tests | |
# start X virtual frame buffer so tests can do ui | |
run: | | |
sudo /usr/bin/Xvfb :10 -ac -screen 0 1024x768x24 -audit 4 2>&1 & | |
DISPLAY=:10 npm run test:vscode-insiders-integration | |
build-windows: | |
runs-on: windows-latest | |
timeout-minutes: 20 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Use Node.js ${{ env.NODE_VERSION }} | |
uses: actions/setup-node@v2 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
- name: Build | |
run: | | |
npm install | |
npm run compile | |
- name: Tests | |
run: npm test |