veeam / blksnap

Nonpersistent block device snapshot with block-level change-tracking capabilities.
GNU General Public License v2.0
84 stars 22 forks source link

add initial build tests on push and PR #9

Closed Fantu closed 2 years ago

Fantu commented 2 years ago

@SergeiShtepa I did this initial build test to build on any push and PR on ubuntu 20.04 and ubuntu 22.04, the github action support also ubuntu 18.04 but on test it failed for older kernel not supported:

make: Entering directory '/usr/src/linux-headers-5.4.0-1086-azure'
  CC [M]  /home/runner/work/blksnap/blksnap/module/bdevfilter.o
  CC [M]  /home/runner/work/blksnap/blksnap/module/big_buffer.o
  CC [M]  /home/runner/work/blksnap/blksnap/module/cbt_map.o
/home/runner/work/blksnap/blksnap/module/bdevfilter.c:301:2: error: #error "Your kernel is too old for this module."
 #error "Your kernel is too old for this module."
  ^~~~~
In file included from ./include/linux/linkage.h:7:0,
                 from ./include/linux/kernel.h:8,
                 from ./include/linux/list.h:9,
                 from ./include/linux/module.h:9,
                 from /home/runner/work/blksnap/blksnap/module/bdevfilter.c:3:
/home/runner/work/blksnap/blksnap/module/bdevfilter.c:303:15: error: ‘submit_bio_noacct_notrace’ undeclared here (not in a function); did you mean ‘submit_bio_wait’?
 EXPORT_SYMBOL(submit_bio_noacct_notrace);
               ^
./include/linux/export.h:102:16: note: in definition of macro ‘___export_symbol_common’
  extern typeof(sym) sym;      \
                ^~~
./include/linux/export.h:169:34: note: in expansion of macro ‘___EXPORT_SYMBOL’
 #define __EXPORT_SYMBOL(sym,sec) ___EXPORT_SYMBOL(sym,sec)
                                  ^~~~~~~~~~~~~~~~
./include/linux/export.h:179:29: note: in expansion of macro ‘__EXPORT_SYMBOL’
 #define EXPORT_SYMBOL(sym)  __EXPORT_SYMBOL(sym, "")
                             ^~~~~~~~~~~~~~~
/home/runner/work/blksnap/blksnap/module/bdevfilter.c:303:1: note: in expansion of macro ‘EXPORT_SYMBOL’
 EXPORT_SYMBOL(submit_bio_noacct_notrace);
 ^~~~~~~~~~~~~
/home/runner/work/blksnap/blksnap/module/bdevfilter.c: In function ‘submit_bio_noacct_handler’:
/home/runner/work/blksnap/blksnap/module/bdevfilter.c:318:2: error: #error "Your kernel is too old for this module."
 #error "Your kernel is too old for this module."
  ^~~~~
/home/runner/work/blksnap/blksnap/module/bdevfilter.c:328:2: error: #error "Your kernel is too old for this module."
 #error "Your kernel is too old for this module."
  ^~~~~
/home/runner/work/blksnap/blksnap/module/bdevfilter.c: At top level:
/home/runner/work/blksnap/blksnap/module/bdevfilter.c:333:9: note: #pragma message: livepatch used
 #pragma message("livepatch used")
         ^~~~~~~
make[1]: *** [/home/runner/work/blksnap/blksnap/module/bdevfilter.o] Error 1
scripts/Makefile.build:270: recipe for target '/home/runner/work/blksnap/blksnap/module/bdevfilter.o' failed
make[1]: *** Waiting for unfinished jobs....
make: *** [/home/runner/work/blksnap/blksnap/module] Error 2
Makefile:1762: recipe for target '/home/runner/work/blksnap/blksnap/module' failed
make: Leaving directory '/usr/src/linux-headers-5.4.0-1086-azure'
SergeiShtepa commented 2 years ago

the github action support also ubuntu 18.04 but on test it failed for older kernel not supported:

yes, only 5.10+ kernels are supported.

Interesting files. But I don't understand their purpose yet. They won't appear in ubuntu repositories after that, will they? What will be the next step and what is the goal?

Fantu commented 2 years ago

are automatic tests for see build regression of new commits pushed and new pull requests opened, you can see the first executed in the commit you pushed merging this later I'll try to add more tests and checks that can help detect errors and regressions

about add in official debian and derivates repositories a good packaging following the debian policy must be done but I don't have enough time (in the actual state is also not fast to do good packaging), I maintain/comaintain/help already many other packages and I do also other things and I have too few time :(