HomePhabricator

Clone requirements from ext dependencies
a48ee8b3548eUnpublished

Authored by hashar on Apr 8 2019, 5:38 PM.

Unpublished Commit · Learn More

Not On Permanent Ref: This commit is not an ancestor of any permanent ref.
This commit has been deleted in the repository: it is no longer reachable from any branch, tag, or ref.

Description

Clone requirements from ext dependencies

[quibble/mediawiki/registry.py]
Basic reader for MediaWiki registration system. When extension.json or
skin.json is present, read requires.extensions and requires.skins then
return the list of corresponding Gerrit repositories.

[quibble/cmd.py]
The list of projects to clone is obtained from:

  • EXT_DEPENDENCIES (legacy)
  • SKIN_DEPENDENCIES (legacy)
  • projects passed as argument to Quibble

Once they have been cloned, when --resolve-requires is passed, read
the registration informations and recursively clone any requirements
we might have missed.

With the addition of --fail-on-extra-requires, if repositories have been
cloned due to --resolve-requires but were not in the list of arguments,
Quibble aborts.

[quibble/__init__.py]
logginglevel context manager is a convenience function to raise the
level of zuul.cloneMapper when resolving the path of a given repository.
When it the repo is cloned immediately after, zuul.Cloner would lookup
the path causing logging to be duplicated. It is similar to PHP
Wikimedia\suppressWarnings():

with logginglevel('root', logging.ERROR):
    # do some stuff that emits debug/info/warning

Bug: T193824
Change-Id: Ifa6a946cb6a5ee6ec999455db62cf0d3d7b27e41

Details

Committed
hasharApr 8 2019, 10:23 PM
Parents
rQUIBBLEfc14b20e65c9: Fix prepend due to missing ?> in LocalSettings.php
Branches
Unknown
Tags
Unknown
ChangeId
Ifa6a946cb6a5ee6ec999455db62cf0d3d7b27e41