Currently we do not have pre-commit testing mechanism for our src tree. These scripts which are primarily based on the scripts that run on our Jenkins system are modified to handle the same tests in CIRRUS-CI gcp cloud through Github.
Limitations of the scripts:
- Currently only works on amd64 and i386. Our aarch64/arm64 test requires somewhere near 4+ hours which is not supported by CIRRUS-CI hosted systems yet as the hard limitation is 120m. But in future we can try to do this using hosted arm system with AWS.
- Currently only works with main branch, stable/12 and stable/13 has not yet been processed. As the scripts are different.
- Github pull requests are not handled by these scripts yet. In the future if we plan on migrating to Github we will reconsider this.
- Junit artifacts are currently not handled by this due to a bug in the CIRRUS-CI.
- Currently one big limitation is a fixed name of working tree which is jarvis. As we have our own smoke tests on CIRRUS and we have lots of branches it's a bit difficult to isolate the other branches being built. Hence I had to hard code a branch name and the pre-commit tests will run only if committed with that branch.