diff --git a/packageship/packageship/application/apps/package/function/packages.py b/packageship/packageship/application/apps/package/function/packages.py index 7d3ca4557237716ff4559dbec9de9dce2c647596..7098ec4beb8a3ced8e93f21a260b8beb7239c929 100644 --- a/packageship/packageship/application/apps/package/function/packages.py +++ b/packageship/packageship/application/apps/package/function/packages.py @@ -5,19 +5,26 @@ functions: get_packages, buildep_packages, sub_packages, get_single_package, update_single_package, update_maintaniner_info """ from flask import current_app +from flask import jsonify +from sqlalchemy.exc import SQLAlchemyError + +from packageship.application.apps.package.function.constants import ResponseCode +from packageship.application.apps.package.function.searchdb import db_priority from packageship.libs.dbutils import DBHelper from packageship.application.models.package import src_pack -from packageship.application.models.package import pack_provides -from packageship.application.models.package import maintenance_info -from packageship.application.models.package import pack_requires +from packageship.application.models.package import src_requires from packageship.application.models.package import bin_pack +from packageship.application.models.package import maintenance_info +from packageship.application.models.package import bin_requires +from packageship.application.models.package import bin_provides from packageship.libs.exception import Error def get_packages(dbname): """ - Description: Get all packages info + Get all packages info in search databases + Args: dbname: Database name Returns: @@ -28,89 +35,146 @@ def get_packages(dbname): """ with DBHelper(db_name=dbname) as db_name: src_pack_queryset = db_name.session.query(src_pack).all() - resp_list = [] + if src_pack_queryset is None: + return None + resp_list = list() for src_pack_obj in src_pack_queryset: - package = {} + package = dict() package["sourceName"] = src_pack_obj.name package["version"] = src_pack_obj.version - package["license"] = src_pack_obj.license - package["maintainer"] = src_pack_obj.Maintaniner - package["maintainlevel"] = src_pack_obj.MaintainLevel - package["sourceURL"] = src_pack_obj.sourceURL - package["maintainlevel"] = src_pack_obj.MaintainLevel - package["downloadURL"] = src_pack_obj.downloadURL + package["license"] = src_pack_obj.rpm_license + package["sourceURL"] = src_pack_obj.url + package["rpm_packager"] = src_pack_obj.rpm_packager + package["maintaniner"] = src_pack_obj.maintaniner + package["maintainlevel"] = src_pack_obj.maintainlevel package["dbname"] = dbname resp_list.append(package) return resp_list -def buildep_packages(dbname, src_pack_id): +def get_all_packages(db_name): + """ + all packages info + + Args: + db_name: database name + Returns: + response code: response status code + """ + dbpreority = db_priority() + if dbpreority is None: + return jsonify( + ResponseCode.response_json(ResponseCode.FILE_NOT_FOUND) + ) + if not db_name: + response = [] + for dbname in dbpreority: + query_result = get_packages(dbname) + if query_result is None: + return None + for item in query_result: + if item is None: + query_result.remove(item) + response.append(item) + return jsonify( + ResponseCode.response_json(ResponseCode.SUCCESS, response) + ) + if db_name not in dbpreority: + return jsonify( + ResponseCode.response_json(ResponseCode.DB_NAME_ERROR) + ) + response = get_packages(db_name) + if not response: + return jsonify( + ResponseCode.response_json(ResponseCode.PACK_NAME_NOT_FOUND) + ) + return jsonify( + ResponseCode.response_json(ResponseCode.SUCCESS, response) + ) + + +def buildep_packages(dbname, src_pack_pkgkey): """ - Description: Query package layer 1 compilation dependency + Query package layer 1 compilation dependency + Args: dbname: databases name - src_pack_id: The ID of the source package + src_pack_pkgkey: The ID of the source package Returns: buildDep Compile dependencies of source packages Raises: AttributeError: Object does not have this property """ with DBHelper(db_name=dbname) as db_name: - b_pack_requires_set = db_name.session.query( - pack_requires).filter_by(srcIDkey=src_pack_id).all() - b_dep_proid_keys = [ - dep_proid_obj.depProIDkey for dep_proid_obj in b_pack_requires_set] - b_pack_pro_set = db_name.session.query(pack_provides).filter( - pack_provides.id.in_(b_dep_proid_keys)).all() - b_bin_pack_ids = [ - bin_pack_obj.binIDkey for bin_pack_obj in b_pack_pro_set] + # srcpack's pkgkey to src_requires find pkgkey + s_pack_requires_set = db_name.session.query( + src_requires).filter_by(pkgKey=src_pack_pkgkey).all() + # src_requires pkykey to find the name of the dependent component + s_pack_requires_names = [ + s_pack_requires_obj.name for s_pack_requires_obj in s_pack_requires_set] + + # Find pkgkey in bin_provides by the name of the dependent component + b_pack_provides_set = db_name.session.query(bin_provides).filter( + bin_provides.name.in_(s_pack_requires_names)).all() + b_pack_provides_pkg_list = [ + b_pack_provides_obj.pkgKey for b_pack_provides_obj in b_pack_provides_set] + + # Go to bin_pack to find the name by pkgkey of bin_provides b_bin_pack_set = db_name.session.query(bin_pack).filter( - bin_pack.id.in_(b_bin_pack_ids)).all() - builddep = [bin_pack_obj.name for bin_pack_obj in b_bin_pack_set] + bin_pack.pkgKey.in_(b_pack_provides_pkg_list)).all() + builddep = [b_bin_pack_obj.name for b_bin_pack_obj in b_bin_pack_set] return builddep -def sub_packages(dbname, src_pack_id): +def sub_packages(dbname, sourcename): """ - Description: Query package layer 1 installation dependency + Query package layer 1 installation dependency + Args: dbname: databases name - src_pack_id: srcpackage id + src_pack_pkgkey: srcpackage id Returns: subpack Source package to binary package, then find the installation dependencies - of the binary package + of the binary package Raises: AttributeError: Object does not have this property """ with DBHelper(db_name=dbname) as db_name: - subpack = {} + subpack = dict() + # The name of src_pack finds the sub-package bin_pack query set i_bin_pack_set = db_name.session.query( - bin_pack).filter_by(srcIDkey=src_pack_id).all() - i_bin_pack_ids = [ - bin_pack_obj.id for bin_pack_obj in i_bin_pack_set] - for i_bin_pack_id in i_bin_pack_ids: - i_bin_pack_name = db_name.session.query( - bin_pack).filter_by(id=i_bin_pack_id).first().name - i_pack_req_set = db_name.session.query( - pack_requires).filter_by(binIDkey=i_bin_pack_id).all() - i_dep_proid_keys = [ - dep_proid_obj.depProIDkey for dep_proid_obj in i_pack_req_set] - i_dep_proid_keys = list(set(i_dep_proid_keys)) - i_pack_provides_set = db_name.session.query(pack_provides).filter( - pack_provides.id.in_(i_dep_proid_keys)).all() - i_bin_pack_ids = [ - bin_pack_obj.binIDkey for bin_pack_obj in i_pack_provides_set] + bin_pack).filter_by(src_name=sourcename).all() + if i_bin_pack_set is None: + return subpack + # Find the objects of each sub-package + for b_bin_pack_obj in i_bin_pack_set: + i_bin_pack_name = b_bin_pack_obj.name + i_bin_pack_pkgkey = b_bin_pack_obj.pkgKey + # Find the names of the components required to install bin_requires + # dependencies + i_bin_requires_set = db_name.session.query( + bin_requires).filter_by(pkgKey=i_bin_pack_pkgkey).all() + i_bin_requires_names = [ + b_bin_requires_obj.name for b_bin_requires_obj in i_bin_requires_set] + # Find pkykey in bin_provides by the name of the dependent + # component + i_bin_provides_set = db_name.session.query(bin_provides).filter( + bin_provides.name.in_(i_bin_requires_names)) + i_bin_provides_pkg_list = [ + i_bin_provides_obj.pkgKey for i_bin_provides_obj in i_bin_provides_set] + # Find the name in bin_pack by pkgkey i_bin_pack_set = db_name.session.query(bin_pack).filter( - bin_pack.id.in_(i_bin_pack_ids)).all() + bin_pack.pkgKey.in_(i_bin_provides_pkg_list)) i_bin_pack_names = [ - bin_pack_obj.name for bin_pack_obj in i_bin_pack_set] + in_bin_pack_obj.name for in_bin_pack_obj in i_bin_pack_set] subpack[i_bin_pack_name] = i_bin_pack_names return subpack def get_single_package(dbname, sourcename): """ - Description: Get all packages info + Get single packages info + Args: dbname: Database name sourcename: Source package name @@ -120,89 +184,119 @@ def get_single_package(dbname, sourcename): AttributeError: Object does not have this property """ with DBHelper(db_name=dbname) as db_name: - package = {} + package = dict() src_pack_obj = db_name.session.query(src_pack).filter_by( name=sourcename).first() + if src_pack_obj is None: + return None package["sourceName"] = src_pack_obj.name package["version"] = src_pack_obj.version - package["license"] = src_pack_obj.license - package["maintainer"] = src_pack_obj.Maintaniner - package["maintainlevel"] = src_pack_obj.MaintainLevel - package["sourceURL"] = src_pack_obj.sourceURL - package["downloadURL"] = src_pack_obj.downloadURL + package["license"] = src_pack_obj.rpm_license + package["sourceURL"] = src_pack_obj.url + package["rpm_packager"] = src_pack_obj.rpm_packager + package["maintaniner"] = src_pack_obj.maintaniner + package["maintainlevel"] = src_pack_obj.maintainlevel package["dbname"] = dbname - src_pack_id = src_pack_obj.id - builddep = buildep_packages(dbname, src_pack_id) - subpack = sub_packages(dbname, src_pack_id) + src_pack_pkgkey = src_pack_obj.pkgKey + builddep = buildep_packages(dbname, src_pack_pkgkey) + subpack = sub_packages(dbname, sourcename) package['buildDep'] = builddep package['subpack'] = subpack return package -def update_single_package( +def get_single(dbnames, sourcename): + """ + get single package + + Args: + dbname: database name + sourcename: source name + """ + response_data = None + dbpreority = db_priority() + if db_priority is None: + response_data = ResponseCode.FILE_NOT_FOUND + + if not dbnames: + response = [] + for db_names in dbpreority: + query_result = get_single_package(db_names, sourcename) + response.append(query_result) + for key in response: + if key is None: + response.remove(key) + if not response: + return jsonify( + ResponseCode.response_json(ResponseCode.PACK_NAME_NOT_FOUND) + ) + return jsonify( + ResponseCode.response_json(ResponseCode.SUCCESS, response) + ) + + # Database queries data and catches exceptions + if dbnames not in dbpreority: + return jsonify( + ResponseCode.response_json(ResponseCode.DB_NAME_ERROR) + ) + response = get_single_package(dbnames, sourcename) + if response is None: + response_data = ResponseCode.PACK_NAME_NOT_FOUND + if response_data is not None: + return jsonify(ResponseCode.response_json(response_data)) + return jsonify( + ResponseCode.response_json(ResponseCode.SUCCESS, [response]) + ) + + +def _update_package_info( package_name, dbname, maintainer, maintain_level): """ - Description: change single package management - Args: + change single package management + + Args: package_name: package name dbname: Database name maintainer: maintainer info maintain_level: maintain_level info - Returns: + Returns: message success or failed Raises: AttributeError: Object does not have this property - TypeError: Abnormal error - """ - with DBHelper(db_name=dbname) as db_name: - update_obj = db_name.session.query( - src_pack).filter_by(name=package_name).first() - update_obj.Maintaniner = maintainer - update_obj.MaintainLevel = maintain_level - db_name.session.commit() - - -def update_maintaniner_info(package_name, - dbname, - maintaniner, - maintainlevel): - """ - Description: update separately maintaniner info - Args: - package_name: package name - dbname: Database name - maintainer: maintainer info - maintain_level: maintain_level info - Returns: - message success or failed - Raises: - AttributeError: Object does not have this property - Error: Abnormal error + SQLAlchemyError: Exception of type + Error: Abnormal error """ - with DBHelper(db_name=dbname) as db_name: - src_pack_obj = db_name.session.query(src_pack).filter_by( - name=package_name).first() - name = src_pack_obj.name - version = src_pack_obj.version - with DBHelper(db_name='maintenance.information') as dbs_name: - try: + try: + result_data = True + with DBHelper(db_name=dbname) as data_name: + update_obj = data_name.session.query( + src_pack).filter_by(name=package_name).first() + if update_obj is None: + return False + update_obj.maintaniner = maintainer + update_obj.maintainlevel = maintain_level + data_name.session.commit() + name = update_obj.name + version = update_obj.version + with DBHelper(db_name='maintenance.information') as dbs_name: information_obj = dbs_name.session.query(maintenance_info).filter_by( name=package_name, version=version).first() if information_obj is None: information = maintenance_info( name=name, version=version, - maintaniner=maintaniner, - maintainlevel=maintainlevel) + maintaniner=maintainer, + maintainlevel=maintain_level) dbs_name.session.add(information) dbs_name.session.commit() else: - information_obj.maintaniner = maintaniner - information_obj.maintainlevel = maintainlevel + information_obj.maintaniner = maintainer + information_obj.maintainlevel = maintain_level dbs_name.session.commit() - except (AttributeError, Error) as attri_error: - current_app.logger.error(attri_error) - return + return result_data + except (AttributeError, SQLAlchemyError, Error) as attri_error: + current_app.logger.error(attri_error) + raise attri_error diff --git a/packageship/packageship/application/apps/package/url.py b/packageship/packageship/application/apps/package/url.py index 5a08213485915ab4762a6aa7adca453bfa47e89f..873cd7931ac4d53c64267c9f24b1db7763ae3cea 100644 --- a/packageship/packageship/application/apps/package/url.py +++ b/packageship/packageship/application/apps/package/url.py @@ -10,7 +10,7 @@ urls = [ # Query and update a package info - (view.SinglePack, '/packages/findByPackName', + (view.SinglePack, '/packages/packageInfo', {'query': ('GET'), 'write': ('PUT')}), # Query a package's install depend(support querying in one or more databases) diff --git a/packageship/packageship/application/apps/package/view.py b/packageship/packageship/application/apps/package/view.py index 2058738f7738dfce5c17d17b4a8ef1e36889b879..cdf32e4d37a21d090d58fba1a169f7d65154d6f7 100644 --- a/packageship/packageship/application/apps/package/view.py +++ b/packageship/packageship/application/apps/package/view.py @@ -19,10 +19,9 @@ from packageship.libs.exception import DataMergeException from packageship.libs.log import Log from packageship.system_config import DATABASE_FILE_INFO from .function.constants import ResponseCode -from .function.packages import get_packages -from .function.packages import update_single_package -from .function.packages import update_maintaniner_info -from .function.packages import get_single_package +from .function.packages import get_all_packages +from .function.packages import _update_package_info +from .function.packages import get_single from .function.searchdb import db_priority from .serialize import PackagesSchema from .serialize import GetpackSchema @@ -52,25 +51,27 @@ class Packages(Resource): def get(self): """ - Description: Get all package info from a database + Get all package info from a database + Args: dbName: Data path name, not required parameter Returns: - { - "code": "", - "data": [ - { + for + example:: + { + "code": "", + "data": [{ "dbname": "", - "downloadURL": "", "license": "", - "maintainer": , - "maintainlevel": , + "maintainlevel":, + "maintaniner": , + "rpm_packager": "", "sourceName": "", "sourceURL": "", "version": "" - }, - "msg": "" - } + }], + "msg": "" + } Raises: DisconnectionError: Unable to connect to database exception AttributeError: Object does not have this property @@ -86,34 +87,19 @@ class Packages(Resource): dbname = data.get("dbName", None) # Call method to query try: - dbpreority = db_priority() - if dbpreority is None: - return jsonify( - ResponseCode.response_json(ResponseCode.FILE_NOT_FOUND) - ) - if not dbname: - response = [] - for dbname in dbpreority: - query_result = get_packages(dbname) - for item in query_result: - response.append(item) - return jsonify( - ResponseCode.response_json(ResponseCode.SUCCESS, response) - ) - if dbname not in dbpreority: - return jsonify( - ResponseCode.response_json(ResponseCode.DB_NAME_ERROR) - ) - response = get_packages(dbname) - return jsonify( - ResponseCode.response_json(ResponseCode.SUCCESS, response) - ) + response = get_all_packages(dbname) + return response # Database queries data and catches exceptions except DisconnectionError as dis_connection_error: current_app.logger.error(dis_connection_error) return jsonify( ResponseCode.response_json( ResponseCode.DIS_CONNECTION_DB)) + except (AttributeError, TypeError, Error) as attribute_error: + current_app.logger.error(attribute_error) + return jsonify( + ResponseCode.response_json( + ResponseCode.PACK_NAME_NOT_FOUND)) class SinglePack(Resource): @@ -125,29 +111,29 @@ class SinglePack(Resource): def get(self): """ - description: Searching a package info + Searching a package info + Args: dbName: Database name, not required parameter sourceName: Source code package name, must pass Returns: - { - "code": "", - "data": [ + for + examples:: { - "buildDep": [], - "dbname": "", - "downloadURL": "", - "license": "", - "maintainer": "", - "maintainlevel": "", - "sourceName": "", - "sourceURL": "", - "subpack": {}, - "version": "" - } - ], - "msg": "" - } + "code": "", + "data": [{ + "buildDep": [], + "dbname": "", + "license": "", + "maintainlevel": "", + "maintaniner": "", + "rpm_packager": "", + "sourceName": "", + "sourceURL": "", + "subpack": { }, + "version": ""}], + "msg": "" + } Raises: DisconnectionError: Unable to connect to database exception AttributeError: Object does not have this property @@ -166,29 +152,8 @@ class SinglePack(Resource): # Call method to query try: - dbpreority = db_priority() - if db_priority is None: - return jsonify( - ResponseCode.response_json(ResponseCode.FILE_NOT_FOUND) - ) - if not dbname: - response = [] - for dbname in dbpreority: - query_result = get_single_package(dbname, sourcename) - response.append(query_result) - return jsonify( - ResponseCode.response_json(ResponseCode.SUCCESS, response) - ) - - # Database queries data and catches exceptions - if dbname not in dbpreority: - return jsonify( - ResponseCode.response_json(ResponseCode.DB_NAME_ERROR) - ) - response = get_single_package(dbname, sourcename) - return jsonify( - ResponseCode.response_json(ResponseCode.SUCCESS, [response]) - ) + response = get_single(dbname, sourcename) + return response except DisconnectionError as dis_connection_error: current_app.logger.error(dis_connection_error) abnormal = ResponseCode.DIS_CONNECTION_DB @@ -201,18 +166,21 @@ class SinglePack(Resource): def put(self): """ - Description: update a package info, + update a package info, + Args: dbName: Database name,Parameters are required sourceName: The name of the source code package. Parameters are required maintainer: Maintainer, parameter not required maintainlevel: Maintenance level, parameter not required Returns: - { - "code": "", - "data": "", - "msg": "" - } + for + example:: + { + "code": "", + "data": "", + "msg": "" + } Raises: DisconnectionError: Unable to connect to database exception AttributeError: Object does not have this property @@ -242,24 +210,24 @@ class SinglePack(Resource): ResponseCode.response_json(ResponseCode.DB_NAME_ERROR) ) # Database queries data and catches exceptions + try: - update_single_package( - sourcename, dbname, maintainer, maintain_level) - update_maintaniner_info( + result_data = _update_package_info( sourcename, dbname, maintainer, maintain_level) + if result_data is False: + return jsonify( + ResponseCode.response_json( + ResponseCode.PACK_NAME_NOT_FOUND)) return jsonify( - ResponseCode.response_json(ResponseCode.SUCCESS) - ) + ResponseCode.response_json(ResponseCode.SUCCESS)) except DisconnectionError as dis_connection_error: current_app.logger.error(dis_connection_error) - return jsonify( - ResponseCode.response_json( - ResponseCode.DIS_CONNECTION_DB)) + abnormal = ResponseCode.DIS_CONNECTION_DB except (AttributeError, TypeError, Error) as attri_error: current_app.logger.error(attri_error) - return jsonify( - ResponseCode.response_json(ResponseCode.PACK_NAME_NOT_FOUND) - ) + abnormal = ResponseCode.CONNECT_DB_ERROR + if abnormal is not None: + return jsonify(ResponseCode.response_json(abnormal)) class InstallDepend(Resource): @@ -271,12 +239,13 @@ class InstallDepend(Resource): def post(self): """ - Description: Query a package's install depend(support - querying in one or more databases) - input: + Query a package's install depend(support + querying in one or more databases) + + Args: binaryName dbPreority: the array for database preority - return: + Returns: resultDict{ binary_name: //binary package name [ @@ -347,18 +316,21 @@ class BuildDepend(Resource): def post(self): """ - Description: Query a package's build depend and - build depend package's install depend - (support querying in one or more databases) + Query a package's build depend and + build depend package's install depend + (support querying in one or more databases) + Args: sourceName :name of the source package dbPreority:the array for database preority Returns: - { - "code": "", - "data": "", - "msg": "" - } + for + example:: + { + "code": "", + "data": "", + "msg": "" + } Raises: """ schema = BuildDependSchema() @@ -409,8 +381,9 @@ class SelfDepend(Resource): def post(self): """ - Description: Query a package's all dependencies including install and build depend - (support quering a binary or source package in one or more databases) + Query a package's all dependencies including install and build depend + (support quering a binary or source package in one or more databases) + Args: packageName:package name packageType: source/binary @@ -418,12 +391,13 @@ class SelfDepend(Resource): withSubpack: 0/1 dbPreority:the array for database preority Returns: - { - "code": "", - "data": "", - "msg": "" - } - Raises: + for + example:: + { + "code": "", + "data": "", + "msg": "" + } """ schema = SelfDependSchema() @@ -482,25 +456,26 @@ class BeDepend(Resource): def post(self): """ - description: Query a package's all dependencies including - be installed and built depend + Query a package's all dependencies including + be installed and built depend + Args: packageName:package name withSubpack: 0/1 dbname:database name Returns: - resultList[ - restult[ - binaryName: - srcName: - dbName: - type: beinstall or bebuild, which depend on the function - childNode: the binary package name which is the be built/installed - depend for binaryName + for + example:: + resultList[ + restult[ + binaryName: + srcName: + dbName: + type: beinstall or bebuild, which depend on the function + childNode: the binary package name which is the be built/installed + depend for binaryName + ] ] - ] - exception: - changeLog: """ schema = BeDependSchema() data = request.get_json() @@ -542,20 +517,22 @@ class Repodatas(Resource): def get(self): """ - description: get all database - Args: + get all database + Returns: - { - "code": "", - "data": [ - { - "database_name": "", - "priority": "", - "status": "" - } - ], - "msg": "" - } + for + example:: + { + "code": "", + "data": [ + { + "database_name": "", + "priority": "", + "status": "" + } + ], + "msg": "" + } Raises: FileNotFoundError: File not found exception TypeError: Exception of wrong type @@ -583,14 +560,16 @@ class Repodatas(Resource): def delete(self): """ - description: get all database - Args: + get all database + Returns: - { - "code": "", - "data": "", - "msg": "" - } + for + example:: + { + "code": "", + "data": "", + "msg": "" + } Raises: FileNotFoundError: File not found exception, TypeError: Exception of wrong type @@ -614,7 +593,10 @@ class Repodatas(Resource): ) try: drop_db = InitDataBase() - drop_db.delete_db(db_name) + del_result = drop_db.delete_db(db_name) + if del_result is False: + return jsonify( + ResponseCode.response_json(ResponseCode.DELETE_DB_ERROR)) return jsonify( ResponseCode.response_json(ResponseCode.SUCCESS) ) @@ -634,14 +616,16 @@ class InitSystem(Resource): def post(self): """ - description: InitSystem - Args: + InitSystem + Returns: - { - "code": "", - "data": "", - "msg": "" - } + for + example:: + { + "code": "", + "data": "", + "msg": "" + } Raises: ContentNoneException: Unable to connect to the exception of the database DisconnectionError:Exception connecting to database @@ -686,4 +670,9 @@ class InitSystem(Resource): abnormal = ResponseCode.FAILED_CREATE_DATABASE_TABLE if abnormal is not None: return jsonify(ResponseCode.response_json(abnormal)) + db_list = db_priority() + if db_list is None: + return jsonify( + ResponseCode.response_json( + ResponseCode.FAILED_CREATE_DATABASE_TABLE)) return jsonify(ResponseCode.response_json(ResponseCode.SUCCESS)) diff --git a/packageship/packageship/pkgship.py b/packageship/packageship/pkgship.py index 95b16486a5032ecc0fdb90eef5080afea31da584..290ac3cb598e26481d585cae19497ed67109ae19 100644 --- a/packageship/packageship/pkgship.py +++ b/packageship/packageship/pkgship.py @@ -621,7 +621,7 @@ class UpdatePackageCommand(PkgshipCommand): Raises: ConnectionError: Request connection error """ - _url = self.write_host + '/packages/findByPackName' + _url = self.write_host + '/packages/packageInfo' try: response = requests.put( _url, data=json.dumps({'sourceName': params.packagename, @@ -1196,7 +1196,7 @@ class SingleCommand(PkgshipCommand): ConnectionError: requests connection error """ _url = self.read_host + \ - '/packages/findByPackName?dbName={db_name}&sourceName={packagename}' \ + '/packages/packageInfo?dbName={db_name}&sourceName={packagename}' \ .format(db_name=params.db, packagename=params.packagename) try: response = requests.get(_url)