nss.yml 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. name: nss interop Tests
  2. ### TODO uncomment stuff
  3. # START OF COMMON SECTION
  4. on:
  5. push:
  6. branches: [ 'master', 'main', 'release/**' ]
  7. pull_request:
  8. branches: [ '*' ]
  9. concurrency:
  10. group: ${{ github.workflow }}-${{ github.ref }}
  11. cancel-in-progress: true
  12. # END OF COMMON SECTION
  13. env:
  14. NSS_REF: NSS_3_107_RTM
  15. jobs:
  16. build_nss:
  17. name: Build nss
  18. if: github.repository_owner == 'wolfssl'
  19. runs-on: ubuntu-22.04
  20. # This should be a safe limit for the tests to run.
  21. timeout-minutes: 30
  22. steps:
  23. - name: Checking if we have nss in cache
  24. uses: actions/cache@v4
  25. id: cache
  26. with:
  27. path: dist
  28. key: nss-${{ env.NSS_REF }}
  29. lookup-only: true
  30. - name: Install dependencies
  31. if: steps.cache.outputs.cache-hit != 'true'
  32. run: |
  33. # Don't prompt for anything
  34. export DEBIAN_FRONTEND=noninteractive
  35. sudo apt-get update
  36. # hostap dependencies
  37. sudo apt-get install -y gyp ninja-build
  38. - name: Checkout nss
  39. if: steps.cache.outputs.cache-hit != 'true'
  40. uses: actions/checkout@v4
  41. with:
  42. repository: nss-dev/nss
  43. ref: ${{ env.NSS_REF }}
  44. path: nss
  45. - name: Compile nss
  46. if: steps.cache.outputs.cache-hit != 'true'
  47. run: |
  48. hg clone https://hg.mozilla.org/projects/nspr
  49. cd nss
  50. ./build.sh
  51. nss_test:
  52. name: Test interop with nss
  53. runs-on: ubuntu-22.04
  54. needs: build_nss
  55. timeout-minutes: 10
  56. if: github.repository_owner == 'wolfssl'
  57. steps:
  58. - name: Checking if we have nss in cache
  59. uses: actions/cache/restore@v4
  60. id: cache
  61. with:
  62. path: dist
  63. key: nss-${{ env.NSS_REF }}
  64. fail-on-cache-miss: true
  65. - name: Build wolfSSL
  66. uses: wolfSSL/actions-build-autotools-project@v1
  67. with:
  68. path: wolfssl
  69. configure: --enable-dtls --enable-dtls13
  70. install: false
  71. check: false
  72. - name: Test interop
  73. run: bash wolfssl/.github/workflows/nss.sh
  74. - name: print server logs
  75. if: ${{ failure() }}
  76. run: |
  77. cat /tmp/server.log