Files
deb-python-fuelclient/fuelclient/objects/release.py
tivaliy 287e5a2470 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

DocImpact
Closes-Bug: 1600501

Change-Id: I055d6fb4dde4cb0ac9508084155bbce5a106220c
2016-08-01 16:56:00 +03: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)