Sorry, I used the wrong terminology in my original post. I meant portable source when I wrote distro and updated it later. The portable source is built on any platform, then for a specific platform this source is built into binary packages (
.deb for Ubuntu/Debian,
.rpm for Fedora/Readhat/Centos). I don’t think that the distro term is relevant here. It means distribution, which is Ubuntu XXX, Centos XXX, Fedora XXX etc. What ends up in them is beyond our control. E.g. in Ubuntu 18.04, it’s Graphviz 2.40.1 and in Ubuntu 20.04, it’s 2.43.0 (this is something I’d like to come back to later; how do we make sure updated Graphviz version gets picked up in the different distros?).
The portable source is just a tar.gz file and my question was whether we should include all test data in it or not.
CI is not any kind of container, it’s a process. In our CI/CD pipeline we first build the portable source on one platform and then the binary packages for each platform, then install those packages and run tests on them for each platform. In CI we could have had the choice to use test code and data from the portable source or from the git reop directly, but since we now have decided not to include all test data in the portable source, we must at least get that data from the git repo directly. My choice was then to get all test code and data from the git repo. Frankly, I think this is better for reasons I stated above.
For another user of the portable source, it’s still possible to run some of the tests from the portable source, but not those which are not (fully) included.
I think @Ellson can fill in why people want the portable source. I think its an old pattern that is still in use in different contexts, but I’m just guessing.