Files
python-fuelclient/fuelclient/objects/release.py
tivaliy 02b666940b Add 'fuel2 release component list' command
In Nailgun there is an API call for getting JSON data
of compatible components for release and all plugins
releated with it (GET /api/v1/releases/<:id>/components/).
This patch adds new fuel2 command, e.g.:

       fuel2 release component list 1

This command prints list of components for given Fuel release
with respective cross-dependencies

Also contains the following required changes:
 - Ic78845dbde5cef7ba0463a4f8adaca85069bcf61

DocImpact
Closes-Bug: 1600501
Closes-Bug: 1600672

Change-Id: I4c89a0ca2c606228b9dd35d8c1524bd005f320e7
2016-08-11 17:47:29 +02:00

54 lines
1.9 KiB
Python

# Copyright 2014 Mirantis, 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 fuelclient.objects.base import BaseObject
class Release(BaseObject):
class_api_path = "releases/"
instance_api_path = "releases/{0}/"
networks_path = 'releases/{0}/networks'
attributes_metadata_path = 'releases/{0}/attributes_metadata'
deployment_tasks_path = 'releases/{0}/deployment_tasks'
components_path = 'releases/{0}/components'
def get_networks(self):
url = self.networks_path.format(self.id)
return self.connection.get_request(url)
def update_networks(self, data):
url = self.networks_path.format(self.id)
return self.connection.put_request(url, data)
def update_attributes_metadata(self, data):
url = self.attributes_metadata_path.format(self.id)
self.connection.put_request(url, data)
def get_attributes_metadata(self):
url = self.attributes_metadata_path.format(self.id)
return self.connection.get_request(url)
def get_deployment_tasks(self):
url = self.deployment_tasks_path.format(self.id)
return self.connection.get_request(url)
def update_deployment_tasks(self, data):
url = self.deployment_tasks_path.format(self.id)
return self.connection.put_request(url, data)
def get_components(self):
url = self.components_path.format(self.id)
return self.connection.get_request(url)