From 6204ba536230a943ad160542adf6d851276faacf Mon Sep 17 00:00:00 2001 From: Varac <varac@varac.net> Date: Tue, 19 Feb 2019 12:04:26 +0100 Subject: [PATCH] Move log initialisation to ci-bootstrap.py --- test/ci-bootstrap.py | 30 ++++++++++++++++++++++++++---- test/cosmos.py | 26 ++++---------------------- 2 files changed, 30 insertions(+), 26 deletions(-) diff --git a/test/ci-bootstrap.py b/test/ci-bootstrap.py index b52bbc83f..efa65b8e6 100755 --- a/test/ci-bootstrap.py +++ b/test/ci-bootstrap.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -""" +r""" Used by CI to bootstrap a new cluster and run tests. Prerequisites @@ -8,12 +8,15 @@ Prerequisites - ansible-runner - requests - tabulate + - psutil Env vars needed: - COSMOS_API_TOKEN In Debian: - apt-get install -y --no-install-recommends ansible gcc libc6-dev + apt-get install -y --no-install-recommends ansible gcc libc6-dev \ + python3-distutils python3-pip python3-setuptools python3-wheel \ + python3-psutil pip3 install ansible-runner requests tabulate """ @@ -29,6 +32,25 @@ import traceback import yaml +def init_logging(log, loglevel): + """ + Configure logging. + + - debug and info go to stdout + - warning and above go to stderr + """ + log.setLevel(loglevel) + stdout = logging.StreamHandler(sys.stdout) + stdout.setLevel(loglevel) + stdout.addFilter(lambda record: record.levelno <= logging.INFO) + + stderr = logging.StreamHandler() + stderr.setLevel(logging.WARNING) + + log.addHandler(stdout) + log.addHandler(stderr) + + if __name__ == "__main__": # Parse command line arguments @@ -70,11 +92,11 @@ if __name__ == "__main__": # Setup logging for this script log = logging.getLogger(__name__) - cosmos.init_logging(log, loglevel) + init_logging(log, loglevel) # Setup logging for cosmos module log_cosmos = logging.getLogger('cosmos') - cosmos.init_logging(log_cosmos, loglevel) + init_logging(log_cosmos, loglevel) # Start bootstrapping if args.create_droplet: diff --git a/test/cosmos.py b/test/cosmos.py index b51896e99..8a45d8306 100755 --- a/test/cosmos.py +++ b/test/cosmos.py @@ -13,25 +13,6 @@ from time import sleep # Helper functions -def init_logging(log, loglevel): - """ - Configure logging. - - - debug and info go to stdout - - warning and above go to stderr - """ - log.setLevel(loglevel) - stdout = logging.StreamHandler(sys.stdout) - stdout.setLevel(loglevel) - stdout.addFilter(lambda record: record.levelno <= logging.INFO) - - stderr = logging.StreamHandler() - stderr.setLevel(logging.WARNING) - - log.addHandler(stdout) - log.addHandler(stderr) - - def request_api(resource: str, request_type: str = 'GET', data: str = ''): """Query the cosmos API.""" @@ -287,11 +268,12 @@ def wait_for_state(id: int, state): status = status_droplet(id) -log = logging.getLogger(__name__) # When called from from ipython, setup # logging to console try: __IPYTHON__ - init_logging(log, logging.INFO) + log = logging.getLogger() + log.addHandler(logging.StreamHandler()) + log.setLevel(logging.INFO) except NameError: - pass + log = logging.getLogger(__name__) -- GitLab