DBSQLOperation Refactoring (3 of 3) #608
Workflow file for this run
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: test | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Cache node modules | |
uses: actions/cache@v3 | |
env: | |
cache-name: cache-node-modules | |
with: | |
path: ~/.npm | |
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-build-${{ env.cache-name }}- | |
${{ runner.os }}-build- | |
${{ runner.os }}- | |
- name: Check code style | |
run: | | |
npm ci | |
npm run prettier | |
npm run lint | |
unit-test: | |
runs-on: ubuntu-latest | |
env: | |
cache-name: cache-node-modules | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Cache node modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.npm | |
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-build-${{ env.cache-name }}- | |
${{ runner.os }}-build- | |
${{ runner.os }}- | |
- name: Run unit tests | |
run: | | |
npm ci | |
npm run test | |
- run: tar -cvf coverage_unit.tar coverage_unit | |
- name: Store coverage report | |
uses: actions/upload-artifact@v3 | |
with: | |
name: coverage_unit | |
path: coverage_unit.tar | |
retention-days: 1 | |
e2e-test: | |
runs-on: ubuntu-latest | |
environment: azure-prod | |
env: | |
E2E_HOST: ${{ secrets.DATABRICKS_HOST }} | |
E2E_PATH: ${{ secrets.TEST_PECO_WAREHOUSE_HTTP_PATH }} | |
E2E_ACCESS_TOKEN: ${{ secrets.DATABRICKS_TOKEN }} | |
E2E_TABLE_SUFFIX: ${{github.sha}} | |
cache-name: cache-node-modules | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Cache node modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.npm | |
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-build-${{ env.cache-name }}- | |
${{ runner.os }}-build- | |
${{ runner.os }}- | |
- name: Run e2e tests | |
run: | | |
npm ci | |
NODE_OPTIONS="--max-old-space-size=4096" npm run e2e | |
- run: tar -cvf coverage_e2e.tar coverage_e2e | |
- name: Store coverage report | |
uses: actions/upload-artifact@v3 | |
with: | |
name: coverage_e2e | |
path: coverage_e2e.tar | |
retention-days: 1 | |
coverage: | |
needs: [unit-test, e2e-test] | |
runs-on: ubuntu-latest | |
env: | |
cache-name: cache-node-modules | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Cache node modules | |
uses: actions/cache@v3 | |
with: | |
path: ~/.npm | |
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-build-${{ env.cache-name }}- | |
${{ runner.os }}-build- | |
${{ runner.os }}- | |
- uses: actions/download-artifact@v3 | |
with: | |
name: coverage_unit | |
- uses: actions/download-artifact@v3 | |
with: | |
name: coverage_e2e | |
- run: tar -xvf coverage_unit.tar && rm coverage_unit.tar | |
- run: tar -xvf coverage_e2e.tar && rm coverage_e2e.tar | |
- name: Coverage | |
uses: codecov/codecov-action@v3 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
fail_ci_if_error: true | |
verbose: true |