| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- name: test_offline
- on:
- push:
- pull_request:
- workflow_dispatch:
- inputs:
- test_linux:
- description: 'Test on Linux'
- type: boolean
- default: true
- concurrency:
- group: ${{ github.workflow }}-${{ github.ref || github.run_id }}
- cancel-in-progress: true
- env:
- GTEST_FILTER: "-*.*_Online"
- jobs:
- ubuntu:
- runs-on: ubuntu-latest
- if: >
- (github.event_name == 'push') ||
- (github.event_name == 'pull_request' &&
- github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name) ||
- (github.event_name == 'workflow_dispatch' && github.event.inputs.test_linux == 'true')
- strategy:
- matrix:
- tls_backend: [openssl, no-tls]
- name: ubuntu (${{ matrix.tls_backend }})
- steps:
- - name: checkout
- uses: actions/checkout@v4
- - name: install common libraries
- run: |
- sudo apt-get update
- sudo apt-get install -y libcurl4-openssl-dev zlib1g-dev libbrotli-dev libzstd-dev
- - name: install OpenSSL
- if: matrix.tls_backend == 'openssl'
- run: sudo apt-get install -y libssl-dev
- - name: disable network
- run: sudo sh -c 'echo > /etc/resolv.conf'
- - name: build and run tests (OpenSSL)
- if: matrix.tls_backend == 'openssl'
- run: cd test && make
- env:
- LSAN_OPTIONS: suppressions=lsan_suppressions.txt
- - name: build and run tests (No TLS)
- if: matrix.tls_backend == 'no-tls'
- run: cd test && make test_no_tls && ./test_no_tls
|