name: CI on: push: branches: - main - release/* pull_request: branches: - main - release/* jobs: # linux: # runs-on: ubuntu-latest # env: # CHILD_CONCURRENCY: "1" # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # steps: # - uses: actions/checkout@v2.2.0 # # TODO: rename azure-pipelines/linux/xvfb.init to github-actions # - run: | # sudo apt-get update # sudo apt-get install -y libxkbfile-dev pkg-config libsecret-1-dev libxss1 dbus xvfb libgtk-3-0 libkrb5-dev # {{SQL CARBON EDIT}} add kerberos dep # sudo cp build/azure-pipelines/linux/xvfb.init /etc/init.d/xvfb # sudo chmod +x /etc/init.d/xvfb # sudo update-rc.d xvfb defaults # sudo service xvfb start # name: Setup Build Environment # - uses: actions/setup-node@v1 # with: # node-version: 10 # # TODO: cache node modules # # Increase timeout to get around latency issues when fetching certain packages # - run: | # yarn config set network-timeout 300000 # yarn --frozen-lockfile # name: Install Dependencies # - run: yarn electron x64 # name: Download Electron # - run: yarn gulp hygiene # name: Run Hygiene Checks # - run: yarn strict-vscode # {{SQL CARBON EDIT}} add step # name: Run Strict Compile Options # # - run: yarn monaco-compile-check {{SQL CARBON EDIT}} remove step # # name: Run Monaco Editor Checks # - run: yarn valid-layers-check # name: Run Valid Layers Checks # - run: yarn compile # name: Compile Sources # # - run: yarn download-builtin-extensions {{SQL CARBON EDIT}} remove step # # name: Download Built-in Extensions # - run: DISPLAY=:10 ./scripts/test.sh --tfs "Unit Tests" --coverage --runGlob "**/sql/**/*.test.js" # name: Run Unit Tests (Electron) # - run: DISPLAY=:10 ./scripts/test-extensions-unit.sh # name: Run Extension Unit Tests (Electron) # # {{SQL CARBON EDIT}} Add coveralls. We merge first to get around issue where parallel builds weren't being combined correctly # - run: node test/combineCoverage # name: Combine code coverage files # - name: Upload Code Coverage # uses: coverallsapp/github-action@v1.1.1 # with: # github-token: ${{ secrets.GITHUB_TOKEN }} # path-to-lcov: "test/coverage/lcov.info" # Fails with cryptic error (e.g. https://github.com/microsoft/vscode/pull/90292/checks?check_run_id=433681926#step:13:9) # - run: DISPLAY=:10 yarn test-browser --browser chromium # name: Run Unit Tests (Browser) # - run: DISPLAY=:10 ./scripts/test-integration.sh --tfs "Integration Tests" {{SQL CARBON EDIT}} remove step # name: Run Integration Tests (Electron) windows: runs-on: windows-2016 env: CHILD_CONCURRENCY: "1" GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} steps: - uses: actions/checkout@v2.2.0 - uses: actions/setup-node@v1 with: node-version: 10 - uses: actions/setup-python@v1 with: python-version: "2.x" # Increase timeout to get around latency issues when fetching certain packages - run: | yarn config set network-timeout 300000 yarn --frozen-lockfile name: Install Dependencies - run: yarn electron name: Download Electron - run: yarn gulp hygiene name: Run Hygiene Checks - run: yarn strict-vscode # {{SQL CARBON EDIT}} add step name: Run Strict Compile Options # - run: yarn monaco-compile-check {{SQL CARBON EDIT}} remove step # name: Run Monaco Editor Checks - run: yarn valid-layers-check name: Run Valid Layers Checks - run: yarn compile name: Compile Sources # - run: yarn download-builtin-extensions {{SQL CARBON EDIT}} remove step # name: Download Built-in Extensions - run: .\scripts\test.bat --tfs "Unit Tests" name: Run Unit Tests (Electron) # - run: yarn test-browser --browser chromium {{SQL CARBON EDIT}} disable for now @TODO @anthonydresser # name: Run Unit Tests (Browser) # - run: .\scripts\test-integration.bat --tfs "Integration Tests" {{SQL CARBON EDIT}} remove step # name: Run Integration Tests (Electron) darwin: runs-on: macos-latest env: CHILD_CONCURRENCY: "1" GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} steps: - uses: actions/checkout@v2.2.0 - uses: actions/setup-node@v1 with: node-version: 10 # Increase timeout to get around latency issues when fetching certain packages - run: | yarn config set network-timeout 300000 yarn --frozen-lockfile name: Install Dependencies - run: yarn electron x64 name: Download Electron - run: yarn gulp hygiene name: Run Hygiene Checks - run: yarn strict-vscode # {{SQL CARBON EDIT}} add step name: Run Strict Compile Options # - run: yarn monaco-compile-check {{SQL CARBON EDIT}} remove step # name: Run Monaco Editor Checks - run: yarn valid-layers-check name: Run Valid Layers Checks - run: yarn compile name: Compile Sources # - run: yarn download-builtin-extensions {{SQL CARBON EDIT}} remove step # name: Download Built-in Extensions - run: ./scripts/test.sh --tfs "Unit Tests" name: Run Unit Tests (Electron) # - run: yarn test-browser --browser chromium --browser webkit # name: Run Unit Tests (Browser) # - run: ./scripts/test-integration.sh --tfs "Integration Tests" # name: Run Integration Tests (Electron) # monaco: # runs-on: ubuntu-latest # env: # CHILD_CONCURRENCY: "1" # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # steps: # - uses: actions/checkout@v2.2.0 # # TODO: rename azure-pipelines/linux/xvfb.init to github-actions # - run: | # sudo apt-get update # sudo apt-get install -y libxkbfile-dev pkg-config libsecret-1-dev libxss1 dbus xvfb libgtk-3-0 libgbm1 # sudo cp build/azure-pipelines/linux/xvfb.init /etc/init.d/xvfb # sudo chmod +x /etc/init.d/xvfb # sudo update-rc.d xvfb defaults # sudo service xvfb start # name: Setup Build Environment # - uses: actions/setup-node@v1 # with: # node-version: 10 # - run: yarn --frozen-lockfile # name: Install Dependencies # - run: yarn monaco-compile-check # name: Run Monaco Editor Checks # - run: yarn gulp editor-esm-bundle # name: Editor Distro & ESM Bundle