On Fri, Aug 02, 2019 at 04:06:50PM -0700, Jonathan Nieder wrote: > SZEDER Gábor wrote: > > On Thu, Aug 01, 2019 at 06:52:47PM -0700, Jonathan Nieder wrote: > > >> Gábor, if we introduce such a parameter, do you think it would make > >> sense for us to set up a worker that passes it? > > > > That would be even worse than the current approach of the third patch, > > because the additional worker would have to install dependencies, > > build Git and run the test suite, in addition to the enormous overhead > > of redundantly validating the trace output of every git command > > executed during 'make test'. So instead of adding "only" 10 minutes > > to every build, it would add over 20. > > Thanks, that's helpful to know. > > It sounds like if we want to run this kind of expensive test in CI, we > would want to set it up differently: e.g. daily runs against "pu" > instead of running on every push. OK, I think that sounds acceptable, though I would suggest to: - Limit it to 'git/git's 'pu' branch, so others can have their own 'pu' branch without suffering from the consequences. It seems easy to do so, on Travis CI these are available in the TRAVIS_BRANCH and TRAVIS_REPO_SLUG environment variables. I'm not sure what are the equivalent variables on Azure Pipelines, though. - Additionally, check an environment variable with a name like GIT_CI_RUN_EXPENSIVE_JSON_SCHEMA_VALIDATION or something, and if set, then, well, run the schema validation anyway, no matter what repo and what branch is being checked. This way if a contributor cares about schema validation that deeply, then they can set this env var in Travis CI's repo settings panel for all or for specific branches, and thus enable validation on those branches of their git fork, without having to modify any files in the repository.