setup-build-env: consolidate package dependencies#186
Merged
Conversation
BPF CI self-hosted runner docker images moved to using setup-build-env scripts at build time [1]. Consolidate the list of packages to install in the action script. Signed-off-by: Ihor Solodrai <isolodrai@meta.com>
theihor
added a commit
to kernel-patches/vmtest
that referenced
this pull request
Jun 5, 2025
theihor
added a commit
to kernel-patches/vmtest
that referenced
this pull request
Jun 5, 2025
Move dependencies setup from action.yml to a shell script. Add iproute2 and friends to the list of installed packages. Signed-off-by: Ihor Solodrai <isolodrai@meta.com>
Signed-off-by: Ihor Solodrai <isolodrai@meta.com>
d519917 to
be71b47
Compare
theihor
added a commit
to kernel-patches/vmtest
that referenced
this pull request
Jun 5, 2025
This reverts commit 5e880db.
theihor
added a commit
to kernel-patches/runner
that referenced
this pull request
Jun 5, 2025
BPF CI uses various actions from libbpf/ci repo. Many of them have system package dependencies and usually action code installs what it needs itself. Our self-hosted runners are docker containers. We can take advantage of the fact that we control the docker image and pre-install common dependencies in the image, effectively caching them. So far this was done by hardcoding a list of some packages in dockerfiles. A better approach is to install exactly the same packages as libbpf/ci actions. The first attempt to do this [1] failed, because it turned out some dependencies (such as iproute2 needed for some BPF selftest) were only installed in the dockerfile, and not by a relevant action. Additionally s390x image broke because of missing dumb-init for a similar reason. Now that libbpf/ci part of these issues is fixed [2], let's update the dockerfiles. [1] #78 [2] libbpf/ci#186 Signed-off-by: Ihor Solodrai <isolodrai@meta.com>
theihor
added a commit
to kernel-patches/runner
that referenced
this pull request
Jun 6, 2025
BPF CI uses various actions from libbpf/ci repo. Many of them have system package dependencies and usually action code installs what it needs itself. Our self-hosted runners are docker containers. We can take advantage of the fact that we control the docker image and pre-install common dependencies in the image, effectively caching them. So far this was done by hardcoding a list of some packages in dockerfiles. A better approach is to install exactly the same packages as libbpf/ci actions. The first attempt to do this [1] failed, because it turned out some dependencies (such as iproute2 needed for some BPF selftest) were only installed in the dockerfile, and not by a relevant action. Additionally s390x image broke because of missing dumb-init for a similar reason. Now that libbpf/ci part of these issues is fixed [2], let's update the dockerfiles. [1] #78 [2] libbpf/ci#186 Signed-off-by: Ihor Solodrai <isolodrai@meta.com>
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
BPF CI self-hosted runner docker images moved to using setup-build-env scripts at build time [1]. Consolidate the list of packages to install in the action script.