Skip to content

Consider updating Docker CI flow between several p4lang projects to use Ubuntu 24.04, instead of current Ubuntu 20.04 #38

@jafingerhut

Description

@jafingerhut

If I understand what we have now, it was created by Antonin Bas, and has the following "flow":

At one time, the p4lang/p4c repo used that p4lang/behavioral-model Docker image to run p4c CI tests, but I think it has been a while since it switched to using Ubuntu deb packages installed via the apt-get command. Unfortunately those deb packages have not been updated since August 2023. The person who was generating them appears to have moved on to other things, and no one else has chosen to update them.

Recently I have propopsed to the P4 Governance Board an idea from Fabian Ruffy: hire someone part time whose main job will be to maintain the CI infrastructure of multiple p4lang projects, including at least all of the ones mentioned above. Sure, if volunteers are willing to do it, great, or if companies are willing to pay people to do this part-time, excellent, but that has been a very short list of people over the last 5 years (mostly Antonin Bas and Fabian Ruffy). The P4 Governance Board sounds open to the idea of paying some money for a qualified person to work on this, but selecting a qualified person has only barely started, and I do not know how long it will take.

All of that said, if there is some specific flow of compute jobs that you are interested in creating automation for, in a way that you believe others will be able to maintain and enhance later, let us know. There are many choices besides Docker, I am sure, but I don't have good enough knowledge of the alernatives to compare and contrast those choices.

Here are some PRs and branches started by Andy Fingerhut in early 2025 that are an attempt to create modifications to the Dockerfiles mentioned above, that start with ubuntu24.04 instead of ubuntu20.04. They do not yet achieve a working build for all of the p4lang repos involved:

Metadata

Metadata

Assignees

No one assigned

    Labels

    smalltaskA task that appears to require a small amount of work

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions