deployment-info.json: Report the checkouts of the master branch

On the master branch of mediawiki/core, extensions, skins and vendor are
separate checkouts and not submodules (see prep._master_stuff), so the walk of
the gitlinks of a version directory reported none of them. On the beta cluster
this left out mediawiki/vendor, VisualEditor/VisualEditor, wikibase/termbox and
wikibase/new-lexeme-special-page.

collect_info() now also reports each of MEDIAWIKI_CHECKOUT_DIRS that is a
checkout of its own, with its submodules, and each child of those directories
that is a checkout. The scan of extensions and skins moves from
cache_git_info() to collect_info(), so the gitinfo cache files and
deployment-info.json always describe the same checkouts.

The scan skips dot directories now. A separate checkout of extensions or skins
has .git, which resolve_gitdir() accepts, so beta got a cache file for it.

Bug: T434726

Merge request reports

Loading