diff options
| author | Peter Razumovsky <prazumovsky@mirantis.com> | 2016-05-06 16:30:01 +0300 |
|---|---|---|
| committer | Peter Razumovsky <prazumovsky@mirantis.com> | 2016-05-20 18:03:47 +0300 |
| commit | 992bef89ce30dd7d5c9d14b3cc16e2655f121711 (patch) | |
| tree | 5558620b1ceec5782d0f008d425e7910e4d63ffd /heatclient/v1 | |
| parent | c94a711ca85e6d197d0dfdafd76de4900ce54224 (diff) | |
| download | python-heatclient-992bef89ce30dd7d5c9d14b3cc16e2655f121711.tar.gz | |
osc resource-type-list description option
Add new option to osc resource-type-list, which
allows to print description of each resource type.
Change-Id: I34ca4531fb0c9f4896f55011ae234771e9ef965f
Depends-on: Ia92699e5ca60a891e9704c468e447e1053be7609
Closes-bug: #1558049
Diffstat (limited to 'heatclient/v1')
| -rw-r--r-- | heatclient/v1/resource_types.py | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/heatclient/v1/resource_types.py b/heatclient/v1/resource_types.py index 75ea22a..6f307ff 100644 --- a/heatclient/v1/resource_types.py +++ b/heatclient/v1/resource_types.py @@ -10,6 +10,9 @@ # 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 six + from heatclient.common import utils from oslo_utils import encodeutils @@ -20,13 +23,20 @@ from heatclient.openstack.common.apiclient import base class ResourceType(base.Resource): def __repr__(self): - return "<ResourceType %s>" % self._info + if isinstance(self._info, six.string_types): + return "<ResourceType %s>" % self._info + else: + return "<ResourceType %s>" % self._info.get('resource_type') def data(self, **kwargs): return self.manager.data(self, **kwargs) def _add_details(self, info): - self.resource_type = info + if isinstance(info, six.string_types): + self.resource_type = info + elif isinstance(info, dict): + self.resource_type = info.get('resource_type') + self.description = info.get('description') class ResourceTypeManager(base.BaseManager): @@ -44,6 +54,10 @@ class ResourceTypeManager(base.BaseManager): if 'filters' in kwargs: filters = kwargs.pop('filters') params.update(filters) + if 'with_description' in kwargs: + with_description = kwargs.pop('with_description') + params.update({'with_description': with_description}) + if params: url += '?%s' % parse.urlencode(params, True) return self._list(url, self.KEY) |
