# Simple CI - Takeaways ## Basic idea for drist-like interface: * Instead of having big Makefile logic, symlink the subdirectories into like /build/linux-kernel. Then the CI daemon knows to go to /build and run "make" in the "linux-kernel" directory - Not all software just uses make, so there is more steps to this - Probably better to avoid a daemon * So you have your old tree, identify easily buildable modules which need to be controlled with CI, symlink from there to drist-ci * For pull/management/users, everyone keeps their repository and the build system pulls in - Should rather be ran from a central place with git hooks where everyone is collaborating on the same git repo - KatolaZ wrote some software called scorsh which might help with inspiration ## Various * Use make and mail? - Too much overhead, and you're probably running it on a remote system * Reduce all problems to sub parts, which return some error code or not * If the error code appears, post the output to some UI, like some email/rss - Also consider the possibility/necessity of "live" output * queuing is only necessary if test execution load is close to compute capability - Consider torque/maui or slurm which schedule execution * build artifacts should be pulled with some regex * See Evil_Bob's suckless patch interface - https://gunther.suckless.org/patches/ * git hook could signal the queue system, or just execute drist(?) * Premium development support is 20k EUR per month ## TODO * Write a proof of concept for bitreich's git repositories