ci.yml 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. name: CI
  2. on:
  3. pull_request:
  4. paths-ignore:
  5. - 'build/**'
  6. - 'docs/**'
  7. - 'files/**'
  8. push:
  9. paths-ignore:
  10. - 'build/**'
  11. - 'docs/**'
  12. - 'files/**'
  13. jobs:
  14. lint:
  15. name: "Linting"
  16. runs-on: ubuntu-latest
  17. steps:
  18. - name: Git checkout
  19. uses: actions/checkout@v2
  20. - name: Install node
  21. uses: actions/setup-node@v1
  22. with:
  23. node-version: 10
  24. - name: Install packages
  25. run: npm ci
  26. - name: === Linting ===
  27. run: npm run test-lint
  28. unit:
  29. name: "Unit testing"
  30. runs-on: ubuntu-latest
  31. steps:
  32. - name: Git checkout
  33. uses: actions/checkout@v2
  34. - name: Install node
  35. uses: actions/setup-node@v1
  36. with:
  37. node-version: 10
  38. - name: Install packages
  39. run: npm ci && npm ci --prefix test
  40. - name: Build
  41. run: npm run build
  42. - name: === Unit testing ===
  43. run: npm run test-unit
  44. e2e:
  45. name: "E2E testing"
  46. runs-on: ubuntu-latest
  47. strategy:
  48. matrix:
  49. CI: [ 0, 1, 2, 3 ]
  50. env:
  51. CI: ${{ matrix.CI }}
  52. FORCE_COLOR: 1
  53. steps:
  54. - name: Git checkout
  55. uses: actions/checkout@v2
  56. - name: Install node
  57. uses: actions/setup-node@v1
  58. with:
  59. node-version: 10
  60. - name: Install packages
  61. run: npm ci && npm ci --prefix test && sudo apt-get install xvfb
  62. - name: Build
  63. run: npm run build
  64. - name: === E2E testing ===
  65. run: xvfb-run --auto-servernum npm run test-e2e
  66. e2e-cov:
  67. name: "Ready for release"
  68. runs-on: ubuntu-latest
  69. steps:
  70. - name: Git checkout
  71. uses: actions/checkout@v2
  72. - name: Install node
  73. uses: actions/setup-node@v1
  74. with:
  75. node-version: 10
  76. - name: Install packages
  77. run: npm ci
  78. - name: === Ready for release ===
  79. run: npm run test-e2e-cov