Skip to content

Pull the jsl Python dependency separately for the Tofino back end. #4033

Pull the jsl Python dependency separately for the Tofino back end.

Pull the jsl Python dependency separately for the Tofino back end. #4033

name: "test-p4c-ubuntu-18.04"
on:
schedule:
# Every day on midnight UTC
- cron: "0 0 * * *"
pull_request:
branches: [main]
push:
branches: [main]
jobs:
# Build with GCC and test p4c on Ubuntu 18.04.
test-ubuntu18:
# Only run on pull requests with the "run-ubuntu18" label.
if: ${{ github.event_name == 'schedule' || contains(github.event.pull_request.labels.*.name, 'run-ubuntu18') }}
runs-on: ubuntu-latest
env:
CTEST_PARALLEL_LEVEL: 4
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
fetch-depth: 0
- name: ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: test-ubuntu-18.04-gcc
max-size: 1000M
- name: Build (Ubuntu 18.04, GCC)
run: |
docker build -t p4c --build-arg BASE_IMAGE=ubuntu:18.04 --build-arg IMAGE_TYPE=test \
--build-arg ENABLE_TEST_TOOLS=OFF .
./tools/export_ccache.sh
# run with sudo (...) --privileged
# this is needed to create network namespaces for the ebpf tests.
- name: Run tests (Ubuntu 18.04)
run: |
sudo -E docker run --privileged -w /p4c/build -e $CTEST_PARALLEL_LEVEL p4c ctest --output-on-failure --schedule-random