diff --git a/.github/workflows/macos-check.yml b/.github/workflows/macos-check.yml deleted file mode 100644 index 1dfb4e626..000000000 --- a/.github/workflows/macos-check.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: macOS Build Test - -on: - push: - branches: [ '*' ] - pull_request: - branches: [ '*' ] - -jobs: - build: - - runs-on: macos-latest - - steps: - - uses: actions/checkout@v2 - with: - repository: wolfSSL/wolfssl.git - ref: master - - name: brew - run: brew install autoconf automake libtool - - name: build wolfSSL - run: ./autogen.sh && ./configure --enable-wolfssh --enable-cryptonly && make check && sudo make install - - uses: actions/checkout@v2 - - name: configure - run: autoreconf -ivf && ./configure - - name: make - run: make - - name: make check - run: make check - - name: make distcheck - run: make distcheck - diff --git a/.github/workflows/os-check.yml b/.github/workflows/os-check.yml new file mode 100644 index 000000000..5db5697d4 --- /dev/null +++ b/.github/workflows/os-check.yml @@ -0,0 +1,75 @@ +name: OS Check Test + +on: + push: + branches: [ '*' ] + pull_request: + branches: [ '*' ] + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +env: + WOLFSSL_REF: v5.7.0-stable + +jobs: + build_wolfssl: + strategy: + fail-fast: false + matrix: + os: [ ubuntu-latest, macos-latest ] + name: Build wolfssl + runs-on: ${{ matrix.os }} + timeout-minutes: 4 + steps: + - name: Checking cache for wolfssl + uses: actions/cache@v4 + id: cache-wolfssl + with: + path: build-dir/ + key: wolfssh-os-check-wolfssl-${{ env.WOLFSSL_REF }}-${{ matrix.os }} + lookup-only: true + + - name: Checkout, build, and install wolfssl + if: steps.cache-wolfssl.outputs.cache-hit != 'true' + uses: wolfSSL/actions-build-autotools-project@v1 + with: + repository: wolfssl/wolfssl + ref: ${{ env.WOLFSSL_REF }} + path: wolfssl + configure: --enable-all + check: false + install: true + + build_wolfssh: + strategy: + fail-fast: false + matrix: + os: [ ubuntu-latest, macos-latest ] + config: [ + '', + '--enable-all', + '--enable-sftp', + '--enable-scp', + '--enable-shell', + ] + name: Build wolfssh + runs-on: ${{ matrix.os }} + timeout-minutes: 4 + needs: build_wolfssl + steps: + - name: Checking cache for wolfssl + uses: actions/cache@v4 + with: + path: build-dir/ + key: wolfssh-os-check-wolfssl-${{ env.WOLFSSL_REF }}-${{ matrix.os }} + fail-on-cache-miss: true + + - name: Checkout, build, and test wolfssh + uses: wolfSSL/actions-build-autotools-project@v1 + with: + repository: wolfssl/wolfssh + path: wolfssh + configure: ${{ matrix.config }} LDFLAGS="-L${{ github.workspace }}/build-dir/lib" CPPFLAGS="-I${{ github.workspace }}/build-dir/include" + check: true diff --git a/.github/workflows/ubuntu-check.yml b/.github/workflows/ubuntu-check.yml deleted file mode 100644 index 8f10e6564..000000000 --- a/.github/workflows/ubuntu-check.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: Ubuntu Build Test - -on: - push: - branches: [ '*' ] - pull_request: - branches: [ '*' ] - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - with: - repository: wolfSSL/wolfssl.git - ref: master - - name: build wolfSSL - run: ./autogen.sh && ./configure --enable-ssh --enable-cryptonly --prefix=/usr && make check && sudo make install - - uses: actions/checkout@v2 - - name: autogen - run: ./autogen.sh - - name: configure - run: ./configure - - name: make - run: make - - name: make check - run: make check - - name: make distcheck - run: make distcheck -