mirror of
https://github.com/falcosecurity/falco.git
synced 2026-02-21 14:13:27 +00:00
111 lines
2.9 KiB
YAML
111 lines
2.9 KiB
YAML
name: CI Build
|
|
on:
|
|
pull_request:
|
|
branches: [master]
|
|
push:
|
|
branches: [master]
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build-minimal:
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
ref: ${{ github.event.pull_request.head.sha }}
|
|
|
|
- name: Update base image
|
|
run: sudo apt update -y
|
|
|
|
- name: Install build dependencies
|
|
run: sudo DEBIAN_FRONTEND=noninteractive apt install libjq-dev libyaml-cpp-dev libelf-dev cmake build-essential git -y
|
|
|
|
- name: Prepare project
|
|
run: |
|
|
mkdir build-minimal
|
|
pushd build-minimal
|
|
cmake -DMINIMAL_BUILD=On -DBUILD_BPF=Off -DBUILD_DRIVER=Off -DCMAKE_BUILD_TYPE=Release ..
|
|
popd
|
|
|
|
- name: Build
|
|
run: |
|
|
pushd build-minimal
|
|
make -j4 all
|
|
popd
|
|
|
|
- name: Run unit tests
|
|
run: |
|
|
pushd build-minimal
|
|
make tests
|
|
popd
|
|
|
|
build-ubuntu-focal:
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
ref: ${{ github.event.pull_request.head.sha }}
|
|
|
|
- name: Update base image
|
|
run: sudo apt update -y
|
|
|
|
- name: Install build dependencies
|
|
run: sudo DEBIAN_FRONTEND=noninteractive apt install libssl-dev libyaml-dev libc-ares-dev libprotobuf-dev protobuf-compiler libjq-dev libyaml-cpp-dev libgrpc++-dev protobuf-compiler-grpc rpm libelf-dev cmake build-essential libcurl4-openssl-dev linux-headers-$(uname -r) clang llvm git -y
|
|
|
|
- name: Prepare project
|
|
run: |
|
|
mkdir build
|
|
pushd build
|
|
cmake -DBUILD_BPF=On ..
|
|
popd
|
|
|
|
- name: Build
|
|
run: |
|
|
pushd build
|
|
KERNELDIR=/lib/modules/$(uname -r)/build make -j4 all
|
|
popd
|
|
|
|
- name: Run unit tests
|
|
run: |
|
|
pushd build
|
|
make tests
|
|
popd
|
|
|
|
build-ubuntu-focal-debug:
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
ref: ${{ github.event.pull_request.head.sha }}
|
|
|
|
- name: Update base image
|
|
run: sudo apt update -y
|
|
|
|
- name: Install build dependencies
|
|
run: sudo DEBIAN_FRONTEND=noninteractive apt install libssl-dev libyaml-dev libc-ares-dev libprotobuf-dev protobuf-compiler libjq-dev libyaml-cpp-dev libgrpc++-dev protobuf-compiler-grpc rpm libelf-dev cmake build-essential libcurl4-openssl-dev linux-headers-$(uname -r) clang llvm git -y
|
|
|
|
- name: Prepare project
|
|
run: |
|
|
mkdir build
|
|
pushd build
|
|
cmake -DCMAKE_BUILD_TYPE=debug -DBUILD_BPF=On ..
|
|
popd
|
|
|
|
- name: Build
|
|
run: |
|
|
pushd build
|
|
KERNELDIR=/lib/modules/$(uname -r)/build make -j4 all
|
|
popd
|
|
|
|
- name: Run unit tests
|
|
run: |
|
|
pushd build
|
|
make tests
|
|
popd
|