python-tripleoclient/tripleoclient/v1/tripleo_upgrade.py
yatinkarel a8831c6000 Make tripleoclient compatible with cliff-3.4.0
cliff with 3.4.0[1] release moved to stevedore for
loading entry points, with this logging get's setup
too early before config options are loaded.

Move Config register and logging setup to app's main
function.

Also after moving logging.setup to app's main function
a time.time call is removed so adjust test for it.

[1] https://github.com/openstack/cliff/commit/6ac510

Suggested-By: Doug Hellmann <doug@doughellmann.com>
Closes-Bug: #1890389
Change-Id: Ia9a2146a0ad3156c80f8cdffe33280380319e3d6
2020-09-25 17:14:56 +05:30

43 lines
1.5 KiB
Python

# Copyright 2018 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
from oslo_config import cfg
from oslo_log import log as logging
from tripleoclient import constants
from tripleoclient.exceptions import UndercloudUpgradeNotConfirmed
from tripleoclient import utils
from tripleoclient.v1.tripleo_deploy import Deploy
CONF = cfg.CONF
class Upgrade(Deploy):
"""Upgrade TripleO"""
log = logging.getLogger(__name__ + ".Upgrade")
def take_action(self, parsed_args):
logging.register_options(CONF)
logging.setup(CONF, '')
self.log.debug("take_action(%s)" % parsed_args)
if (not parsed_args.yes
and not utils.prompt_user_for_confirmation(
constants.UPGRADE_PROMPT, self.log)):
raise UndercloudUpgradeNotConfirmed(constants.UPGRADE_NO)
parsed_args.standalone = True
parsed_args.upgrade = True
super(Upgrade, self).take_action(parsed_args)