setup CI/CD for kernel development - added CodeQL for code scanning - every pr is built as an image and is available for 30days on https://oklinux.dev - tagged and released on github for now Signed-off-by: sevki <s@sevki.io>
51 lines
1.3 KiB
YAML
51 lines
1.3 KiB
YAML
name: Build PR
|
|
on:
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
build_kernel:
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: debian:latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
- name: Set up okLinux environment
|
|
run: |
|
|
./deps
|
|
cd kernel
|
|
export CHROMEOS_KERNEL_FAMILY=termina
|
|
- name: Prepare kernel configuration
|
|
run: make olddefconfig
|
|
|
|
- name: Build kernel image
|
|
run: make -j$(nproc) bzImage
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: x86_64
|
|
path: arch/x86_64
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: bzImage
|
|
path: arch/x86_64/boot/bzImage
|
|
build_kernel_docs:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
- name: Setup Pages
|
|
uses: actions/configure-pages@v4
|
|
- name: Setup okLinux environment
|
|
run: |
|
|
./docdeps
|
|
/usr/bin/python3 -m venv sphinx
|
|
. sphinx/bin/activate
|
|
pip install -r ./Documentation/sphinx/requirements.txt
|
|
make htmldocs
|
|
- name: Upload artifact
|
|
uses: actions/upload-pages-artifact@v3
|
|
with:
|
|
path: './Documentation/output'
|