• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1name: Build CI
2
3on:
4  workflow_dispatch:
5  push:
6    branches: [ "master"]
7  pull_request:
8    branches: [ "master" ]
9
10env:
11  URING_VER: "2.2"
12
13jobs:
14  build:
15    runs-on: ubuntu-22.04
16    steps:
17    - name: "acquire: ubdsrv"
18      uses: actions/checkout@v3
19      with:
20        path: ubdsrv
21
22    - name: "acquire: liburing"
23      run: |
24        wget https://brick.kernel.dk/snaps/liburing-$URING_VER.tar.gz
25        tar xzvf liburing-$URING_VER.tar.gz
26
27    - name: "build: liburing"
28      working-directory: liburing-${{ env.URING_VER }}
29      shell: bash
30      run: |
31        ./configure
32        make -j$(nproc)
33        sudo make install
34
35    - name: "build: ubdsrv with --enable-debug"
36      working-directory: ubdsrv
37      run: |
38        LIBURING_DIR=${{ github.workspace }}/liburing-$URING_VER ./build_with_liburing_src --enable-debug
39
40    - name: "build: ubdsrv"
41      working-directory: ubdsrv
42      run: |
43        make distclean
44        LIBURING_DIR=${{ github.workspace }}/liburing-$URING_VER ./build_with_liburing_src
45
46    - name: "build: installable artifacts"
47      working-directory: ubdsrv
48      shell: bash
49      run: |
50        mkdir -p ${{ github.workspace }}/files
51        make DESTDIR=${{ github.workspace }}/files install
52
53    - name: "publish: installable artifacts"
54      uses: actions/upload-artifact@v3
55      with:
56        name: ubdsrv
57        if-no-files-found: error
58        path: ${{ github.workspace }}/files/**
59
60    - name: "publish: logs"
61      uses: actions/upload-artifact@v3
62      if: always()
63      with:
64        name: build-logs
65        if-no-files-found: ignore
66        path: ubdsrv/*.log
67