1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
name: CI
on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
jobs:
build-test-analyze:
name: Build, test, analyze
runs-on: ubuntu-latest
permissions:
security-events: write
actions: read
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
with:
languages: cpp
- name: Install prerequisites
run: |
sudo apt-get -qq update
sudo apt-get -qq install libssl-dev libev-dev libconfuse-dev
- name: Bootstrap and configure
run: |
./autogen.sh
./configure --enable-server
- name: Build
run: make
- name: Test
run: make check
- name: Perform CodeQL analysis
uses: github/codeql-action/analyze@v4
# Perl module
- name: Install Perl module prerequisites
run: sudo apt-get -qq install libextutils-pkgconfig-perl libdevel-checklib-perl
- name: Build Perl module
run: |
cd perl
perl Makefile.PL
make
# Python module
- name: Install Python module prerequisites
run: sudo apt-get -qq install python3-dev python3-setuptools
- name: Build Python module
run: |
cd python
python3 setup.py build_ext --inplace
|