X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osmclient%2Fv1%2Fpackage.py;fp=osmclient%2Fv1%2Fpackage.py;h=0000000000000000000000000000000000000000;hb=0046a316387d86e5df191b0aece617fcedeabb26;hp=f1a4bf49022ac9b2a2725fa6bb43be0693af5fc2;hpb=2947e79a42d945edf7b1eed50ccb6191329a9dc3;p=osm%2Fosmclient.git diff --git a/osmclient/v1/package.py b/osmclient/v1/package.py deleted file mode 100644 index f1a4bf4..0000000 --- a/osmclient/v1/package.py +++ /dev/null @@ -1,70 +0,0 @@ -# Copyright 2017 Sandvine -# -# 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. - -""" -OSM package API handling -""" - -from osmclient.common.exceptions import ClientException -from osmclient.common.exceptions import NotFound -from osmclient.common import utils - - -class Package(object): - def __init__(self, http=None, upload_http=None, client=None): - self._client = client - self._http = http - self._upload_http = upload_http - - def _wait_for_package(self, pkg_type): - if "vnfd" in pkg_type["type"]: - get_method = self._client.vnfd.get - elif "nsd" in pkg_type["type"]: - get_method = self._client.nsd.get - else: - raise ClientException("no valid package type found") - - # helper method to check if pkg exists - def check_exists(func): - try: - func() - except NotFound: - return False - return True - - return utils.wait_for_value( - lambda: check_exists(lambda: get_method(pkg_type["name"])) - ) - - def get_key_val_from_pkg(self, descriptor_file): - return utils.get_key_val_from_pkg(descriptor_file) - - def wait_for_upload(self, filename): - """wait(block) for an upload to succeed. - The filename passed is assumed to be a descriptor tarball. - """ - pkg_type = utils.get_key_val_from_pkg(filename) - - if pkg_type is None: - raise ClientException("Cannot determine package type") - - if not self._wait_for_package(pkg_type): - raise ClientException("package {} failed to upload".format(filename)) - - def upload(self, filename): - resp = self._upload_http.post_cmd(formfile=("package", filename)) - if not resp or "transaction_id" not in resp: - raise ClientException("failed to upload package")