new file mode 100644
@@ -0,0 +1,27 @@
+name: 'setup Fedora'
+description: 'Setup a Fedora container for running CI'
+runs:
+ using: 'composite'
+ steps:
+ - name: Install dependencies
+ shell: bash
+ run: |
+ dnf update -y
+ dnf install -y \
+ autoconf \
+ automake \
+ make \
+ gcc \
+ kernel-devel \
+ zlib-devel \
+ xz-devel \
+ libzstd-devel \
+ openssl-devel \
+ gtk-doc \
+ libtool \
+ scdoc
+ # CI builds with KDIR pointing to /usr/lib/modules/*/build
+ # so just a foo/build pointing to the right place, assuming
+ # just one kernel installed
+ mkdir -p /usr/lib/modules/foo/
+ ln -s /usr/src/kernels/* /usr/lib/modules/foo/build
@@ -11,7 +11,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
- container: ['ubuntu:22.04', 'ubuntu:24.04', 'archlinux:base-devel']
+ container: ['ubuntu:22.04', 'ubuntu:24.04', 'archlinux:base-devel', 'fedora:latest']
container:
image: ${{ matrix.container }}
@@ -23,6 +23,8 @@ jobs:
if: ${{ startsWith(matrix.container, 'ubuntu') }}
- uses: ./.github/actions/setup-archlinux
if: ${{ startsWith(matrix.container, 'archlinux') }}
+ - uses: ./.github/actions/setup-fedora
+ if: ${{ startsWith(matrix.container, 'fedora') }}
- name: configure
run: |
Add an action to setup latest Fedora and use it for the initial setup. Add hack on /usr/lib/modules so /usr/lib/modules/*/build can still be used in the rest of the workflow as the KDIR. Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com> --- .github/actions/setup-fedora/action.yml | 27 +++++++++++++++++++++++++ .github/workflows/main.yml | 4 +++- 2 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 .github/actions/setup-fedora/action.yml