![Takashi NATSUME](/assets/img/avatar_default.png)
The API extension has been deprecated since 12.0.0 Liberty release (*1) and the cells v1 has been deprecated since 16.0.0 Pike release (*2) in the nova side. The API extension has already been removed (merged into main controllers and schema) since 19.0.0 Stein release (*3) and the cells v1 APIs has already been removed since Iddb519008515f591cf1d884872a5887afbe766f2. In the python-novaclient side, deprecate commands and API bindings related to the API extension and the cells v1 at first. Then the CLIs and API bindings will be removed in the first major release after Nova 20.0.0 Train is released. *1: I084444b11dceda7cf8f88c157aa67d36490fce49 *2: I1a173f7ce0715e684850e030c358e8175fa8724c *3: https://review.opendev.org/#/q/topic:bp/api-extensions-merge-stein Change-Id: I8dc4df95ac7f6974c5280e4107e449d04cd1402e Closes-Bug: #1835699
51 lines
1.6 KiB
Python
51 lines
1.6 KiB
Python
# Copyright 2011 OpenStack Foundation
|
|
# All Rights Reserved.
|
|
#
|
|
# 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.
|
|
|
|
import warnings
|
|
|
|
from novaclient import base
|
|
from novaclient.i18n import _
|
|
|
|
EXTENSION_DEPRECATION_WARNING = _(
|
|
'The API extension interface has been deprecated since 12.0.0 Liberty '
|
|
'Release. This API binding will be removed in the first major release '
|
|
'after the Nova server 20.0.0 Train release.')
|
|
|
|
|
|
class ListExtResource(base.Resource):
|
|
"""DEPRECATED"""
|
|
@property
|
|
def summary(self):
|
|
"""DEPRECATED"""
|
|
warnings.warn(EXTENSION_DEPRECATION_WARNING, DeprecationWarning)
|
|
descr = self.description.strip()
|
|
if not descr:
|
|
return '??'
|
|
lines = descr.split("\n")
|
|
if len(lines) == 1:
|
|
return lines[0]
|
|
else:
|
|
return lines[0] + "..."
|
|
|
|
|
|
class ListExtManager(base.Manager):
|
|
"""DEPRECATED"""
|
|
resource_class = ListExtResource
|
|
|
|
def show_all(self):
|
|
"""DEPRECATED"""
|
|
warnings.warn(EXTENSION_DEPRECATION_WARNING, DeprecationWarning)
|
|
return self._list("/extensions", 'extensions')
|