libssh2.yml 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. name: libssh2 Tests
  2. # START OF COMMON SECTION
  3. on:
  4. push:
  5. branches: [ 'master', 'main', 'release/**' ]
  6. pull_request:
  7. branches: [ '*' ]
  8. concurrency:
  9. group: ${{ github.workflow }}-${{ github.ref }}
  10. cancel-in-progress: true
  11. # END OF COMMON SECTION
  12. jobs:
  13. build_wolfssl:
  14. name: Build wolfSSL
  15. # Just to keep it the same as the testing target
  16. runs-on: ubuntu-latest
  17. # This should be a safe limit for the tests to run.
  18. timeout-minutes: 4
  19. steps:
  20. - name: Build wolfSSL
  21. uses: wolfSSL/actions-build-autotools-project@v1
  22. with:
  23. path: wolfssl
  24. configure: --enable-all
  25. check: false # config is already tested in many other PRB's
  26. install: true
  27. - name: Upload built lib
  28. uses: actions/upload-artifact@v4
  29. with:
  30. name: wolf-install-libssh2
  31. path: build-dir
  32. retention-days: 5
  33. libssh2_check:
  34. strategy:
  35. fail-fast: false
  36. matrix:
  37. # List of releases to test
  38. ref: [ 1.11.0 ]
  39. name: ${{ matrix.ref }}
  40. runs-on: ubuntu-latest
  41. # This should be a safe limit for the tests to run.
  42. timeout-minutes: 8
  43. needs: build_wolfssl
  44. steps:
  45. - name: Download lib
  46. uses: actions/download-artifact@v4
  47. with:
  48. name: wolf-install-libssh2
  49. path: build-dir
  50. - name: Build and test libssh2
  51. uses: wolfSSL/actions-build-autotools-project@v1
  52. with:
  53. repository: libssh2/libssh2
  54. ref: libssh2-${{ matrix.ref }}
  55. path: libssh2
  56. configure: --with-crypto=wolfssl --with-libwolfssl-prefix=$GITHUB_WORKSPACE/build-dir
  57. check: true
  58. - name: Confirm libssh2 built with wolfSSL
  59. working-directory: ./libssh2
  60. run: ldd src/.libs/libssh2.so | grep wolfssl