libssh2.yml 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  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. if: github.repository_owner == 'wolfssl'
  17. runs-on: ubuntu-latest
  18. # This should be a safe limit for the tests to run.
  19. timeout-minutes: 4
  20. steps:
  21. - name: Build wolfSSL
  22. uses: wolfSSL/actions-build-autotools-project@v1
  23. with:
  24. path: wolfssl
  25. configure: --enable-all
  26. check: false # config is already tested in many other PRB's
  27. install: true
  28. - name: tar build-dir
  29. run: tar -zcf build-dir.tgz build-dir
  30. - name: Upload built lib
  31. uses: actions/upload-artifact@v4
  32. with:
  33. name: wolf-install-libssh2
  34. path: build-dir.tgz
  35. retention-days: 5
  36. libssh2_check:
  37. strategy:
  38. fail-fast: false
  39. matrix:
  40. # List of releases to test
  41. ref: [ 1.11.0 ]
  42. name: ${{ matrix.ref }}
  43. if: github.repository_owner == 'wolfssl'
  44. runs-on: ubuntu-latest
  45. # This should be a safe limit for the tests to run.
  46. timeout-minutes: 8
  47. needs: build_wolfssl
  48. steps:
  49. - name: Download lib
  50. uses: actions/download-artifact@v4
  51. with:
  52. name: wolf-install-libssh2
  53. - name: untar build-dir
  54. run: tar -xf build-dir.tgz
  55. - name: Build and test libssh2
  56. uses: wolfSSL/actions-build-autotools-project@v1
  57. with:
  58. repository: libssh2/libssh2
  59. ref: libssh2-${{ matrix.ref }}
  60. path: libssh2
  61. configure: --with-crypto=wolfssl --with-libwolfssl-prefix=$GITHUB_WORKSPACE/build-dir
  62. check: true
  63. - name: Confirm libssh2 built with wolfSSL
  64. working-directory: ./libssh2
  65. run: ldd src/.libs/libssh2.so | grep wolfssl