In the default logging config, create a NullHandler logging handler and connect the root logger to that. Starting in python 3.2[1], a logging handler of last resort will output exceptions to stderr if no handlers are configured. Currently, our default logging configuration has no handlers configured for the root logger, and therefore libraries which log errors or exceptions on loggers that do not appear in our configuration will use the logger of last resort. This is the case for paramiko. During our key scanning, we now expect paramiko to raise some exceptions about some host keys being invalid. We have an exception handler to avoid logging the exception when it is raised to us, however, paramiko also logs the exception under its own namespace before raising it. In order to suppress the output of these exceptions, we need to ensure that paramiko logs have a handler. The easiest way to do that for paramiko and other libraries is by routing the root logger to null, which was our original intent. [1] https://docs.python.org/3/howto/logging.html#what-happens-if-no-configuration-is-provided Change-Id: Iaa57ed0f0452eefd376a68ac21f49f3141cdaa25
Nodepool
Nodepool is a system for managing test node resources. It supports launching single-use test nodes from cloud providers as well as managing access to pre-defined pre-existing nodes. Nodepool is part of a suite of tools that form a comprehensive test system, including Zuul.
The latest documentation for Nodepool is published at: https://zuul-ci.org/docs/nodepool/
The latest documentation for Zuul is published at: https://zuul-ci.org/docs/zuul/
Getting Help
There are two Zuul-related mailing lists:
- zuul-announce
-
A low-traffic announcement-only list to which every Zuul operator or power-user should subscribe.
- zuul-discuss
-
General discussion about Zuul, including questions about how to use it, and future development.
You will also find Zuul developers in the #zuul channel on Freenode IRC.
Contributing
To browse the latest code, see: https://opendev.org/zuul/nodepool To clone the latest code, use git clone https://opendev.org/zuul/nodepool
Bugs are handled at: https://storyboard.openstack.org/#!/project/zuul/nodepool
Code reviews are handled by gerrit at https://review.opendev.org
After creating a Gerrit account, use git review to submit patches. Example:
# Do your commits
$ git review
# Enter your username if prompted
Join #zuul on Freenode to discuss development or usage.
License
Nodepool is free software, licensed under the Apache License, version 2.0.
Python Version Support
Nodepool requires Python 3. It does not support Python 2.