Re: [PATCH dwarves 0/2] dwarves: Introduce github actions for CI

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 3/6/25 9:04 AM, Alan Maguire wrote:
> libbpf and bpf kernel patch infrastructure have made great use
> of github actions to provide continuous integration (CI) testing.
> Here the libbpf CI is adapted to build pahole and run the associated
> selftests.  Examples of what the action workflows look like are
> at [1] and [2].
>
> Details about the workflows can be found in patch 1.
>
> Patch 2 fixes an issue exposed by the dwarves-build workflow -
> a compilation error when building dwarves with clang.
>
>
> [1] https://github.com/alan-maguire/dwarves/actions/runs/13588880188
> [2] https://github.com/alan-maguire/dwarves/actions/runs/13588880200

Hi Alan. This is great! Glad to see you're working on it.

I haven't read through the changes yet, but I already see that most of
the CI code was copied from libbpf. Just want to note that you might
not want to reproduce all the workflows from there in dwarves. And
also there are inconveniences with local actions and ci/managers
etc. I think it's worth it to try and eliminate as much of that code
as possible, given you're starting from a blank slate.

If you haven't done so already, you might want to check out "pahole
staging" job that I tried on BPF CI infrastructure some time ago:
https://github.com/kernel-patches/vmtest/pull/330/files

It's a bit different from libbpf, as it reuses BPF CI workflows. But
you might get some ideas there about simplifying dwarves CI.

Another question is: are you sure about merging CI code upstream? Both
for libbpf and kernel-patches/bpf the CI code lives independently of
upstream and is synced from time to time on github. My guess is, it's
because .github code is unlikely to get merged into the main Linux
tree (which also makes sense).

>
> Alan Maguire (2):
>   dwarves: Add github actions to build, test
>   dwarves: Fix clang warning about unused variable
>
>  .github/actions/debian/action.yml | 16 ++++++
>  .github/actions/setup/action.yml  | 23 ++++++++
>  .github/workflows/build.yml       | 37 ++++++++++++
>  .github/workflows/codeql.yml      | 53 +++++++++++++++++
>  .github/workflows/coverity.yml    | 33 +++++++++++
>  .github/workflows/lint.yml        | 20 +++++++
>  .github/workflows/ondemand.yml    | 31 ++++++++++
>  .github/workflows/test.yml        | 36 ++++++++++++
>  .github/workflows/vmtest.yml      | 94 +++++++++++++++++++++++++++++++
>  ci/managers/debian.sh             | 88 +++++++++++++++++++++++++++++
>  ci/managers/travis_wait.bash      | 61 ++++++++++++++++++++
>  dwarves_fprintf.c                 |  2 +-
>  12 files changed, 493 insertions(+), 1 deletion(-)
>  create mode 100644 .github/actions/debian/action.yml
>  create mode 100644 .github/actions/setup/action.yml
>  create mode 100644 .github/workflows/build.yml
>  create mode 100644 .github/workflows/codeql.yml
>  create mode 100644 .github/workflows/coverity.yml
>  create mode 100644 .github/workflows/lint.yml
>  create mode 100644 .github/workflows/ondemand.yml
>  create mode 100644 .github/workflows/test.yml
>  create mode 100644 .github/workflows/vmtest.yml
>  create mode 100755 ci/managers/debian.sh
>  create mode 100644 ci/managers/travis_wait.bash
>





[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux