Merge "nova-manage: Deprecate '--version' parameters"
This commit is contained in:
@@ -102,14 +102,20 @@ def add_command_parsers(subparsers, categories):
|
||||
|
||||
action_kwargs = []
|
||||
for args, kwargs in getattr(action_fn, 'args', []):
|
||||
# FIXME(markmc): hack to assume dest is the arg name without
|
||||
# the leading hyphens if no dest is supplied
|
||||
kwargs.setdefault('dest', args[0][2:])
|
||||
if kwargs['dest'].startswith('action_kwarg_'):
|
||||
action_kwargs.append(kwargs['dest'][len('action_kwarg_'):])
|
||||
# we must handle positional parameters (ARG) separately from
|
||||
# positional parameters (--opt). Detect this by checking for
|
||||
# the presence of leading '--'
|
||||
if args[0] != args[0].lstrip('-'):
|
||||
kwargs.setdefault('dest', args[0].lstrip('-'))
|
||||
if kwargs['dest'].startswith('action_kwarg_'):
|
||||
action_kwargs.append(
|
||||
kwargs['dest'][len('action_kwarg_'):])
|
||||
else:
|
||||
action_kwargs.append(kwargs['dest'])
|
||||
kwargs['dest'] = 'action_kwarg_' + kwargs['dest']
|
||||
else:
|
||||
action_kwargs.append(kwargs['dest'])
|
||||
kwargs['dest'] = 'action_kwarg_' + kwargs['dest']
|
||||
action_kwargs.append(args[0])
|
||||
args = ['action_kwarg_' + arg for arg in args]
|
||||
|
||||
parser.add_argument(*args, **kwargs)
|
||||
|
||||
|
@@ -54,6 +54,7 @@
|
||||
|
||||
from __future__ import print_function
|
||||
|
||||
import argparse
|
||||
import functools
|
||||
import os
|
||||
import re
|
||||
@@ -670,12 +671,20 @@ class DbCommands(object):
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@args('--version', metavar='<version>', help='Database version')
|
||||
@args('--version', metavar='<version>', help=argparse.SUPPRESS)
|
||||
@args('--local_cell', action='store_true',
|
||||
help='Only sync db in the local cell: do not attempt to fan-out'
|
||||
'to all cells')
|
||||
def sync(self, version=None, local_cell=False):
|
||||
@args('version2', metavar='VERSION', nargs='?', help='Database version')
|
||||
def sync(self, version=None, local_cell=False, version2=None):
|
||||
"""Sync the database up to the most recent version."""
|
||||
if version and not version2:
|
||||
print(_("DEPRECATED: The '--version' parameter was deprecated in "
|
||||
"the Pike cycle and will not be supported in future "
|
||||
"versions of nova. Use the 'VERSION' positional argument "
|
||||
"instead"))
|
||||
version2 = version
|
||||
|
||||
if not local_cell:
|
||||
ctxt = context.RequestContext()
|
||||
# NOTE(mdoff): Multiple cells not yet implemented. Currently
|
||||
@@ -684,7 +693,7 @@ class DbCommands(object):
|
||||
cell_mapping = objects.CellMapping.get_by_uuid(ctxt,
|
||||
objects.CellMapping.CELL0_UUID)
|
||||
with context.target_cell(ctxt, cell_mapping) as cctxt:
|
||||
migration.db_sync(version, context=cctxt)
|
||||
migration.db_sync(version2, context=cctxt)
|
||||
except exception.CellMappingNotFound:
|
||||
print(_('WARNING: cell0 mapping not found - not'
|
||||
' syncing cell0.'))
|
||||
@@ -853,10 +862,18 @@ class ApiDbCommands(object):
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@args('--version', metavar='<version>', help='Database version')
|
||||
def sync(self, version=None):
|
||||
@args('--version', metavar='<version>', help=argparse.SUPPRESS)
|
||||
@args('version2', metavar='VERSION', nargs='?', help='Database version')
|
||||
def sync(self, version=None, version2=None):
|
||||
"""Sync the database up to the most recent version."""
|
||||
return migration.db_sync(version, database='api')
|
||||
if version and not version2:
|
||||
print(_("DEPRECATED: The '--version' parameter was deprecated in "
|
||||
"the Pike cycle and will not be supported in future "
|
||||
"versions of nova. Use the 'VERSION' positional argument "
|
||||
"instead"))
|
||||
version2 = version
|
||||
|
||||
return migration.db_sync(version2, database='api')
|
||||
|
||||
def version(self):
|
||||
"""Print the current database version."""
|
||||
|
@@ -0,0 +1,20 @@
|
||||
---
|
||||
upgrade:
|
||||
- |
|
||||
The ``nova-manage api_db sync`` and ``nova-manage db sync`` commands
|
||||
previously took an optional ``--version`` parameter to determine which
|
||||
version to sync to. For example::
|
||||
|
||||
$ nova-manage api_db sync --version some-version
|
||||
|
||||
This is now an optional positional argument. For example::
|
||||
|
||||
$ nova-manage api_db sync some-version
|
||||
|
||||
Aliases are provided but these are marked as deprecated and will be removed
|
||||
in the next release of nova.
|
||||
deprecations:
|
||||
- |
|
||||
The ``--version`` parameters of the ``nova-manage api_db sync`` and
|
||||
``nova-manage db sync`` commands has been deprecated in favor of
|
||||
positional arguments.
|
Reference in New Issue
Block a user