wireshark.yml edits #525
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: chrony Test | |
| # START OF COMMON SECTION | |
| on: | |
| push: | |
| branches: [ 'master', 'main', 'release/**' ] | |
| pull_request: | |
| branches: [ '*' ] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| # END OF COMMON SECTION | |
| jobs: | |
| build_gnutls: | |
| name: Build wolfSSL, GnuTLS and provider | |
| timeout-minutes: 20 | |
| strategy: | |
| matrix: | |
| os: [ ubuntu-latest ] | |
| chrony_ref: [ 'master', '4.3', '4.6.1' ] | |
| fail-fast: false | |
| runs-on: ${{ matrix.os }} | |
| container: | |
| image: debian:bookworm | |
| steps: | |
| - name: Checkout gnutls-wolfssl repository | |
| uses: actions/checkout@v4 | |
| - name: Ensure make available (Ubuntu only) | |
| if: matrix.os == 'ubuntu-latest' | |
| run: | | |
| apt-get update | |
| apt-get install -y build-essential | |
| - name: Install GnuTLS dependencies (Ubuntu only) | |
| if: matrix.os == 'ubuntu-latest' | |
| run: | | |
| apt-get install -y gnulib autopoint gperf gtk-doc-tools nettle-dev clang libtasn1-bin libtasn1-6-dev libunistring-dev libp11-kit-dev libunbound-dev sudo wget git | |
| - name: Install chrony dependencies (Ubuntu only) | |
| if: matrix.os == 'ubuntu-latest' | |
| run: | | |
| sudo apt-get install -y autoconf-archive | |
| - name: Restore cached gnutls-wolfssl | |
| id: cache-gnutls | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| /opt/gnutls | |
| /opt/wolfssl | |
| /opt/wolfssl-gnutls-wrapper | |
| key: gnutls-wolfssl-${{ runner.os }}-${{ hashFiles('setup.sh', 'wolfssl-gnutls-wrapper/**', 'wolfssl/**', 'gnutls/**') }} | |
| restore-keys: | | |
| gnutls-wolfssl-${{ runner.os }}- | |
| - name: Build GnuTLS with wolfSSL provider using setup.sh script | |
| if: steps.cache-gnutls.outputs.cache-hit != 'true' | |
| run: | | |
| echo "Running setup.sh..." | |
| GNUTLS_INSTALL=/opt/gnutls WOLFSSL_INSTALL=/opt/wolfssl ./setup.sh | |
| - name: Check setup.sh output directories | |
| run: | | |
| echo "Check for wolfSSL installation..." | |
| if [ ! -d /opt/wolfssl ]; then | |
| echo "/opt/wolfssl not found after setup" | |
| exit 1 | |
| fi | |
| echo "Check for GnuTLS installation..." | |
| if [ ! -d /opt/gnutls ]; then | |
| echo "/opt/gnutls not found after setup" | |
| exit 1 | |
| fi | |
| echo "Check for wrapper installation..." | |
| if [ ! -d /opt/wolfssl-gnutls-wrapper/lib ]; then | |
| echo "/opt/wolfssl-gnutls-wrapper/lib not found after setup" | |
| exit 1 | |
| fi | |
| - name: Build chrony at ${{ matrix.chrony_ref }} | |
| uses: actions/checkout@v4 | |
| with: | |
| repository: mlichvar/chrony | |
| ref: ${{ matrix.chrony_ref }} | |
| path: chrony | |
| - name: Configure chrony | |
| working-directory: chrony | |
| run: | | |
| export PKG_CONFIG_PATH=/opt/gnutls/lib/pkgconfig | |
| ./configure --without-nettle | |
| - name: Make chrony | |
| working-directory: chrony | |
| run: | | |
| make -j $(nproc) | |
| - name: Test chrony | |
| working-directory: chrony | |
| run: | | |
| export LD_LIBRARY_PATH=/opt/gnutls/lib:/opt/wolfssl/lib:/opt/wolfssl-gnutls-wrapper/lib | |
| make check |