-
-
Notifications
You must be signed in to change notification settings - Fork 3
Description
The current runner image was the best compromise of reasonable size and low effort for setting it up. However, it is still ~350 MB, which is a lot for what it does. It should be possible to bring it down to under 100 MB by using something like alpine as a base and building a custom GCC. Maybe we could even use something like tcc to get it even smaller. After all, we only need C for the tests, so tcc would most probably suffice.
Also, we add > 40 MB for Python which we only use to read the test output and turn it into the expected JSON format. Using some compiled language to produce a binary we should get away with much less. C++ would be quite easy for this, we could even keep the regular expressions we currently have in Python. This could happen in a two-stage image build, so only the final executable would end up in runner image.
@keiravillekode What do you think?