Hi everybody, I spent some time reading the previous discussions around the concept of "CI" and from what I gather, it seems that we didn't reach an agreement about how to proceed and who is working on it (but I might be wrong, in case apologies!). From what I can see, there are two possible working fronts:
1) Simplify the usage of the current perl testing suite, adding docs/tests/etc.. Some people expressed the desire for a more friendly framework, especially when adding new tests. 2) Run the testing framework automatically on different environments to spot anomalies/bugs/etc.. in a timely manner. I am a bit ignorant about how to run a proper CI but I created a little prototype of a Dockerfile able to bootstrap a testing environment on Debian 10 (Buster) and run the perl test suite: https://github.com/elukey/httpd_integration_testing/blob/master/docker/Dockerfile The above is only an example, it is missing a lot of things and some follow up work is needed. But with the following commands, on my laptop I was able to create a docker image and run the test suite: docker build . docker run $id-of-the-image make check Some thoughts: 1) The above Dockerfile is really handy since I can easily switch between Debian versions (Jessie/Stretch/Buster to name the last three) and run the test suite with different package versions (openssl, nghttp2, etc..). It should be also easy to create Dockerfiles for other OS/environments, and run make check in a similar way. 1-bis) Testing on Windows would still need to be solved, Docker probably it is not the right solution but we could find something else to integrate for this specific use case. 2) Docker also offers a way to open a bash shell in interactive mode, so it could be easy to run tests on a certain platform when somebody reports a problem. Or make sure that a new set of tests runs correctly everywhere. 3) Another use case could be to create a Dockerfile that pulls a specific new release of httpd, installing it and running the test suite on multiple platforms. 4) The same Docker image could also run tests suites like https://github.com/icing/mod_h2/tree/master/test/e2e (that is really nice, I suggest to check it if you haven't done it) to run HTTP/2 tests as well. 5) We could even think about having daily docker image builds that take a snapshot of trunk/2.4.x and run the test suites, reporting back any problem. Does the above make sense or it is completely out of scope for our project? In the former case I could spend some time on figuring out how to create what I proposed above, otherwise I'll stop and drop the idea :) Last but not the least, this would be a way to help us testing changes in a more automated way, not a replacement of community based testing and bug reports (stating the obvious for an Apache project but better safe than sorry :). Luca