You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

node-tests.yml 3.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. name: Node tests
  2. on:
  3. pull_request:
  4. push:
  5. branches:
  6. - master
  7. - stable*
  8. jobs:
  9. versions:
  10. runs-on: ubuntu-latest
  11. if: ${{ github.repository_owner != 'nextcloud-gmbh' }}
  12. outputs:
  13. nodeVersion: ${{ steps.versions.outputs.nodeVersion }}
  14. npmVersion: ${{ steps.versions.outputs.npmVersion }}
  15. steps:
  16. - name: Checkout
  17. uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
  18. - name: Read package.json node and npm engines version
  19. uses: skjnldsv/read-package-engines-version-actions@8205673bab74a63eb9b8093402fd9e0e018663a1
  20. id: versions
  21. with:
  22. fallbackNode: '^16'
  23. fallbackNpm: '^7'
  24. test:
  25. runs-on: ubuntu-latest
  26. needs: versions
  27. env:
  28. CYPRESS_INSTALL_BINARY: 0
  29. steps:
  30. - name: Checkout
  31. uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
  32. - name: Set up node ${{ needs.versions.outputs.nodeVersion }}
  33. uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d
  34. with:
  35. node-version: ${{ needs.versions.outputs.nodeVersion }}
  36. - name: Set up npm ${{ needs.versions.outputs.npmVersion }}
  37. run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
  38. - name: Install dependencies
  39. run: npm ci
  40. - name: Show cypress version
  41. run: npm run cypress:version
  42. - name: Test and process coverage
  43. run: npm run test:coverage
  44. - name: Collect coverage
  45. uses: codecov/codecov-action@eaaf4bedf32dbdc6b720b63067d99c4d77d6047d # v3.1.4
  46. with:
  47. files: ./coverage/lcov.info
  48. jsunit:
  49. runs-on: ubuntu-latest
  50. needs: versions
  51. env:
  52. CYPRESS_INSTALL_BINARY: 0
  53. steps:
  54. - name: Checkout
  55. uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
  56. - name: Set up node ${{ needs.versions.outputs.nodeVersion }}
  57. uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d
  58. with:
  59. node-version: ${{ needs.versions.outputs.nodeVersion }}
  60. - name: Set up npm ${{ needs.versions.outputs.npmVersion }}
  61. run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
  62. - name: Install dependencies
  63. run: npm ci
  64. - name: Show cypress version
  65. run: npm run cypress:version
  66. - name: Test
  67. run: npm run test:jsunit
  68. handlebars:
  69. runs-on: ubuntu-latest
  70. needs: versions
  71. env:
  72. CYPRESS_INSTALL_BINARY: 0
  73. steps:
  74. - name: Checkout
  75. uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11
  76. - name: Set up node ${{ needs.versions.outputs.nodeVersion }}
  77. uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d
  78. with:
  79. node-version: ${{ needs.versions.outputs.nodeVersion }}
  80. - name: Set up npm ${{ needs.versions.outputs.npmVersion }}
  81. run: npm i -g npm@"${{ needs.versions.outputs.npmVersion }}"
  82. - name: Install dependencies
  83. run: npm ci
  84. - name: Show cypress version
  85. run: npm run cypress:version
  86. - name: Run compile
  87. run: ./build/compile-handlebars-templates.sh