Skip to content

remove dependency on cstruct, use string and bytes instead #79

remove dependency on cstruct, use string and bytes instead

remove dependency on cstruct, use string and bytes instead #79

Workflow file for this run

name: End-to-end interoperability testing
on: [pull_request]
jobs:
tests:
name: End-to-end test
strategy:
fail-fast: false
matrix:
ocaml-version: ["4.14.2"]
operating-system: [ubuntu-latest]
runs-on: ${{ matrix.operating-system }}
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Use OCaml ${{ matrix.ocaml-version }}
uses: ocaml/setup-ocaml@v2
with:
ocaml-compiler: ${{ matrix.ocaml-version }}
- name: Install openvpn
run: |
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://swupdate.openvpn.net/repos/repo-public.gpg | gpg --dearmor | sudo tee -a /etc/apt/keyrings/openvpn-repo-public.gpg > /dev/null
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/openvpn-repo-public.gpg] https://build.openvpn.net/debian/openvpn/stable jammy main" | sudo tee -a /etc/apt/sources.list.d/openvpn-aptrepo.list > /dev/null
sudo apt-get update
sudo apt-get install openvpn
- name: Install dependencies
run: |
opam install --deps-only -t .
opam install bisect_ppx
- name: Build
run: opam exec -- dune build --instrument-with bisect_ppx @all
- name: Testing
run: |
opam exec -- dune runtest --instrument-with bisect_ppx
opam exec -- dune exec bench/bench_engine.exe
sudo ip tuntap add mode tun e2e-test
( cd test/e2e && sudo ./test-client.sh e2e-test; )
( cd test/e2e && sudo ./test-server.sh e2e-test; )
echo '```' > code-coverage-results.md
opam exec -- ./coverage.sh >> code-coverage-results.md
echo '```' >> code-coverage-results.md
- name: Add Coverage PR Comment
uses: marocchino/sticky-pull-request-comment@v2
if: github.event_name == 'pull_request'
with:
recreate: true
path: code-coverage-results.md
- name: Write to Job Summary
run: cat code-coverage-results.md >> $GITHUB_STEP_SUMMARY