update mapping of binary and source
(cherry picked from commit 16f01d136ea9c5bdb5216ec65817105d99d234e2)
This commit is contained in:
parent
4c03787c37
commit
6fd21b6940
848
0003-bugfix-binary-name-mapping-source.patch
Normal file
848
0003-bugfix-binary-name-mapping-source.patch
Normal file
@ -0,0 +1,848 @@
|
||||
diff --git a/packageship/application/initialize/binary.json b/packageship/application/initialize/binary.json
|
||||
index ebaa681a890a370745fc8a1282b8519fa1d3c734..a3abb5afd41085a83839ef3b2231f7efc4f9658f 100644
|
||||
--- a/packageship/application/initialize/binary.json
|
||||
+++ b/packageship/application/initialize/binary.json
|
||||
@@ -135,18 +135,6 @@
|
||||
"ignore_above": 256,
|
||||
"index": false
|
||||
},
|
||||
- "relation": {
|
||||
- "properties": {
|
||||
- "bin_name": {
|
||||
- "type": "keyword",
|
||||
- "ignore_above": 256
|
||||
- },
|
||||
- "src_name": {
|
||||
- "type": "keyword",
|
||||
- "ignore_above": 256
|
||||
- }
|
||||
- }
|
||||
- },
|
||||
"release": {
|
||||
"type": "keyword",
|
||||
"ignore_above": 256
|
||||
diff --git a/packageship/application/initialize/integration.py b/packageship/application/initialize/integration.py
|
||||
index f7cd38f6258c3a0f0e05a2d2fea8317e269e2833..788b2f79edcab39a08e4d1094c48027db145c986 100644
|
||||
--- a/packageship/application/initialize/integration.py
|
||||
+++ b/packageship/application/initialize/integration.py
|
||||
@@ -201,20 +201,21 @@ class InitializeService:
|
||||
|
||||
"""
|
||||
sources = []
|
||||
- for src_pack_name, src_pack in self._src_pack.items():
|
||||
+ for _, src_pack in self._src_pack.items():
|
||||
es_json = ESJson()
|
||||
es_json.update(src_pack)
|
||||
es_json["requires"] = self._build_requires(
|
||||
src_pack['pkgKey'])
|
||||
try:
|
||||
- for bin_pack in self._bin_pack['sources'].pop(src_pack_name):
|
||||
+ location_href = src_pack["location_href"].split('/')[-1]
|
||||
+ for bin_pack in self._bin_pack['sources'].get(location_href):
|
||||
_subpacks = dict(
|
||||
name=bin_pack["name"], version=bin_pack["version"])
|
||||
try:
|
||||
es_json["subpacks"].append(_subpacks)
|
||||
except TypeError:
|
||||
es_json["subpacks"] = [_subpacks]
|
||||
- except KeyError:
|
||||
+ except TypeError:
|
||||
es_json["subpacks"] = None
|
||||
sources.append(self._es_json("-source", es_json))
|
||||
helpers.bulk(self._session.client, sources)
|
||||
@@ -227,6 +228,10 @@ class InitializeService:
|
||||
binarys = []
|
||||
be_depends = []
|
||||
for _, bin_pack in self._bin_pack["packages"].items():
|
||||
+ bin_pack["src_name"] = self._src_location[bin_pack["src_name"]]["name"]
|
||||
+ if isinstance(bin_pack["src_name"], ESJson):
|
||||
+ bin_pack["src_name"] = None
|
||||
+
|
||||
be_depends.append(self._be_depend(bin_pack))
|
||||
es_json = ESJson()
|
||||
es_json.update(bin_pack)
|
||||
@@ -275,7 +280,9 @@ class InitializeService:
|
||||
try:
|
||||
for require in self._bin_requires.get(provide["name"]):
|
||||
_bin_pack = self._bin_pack["pkg_key"][require["pkgKey"]]
|
||||
- _src_pack = self._src_pack[_bin_pack["src_name"]]
|
||||
+ _src_pack = self._src_location[_bin_pack["src_name"]]
|
||||
+ if not _src_pack:
|
||||
+ _src_pack = self._src_pack[_bin_pack["src_name"]]
|
||||
component_json["install_require"].append({
|
||||
"req_bin_name": _bin_pack["name"],
|
||||
"req_bin_version": _bin_pack["version"],
|
||||
@@ -373,7 +380,7 @@ class InitializeService:
|
||||
return {
|
||||
"_index": str(self._repo["dbname"] + index).lower(),
|
||||
"_type": _type,
|
||||
- "_source": source
|
||||
+ "_source": dict(source)
|
||||
}
|
||||
|
||||
def _relation(self, key):
|
||||
@@ -407,7 +414,6 @@ class InitializeService:
|
||||
except (KeyError, TypeError):
|
||||
return build_requires
|
||||
for src_require in requires:
|
||||
- src_require["relation"] = self._relation(src_require['name'])
|
||||
src_require["requires_type"] = "build"
|
||||
build_requires.append(src_require)
|
||||
return build_requires
|
||||
@@ -422,7 +428,6 @@ class InitializeService:
|
||||
install_requires = list()
|
||||
try:
|
||||
for bin_require in self._bin_requires.get(bin_pack['pkgKey']):
|
||||
- bin_require["relation"] = self._relation(bin_require['name'])
|
||||
bin_require["requires_type"] = "install"
|
||||
install_requires.append(bin_require)
|
||||
|
||||
@@ -465,6 +470,14 @@ class InitializeService:
|
||||
self._data.src_pkgkeys[src_pack["pkgKey"]] = src_pack
|
||||
return self._data.src_pkgkeys
|
||||
|
||||
+ @property
|
||||
+ def _src_location(self):
|
||||
+ if not self._data.src_location:
|
||||
+ for _, package in self._src_pack.items():
|
||||
+ key = package["location_href"].split('/')[-1]
|
||||
+ self._data["src_location"][key] = package
|
||||
+ return self._data.src_location
|
||||
+
|
||||
@property
|
||||
def _src_requires(self):
|
||||
"""
|
||||
@@ -549,22 +562,16 @@ class InitializeService:
|
||||
"""
|
||||
|
||||
def combination_binary(row_data):
|
||||
- try:
|
||||
- src_package_name = None
|
||||
- _pkgs = row_data.get('rpm_sourcerpm').split(
|
||||
- '-' + row_data.get('version'))
|
||||
- if len(_pkgs) != 1:
|
||||
- src_package_name = ''.join(_pkgs[0:-1])
|
||||
- except AttributeError:
|
||||
- src_package_name = None
|
||||
- row_data["src_name"] = src_package_name
|
||||
+
|
||||
+ rpm_sourcerpm = row_data.get('rpm_sourcerpm')
|
||||
+ row_data["src_name"] = rpm_sourcerpm
|
||||
self._data[table]['packages'][row_data[key]] = row_data
|
||||
self._data[table]["pkg_key"][row_data["pkgKey"]] = row_data
|
||||
- if src_package_name:
|
||||
- if isinstance(self._data[table]["sources"][src_package_name], ESJson):
|
||||
- self._data[table]["sources"][src_package_name] = [row_data]
|
||||
+ if rpm_sourcerpm:
|
||||
+ if isinstance(self._data[table]["sources"][rpm_sourcerpm], ESJson):
|
||||
+ self._data[table]["sources"][rpm_sourcerpm] = [row_data]
|
||||
else:
|
||||
- self._data[table]["sources"][src_package_name].append(
|
||||
+ self._data[table]["sources"][rpm_sourcerpm].append(
|
||||
row_data)
|
||||
|
||||
def others(row_data, dict_key):
|
||||
diff --git a/packageship/application/initialize/source.json b/packageship/application/initialize/source.json
|
||||
index 5ee3544dd897b0469eee9c109c934221f6e3ba0c..12049bfd110baf885a06ead363ff4609f05ed21c 100644
|
||||
--- a/packageship/application/initialize/source.json
|
||||
+++ b/packageship/application/initialize/source.json
|
||||
@@ -26,18 +26,6 @@
|
||||
"type": "keyword",
|
||||
"ignore_above": 256
|
||||
},
|
||||
- "relation": {
|
||||
- "properties": {
|
||||
- "bin_name": {
|
||||
- "type": "keyword",
|
||||
- "ignore_above": 256
|
||||
- },
|
||||
- "src_name": {
|
||||
- "type": "keyword",
|
||||
- "ignore_above": 256
|
||||
- }
|
||||
- }
|
||||
- },
|
||||
"release": {
|
||||
"type": "keyword",
|
||||
"ignore_above": 256
|
||||
diff --git a/test/cli/init_command/comparison_relation_case/relationship/binary.json b/test/cli/init_command/comparison_relation_case/relationship/binary.json
|
||||
index 5e202ba4819ad842d8ba5b344ebbf15f851da563..09a87898e08e787b571cfc35122cb0eca4f5251c 100644
|
||||
--- a/test/cli/init_command/comparison_relation_case/relationship/binary.json
|
||||
+++ b/test/cli/init_command/comparison_relation_case/relationship/binary.json
|
||||
@@ -1,230 +1,212 @@
|
||||
{
|
||||
- "pkgKey": 35,
|
||||
- "pkgId": "df487e3623660d477f556899fce77ac650322c4362d82e047c6efc013e07ae5b",
|
||||
- "name": "Judy",
|
||||
- "arch": "aarch64",
|
||||
- "version": "1.0.5",
|
||||
- "epoch": "0",
|
||||
- "release": "19.oe1",
|
||||
- "summary": "C library array",
|
||||
- "description": "The package provides the most advanced core technology, the main\nadvantages are scalability, high performance and memory efficiency.",
|
||||
- "url": "http://sourceforge.net/projects/judy/",
|
||||
- "time_file": 1601219934,
|
||||
- "time_build": 1601219910,
|
||||
- "rpm_license": "LGPLv2+",
|
||||
- "rpm_vendor": "http://openeuler.org",
|
||||
- "rpm_group": "Unspecified",
|
||||
- "rpm_buildhost": "obs-worker-0016",
|
||||
- "rpm_sourcerpm": "Judy-1.0.5-19.oe1.src.rpm",
|
||||
- "rpm_header_start": 5096,
|
||||
- "rpm_header_end": 8772,
|
||||
- "rpm_packager": "http://openeuler.org",
|
||||
- "size_package": 114276,
|
||||
- "size_installed": 356971,
|
||||
- "size_archive": 358048,
|
||||
- "location_href": "Packages/Judy-1.0.5-19.oe1.aarch64.rpm",
|
||||
- "location_base": null,
|
||||
- "checksum_type": "sha256",
|
||||
- "src_name": "Judy",
|
||||
- "provides": [
|
||||
- {
|
||||
- "name": "Judy",
|
||||
- "flags": "EQ",
|
||||
- "epoch": "0",
|
||||
- "version": "1.0.5",
|
||||
- "release": "19.oe1",
|
||||
- "pkgKey": 35
|
||||
- },
|
||||
- {
|
||||
- "name": "Judy(aarch-64)",
|
||||
- "flags": "EQ",
|
||||
- "epoch": "0",
|
||||
- "version": "1.0.5",
|
||||
- "release": "19.oe1",
|
||||
- "pkgKey": 35
|
||||
- },
|
||||
- {
|
||||
- "name": "libJudy.so.1()(64bit)",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 35
|
||||
- }
|
||||
- ],
|
||||
- "files": [
|
||||
- {
|
||||
- "name": "/etc/ima/digest_lists/0-metadata_list-compact-Judy-1.0.5-19.oe1.aarch64",
|
||||
- "type": "file",
|
||||
- "pkgKey": 35
|
||||
- },
|
||||
- {
|
||||
- "name": "/etc/ima/digest_lists.tlv/0-metadata_list-compact_tlv-Judy-1.0.5-19.oe1.aarch64",
|
||||
- "type": "file",
|
||||
- "pkgKey": 35
|
||||
- }
|
||||
- ],
|
||||
- "filelists": [
|
||||
- {
|
||||
- "pkgKey": 35,
|
||||
- "dirname": "/usr/share/licenses",
|
||||
- "filenames": "Judy",
|
||||
- "filetypes": "d"
|
||||
- },
|
||||
- {
|
||||
- "pkgKey": 35,
|
||||
- "dirname": "/usr/share/licenses/Judy",
|
||||
- "filenames": "COPYING",
|
||||
- "filetypes": "f"
|
||||
- },
|
||||
- {
|
||||
- "pkgKey": 35,
|
||||
- "dirname": "/etc/ima/digest_lists.tlv",
|
||||
- "filenames": "0-metadata_list-compact_tlv-Judy-1.0.5-19.oe1.aarch64",
|
||||
- "filetypes": "f"
|
||||
- },
|
||||
- {
|
||||
- "pkgKey": 35,
|
||||
- "dirname": "/usr/lib64",
|
||||
- "filenames": "libJudy.so.1/libJudy.so.1.0.3",
|
||||
- "filetypes": "ff"
|
||||
- },
|
||||
- {
|
||||
- "pkgKey": 35,
|
||||
- "dirname": "/etc/ima/digest_lists",
|
||||
- "filenames": "0-metadata_list-compact-Judy-1.0.5-19.oe1.aarch64",
|
||||
- "filetypes": "f"
|
||||
- }
|
||||
- ],
|
||||
- "src_version": "1.0.5",
|
||||
- "requires": [
|
||||
- {
|
||||
- "name": "coreutils",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 14,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [{ "bin_name": "coreutils", "src_name": "coreutils" }],
|
||||
- "requires_type": "build"
|
||||
- },
|
||||
- {
|
||||
- "name": "gawk",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 14,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [{ "bin_name": "gawk", "src_name": "gawk" }],
|
||||
- "requires_type": "build"
|
||||
- },
|
||||
- {
|
||||
- "name": "gcc",
|
||||
- "flags": "GE",
|
||||
- "epoch": "0",
|
||||
- "version": "4.1",
|
||||
- "release": null,
|
||||
- "pkgKey": 14,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [{ "bin_name": "gcc", "src_name": "gcc" }],
|
||||
- "requires_type": "build"
|
||||
- },
|
||||
- {
|
||||
- "name": "make",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 14,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [{ "bin_name": "make", "src_name": "make" }],
|
||||
- "requires_type": "build"
|
||||
- },
|
||||
- {
|
||||
- "name": "sed",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 14,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [{ "bin_name": "sed", "src_name": "sed" }],
|
||||
- "requires_type": "build"
|
||||
- },
|
||||
- {
|
||||
- "name": "/bin/sh",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 35,
|
||||
- "pre": "TRUE",
|
||||
- "relation": [
|
||||
- { "bin_name": "bash", "src_name": "bash" },
|
||||
- { "bin_name": "coreutils", "src_name": "coreutils" }
|
||||
- ],
|
||||
- "requires_type": "install"
|
||||
- },
|
||||
- {
|
||||
- "name": "/bin/sh",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 35,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [
|
||||
- { "bin_name": "bash", "src_name": "bash" },
|
||||
- { "bin_name": "coreutils", "src_name": "coreutils" }
|
||||
- ],
|
||||
- "requires_type": "install"
|
||||
- },
|
||||
- {
|
||||
- "name": "ld-linux-aarch64.so.1()(64bit)",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 35,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [{ "bin_name": "glibc", "src_name": "glibc" }],
|
||||
- "requires_type": "install"
|
||||
- },
|
||||
- {
|
||||
- "name": "ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 35,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [{ "bin_name": "glibc", "src_name": "glibc" }],
|
||||
- "requires_type": "install"
|
||||
- },
|
||||
- {
|
||||
- "name": "rtld(GNU_HASH)",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 35,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [{ "bin_name": "glibc", "src_name": "glibc" }],
|
||||
- "requires_type": "install"
|
||||
- },
|
||||
- {
|
||||
- "name": "libc.so.6(GLIBC_2.17)(64bit)",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 35,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [{ "bin_name": "glibc", "src_name": "glibc" }],
|
||||
- "requires_type": "install"
|
||||
- }
|
||||
- ]
|
||||
- }
|
||||
-
|
||||
\ No newline at end of file
|
||||
+ "pkgKey": 35,
|
||||
+ "pkgId": "df487e3623660d477f556899fce77ac650322c4362d82e047c6efc013e07ae5b",
|
||||
+ "name": "Judy",
|
||||
+ "arch": "aarch64",
|
||||
+ "version": "1.0.5",
|
||||
+ "epoch": "0",
|
||||
+ "release": "19.oe1",
|
||||
+ "summary": "C library array",
|
||||
+ "description": "The package provides the most advanced core technology, the main\nadvantages are scalability, high performance and memory efficiency.",
|
||||
+ "url": "http://sourceforge.net/projects/judy/",
|
||||
+ "time_file": 1601219934,
|
||||
+ "time_build": 1601219910,
|
||||
+ "rpm_license": "LGPLv2+",
|
||||
+ "rpm_vendor": "http://openeuler.org",
|
||||
+ "rpm_group": "Unspecified",
|
||||
+ "rpm_buildhost": "obs-worker-0016",
|
||||
+ "rpm_sourcerpm": "Judy-1.0.5-19.oe1.src.rpm",
|
||||
+ "rpm_header_start": 5096,
|
||||
+ "rpm_header_end": 8772,
|
||||
+ "rpm_packager": "http://openeuler.org",
|
||||
+ "size_package": 114276,
|
||||
+ "size_installed": 356971,
|
||||
+ "size_archive": 358048,
|
||||
+ "location_href": "Packages/Judy-1.0.5-19.oe1.aarch64.rpm",
|
||||
+ "location_base": null,
|
||||
+ "checksum_type": "sha256",
|
||||
+ "src_name": "Judy",
|
||||
+ "provides": [
|
||||
+ {
|
||||
+ "name": "Judy",
|
||||
+ "flags": "EQ",
|
||||
+ "epoch": "0",
|
||||
+ "version": "1.0.5",
|
||||
+ "release": "19.oe1",
|
||||
+ "pkgKey": 35
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "Judy(aarch-64)",
|
||||
+ "flags": "EQ",
|
||||
+ "epoch": "0",
|
||||
+ "version": "1.0.5",
|
||||
+ "release": "19.oe1",
|
||||
+ "pkgKey": 35
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "libJudy.so.1()(64bit)",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 35
|
||||
+ }
|
||||
+ ],
|
||||
+ "files": [
|
||||
+ {
|
||||
+ "name": "/etc/ima/digest_lists/0-metadata_list-compact-Judy-1.0.5-19.oe1.aarch64",
|
||||
+ "type": "file",
|
||||
+ "pkgKey": 35
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "/etc/ima/digest_lists.tlv/0-metadata_list-compact_tlv-Judy-1.0.5-19.oe1.aarch64",
|
||||
+ "type": "file",
|
||||
+ "pkgKey": 35
|
||||
+ }
|
||||
+ ],
|
||||
+ "filelists": [
|
||||
+ {
|
||||
+ "pkgKey": 35,
|
||||
+ "dirname": "/usr/share/licenses",
|
||||
+ "filenames": "Judy",
|
||||
+ "filetypes": "d"
|
||||
+ },
|
||||
+ {
|
||||
+ "pkgKey": 35,
|
||||
+ "dirname": "/usr/share/licenses/Judy",
|
||||
+ "filenames": "COPYING",
|
||||
+ "filetypes": "f"
|
||||
+ },
|
||||
+ {
|
||||
+ "pkgKey": 35,
|
||||
+ "dirname": "/etc/ima/digest_lists.tlv",
|
||||
+ "filenames": "0-metadata_list-compact_tlv-Judy-1.0.5-19.oe1.aarch64",
|
||||
+ "filetypes": "f"
|
||||
+ },
|
||||
+ {
|
||||
+ "pkgKey": 35,
|
||||
+ "dirname": "/usr/lib64",
|
||||
+ "filenames": "libJudy.so.1/libJudy.so.1.0.3",
|
||||
+ "filetypes": "ff"
|
||||
+ },
|
||||
+ {
|
||||
+ "pkgKey": 35,
|
||||
+ "dirname": "/etc/ima/digest_lists",
|
||||
+ "filenames": "0-metadata_list-compact-Judy-1.0.5-19.oe1.aarch64",
|
||||
+ "filetypes": "f"
|
||||
+ }
|
||||
+ ],
|
||||
+ "src_version": "1.0.5",
|
||||
+ "requires": [
|
||||
+ {
|
||||
+ "name": "coreutils",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 14,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "build"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "gawk",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 14,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "build"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "gcc",
|
||||
+ "flags": "GE",
|
||||
+ "epoch": "0",
|
||||
+ "version": "4.1",
|
||||
+ "release": null,
|
||||
+ "pkgKey": 14,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "build"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "make",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 14,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "build"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "sed",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 14,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "build"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "/bin/sh",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 35,
|
||||
+ "pre": "TRUE",
|
||||
+ "requires_type": "install"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "/bin/sh",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 35,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "install"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "ld-linux-aarch64.so.1()(64bit)",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 35,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "install"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 35,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "install"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "rtld(GNU_HASH)",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 35,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "install"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "libc.so.6(GLIBC_2.17)(64bit)",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 35,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "install"
|
||||
+ }
|
||||
+ ]
|
||||
+}
|
||||
\ No newline at end of file
|
||||
diff --git a/test/cli/init_command/comparison_relation_case/relationship/source.json b/test/cli/init_command/comparison_relation_case/relationship/source.json
|
||||
index 664add83ce8467e7d40d0f0f36676579e68775c6..e09f3cb33648a139e8f0a81ff831a55c83f1270b 100644
|
||||
--- a/test/cli/init_command/comparison_relation_case/relationship/source.json
|
||||
+++ b/test/cli/init_command/comparison_relation_case/relationship/source.json
|
||||
@@ -1,72 +1,74 @@
|
||||
{
|
||||
- "pkgKey": 3,
|
||||
- "pkgId": "a2c8963c6d5bdea8d3c9dc1bfa609db643c5a17077eff4eca21aa6e33ff9d4e5",
|
||||
- "name": "CUnit",
|
||||
- "arch": "src",
|
||||
- "version": "2.1.3",
|
||||
- "epoch": "0",
|
||||
- "release": "21.oe1",
|
||||
- "summary": "A Unit Testing Framework for C",
|
||||
- "description": "CUnit is a lightweight system for writing, administering, and running unit tests in C\nIt provides C programmers a basic testing functionality with a flexible variety of user\ninterfaces.\n\nCUnit is built as a static library which is linked with the user's testing code. It\nuses a simple framework for building test structures, and provides a rich set of\nassertions for testing common data types. In addition, several different interfaces are\nprovided for running tests and reporting results.",
|
||||
- "url": "http://cunit.sourceforge.net/",
|
||||
- "time_file": 1601215538,
|
||||
- "time_build": 1601215498,
|
||||
- "rpm_license": "LGPLv2+",
|
||||
- "rpm_vendor": "http://openeuler.org",
|
||||
- "rpm_group": "Unspecified",
|
||||
- "rpm_buildhost": "obs-worker-009",
|
||||
- "rpm_sourcerpm": "",
|
||||
- "rpm_header_start": 5096,
|
||||
- "rpm_header_end": 7552,
|
||||
- "rpm_packager": "http://openeuler.org",
|
||||
- "size_package": 523353,
|
||||
- "size_installed": 516791,
|
||||
- "size_archive": 517172,
|
||||
- "location_href": "Packages/CUnit-2.1.3-21.oe1.src.rpm",
|
||||
- "location_base": null,
|
||||
- "checksum_type": "sha256",
|
||||
- "requires": [
|
||||
- {
|
||||
- "name": "automake",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 3,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [{ "bin_name": "automake", "src_name": "automake" }],
|
||||
- "requires_type": "build"
|
||||
- },
|
||||
- {
|
||||
- "name": "git",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 3,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [
|
||||
- { "bin_name": "git", "src_name": "git" },
|
||||
- { "bin_name": "git", "src_name": "git" }
|
||||
- ],
|
||||
- "requires_type": "build"
|
||||
- },
|
||||
- {
|
||||
- "name": "libtool",
|
||||
- "flags": null,
|
||||
- "epoch": null,
|
||||
- "version": null,
|
||||
- "release": null,
|
||||
- "pkgKey": 3,
|
||||
- "pre": "FALSE",
|
||||
- "relation": [{ "bin_name": "libtool", "src_name": "libtool" }],
|
||||
- "requires_type": "build"
|
||||
- }
|
||||
- ],
|
||||
- "subpacks": [
|
||||
- { "name": "CUnit", "version": "2.1.3" },
|
||||
- { "name": "CUnit-devel", "version": "2.1.3" },
|
||||
- { "name": "CUnit-help", "version": "2.1.3" }
|
||||
- ]
|
||||
- }
|
||||
-
|
||||
\ No newline at end of file
|
||||
+ "pkgKey": 3,
|
||||
+ "pkgId": "a2c8963c6d5bdea8d3c9dc1bfa609db643c5a17077eff4eca21aa6e33ff9d4e5",
|
||||
+ "name": "CUnit",
|
||||
+ "arch": "src",
|
||||
+ "version": "2.1.3",
|
||||
+ "epoch": "0",
|
||||
+ "release": "21.oe1",
|
||||
+ "summary": "A Unit Testing Framework for C",
|
||||
+ "description": "CUnit is a lightweight system for writing, administering, and running unit tests in C\nIt provides C programmers a basic testing functionality with a flexible variety of user\ninterfaces.\n\nCUnit is built as a static library which is linked with the user's testing code. It\nuses a simple framework for building test structures, and provides a rich set of\nassertions for testing common data types. In addition, several different interfaces are\nprovided for running tests and reporting results.",
|
||||
+ "url": "http://cunit.sourceforge.net/",
|
||||
+ "time_file": 1601215538,
|
||||
+ "time_build": 1601215498,
|
||||
+ "rpm_license": "LGPLv2+",
|
||||
+ "rpm_vendor": "http://openeuler.org",
|
||||
+ "rpm_group": "Unspecified",
|
||||
+ "rpm_buildhost": "obs-worker-009",
|
||||
+ "rpm_sourcerpm": "",
|
||||
+ "rpm_header_start": 5096,
|
||||
+ "rpm_header_end": 7552,
|
||||
+ "rpm_packager": "http://openeuler.org",
|
||||
+ "size_package": 523353,
|
||||
+ "size_installed": 516791,
|
||||
+ "size_archive": 517172,
|
||||
+ "location_href": "Packages/CUnit-2.1.3-21.oe1.src.rpm",
|
||||
+ "location_base": null,
|
||||
+ "checksum_type": "sha256",
|
||||
+ "requires": [
|
||||
+ {
|
||||
+ "name": "automake",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 3,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "build"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "git",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 3,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "build"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "libtool",
|
||||
+ "flags": null,
|
||||
+ "epoch": null,
|
||||
+ "version": null,
|
||||
+ "release": null,
|
||||
+ "pkgKey": 3,
|
||||
+ "pre": "FALSE",
|
||||
+ "requires_type": "build"
|
||||
+ }
|
||||
+ ],
|
||||
+ "subpacks": [
|
||||
+ {
|
||||
+ "name": "CUnit",
|
||||
+ "version": "2.1.3"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "CUnit-devel",
|
||||
+ "version": "2.1.3"
|
||||
+ },
|
||||
+ {
|
||||
+ "name": "CUnit-help",
|
||||
+ "version": "2.1.3"
|
||||
+ }
|
||||
+ ]
|
||||
+}
|
||||
\ No newline at end of file
|
||||
diff --git a/test/cli/init_command/comparison_relation_case/test_relationship.py b/test/cli/init_command/comparison_relation_case/test_relationship.py
|
||||
index 7e389297339217f58438053e472b65030fd76fe2..147bb9823cadd0bfb3aec1dae8c62bf443a9042c 100644
|
||||
--- a/test/cli/init_command/comparison_relation_case/test_relationship.py
|
||||
+++ b/test/cli/init_command/comparison_relation_case/test_relationship.py
|
||||
@@ -11,6 +11,7 @@
|
||||
# See the Mulan PSL v2 for more details.
|
||||
# ******************************************************************************/
|
||||
# -*- coding:utf-8 -*-
|
||||
+import json
|
||||
import os
|
||||
import shutil
|
||||
from pathlib import Path
|
||||
diff --git a/test/unpack/compress_files/gz_error.txt b/test/unpack/compress_files/gz_error.txt
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..9ea415ee96ce4459710a2c5cab997053cb5c207f
|
||||
--- /dev/null
|
||||
+++ b/test/unpack/compress_files/gz_error.txt
|
||||
@@ -0,0 +1 @@
|
||||
+gz error file
|
||||
\ No newline at end of file
|
||||
diff --git a/test/unpack/compress_files/tar_error.txt b/test/unpack/compress_files/tar_error.txt
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..beb36750c7e906599a4765ec8debf914f4c0d035
|
||||
--- /dev/null
|
||||
+++ b/test/unpack/compress_files/tar_error.txt
|
||||
@@ -0,0 +1 @@
|
||||
+tar file error
|
||||
\ No newline at end of file
|
||||
diff --git a/test/unpack/compress_files/xz_error.txt b/test/unpack/compress_files/xz_error.txt
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..3fd014f7e5ccf3864da047743a6af767355c4937
|
||||
--- /dev/null
|
||||
+++ b/test/unpack/compress_files/xz_error.txt
|
||||
@@ -0,0 +1 @@
|
||||
+xz file error
|
||||
\ No newline at end of file
|
||||
diff --git a/test/unpack/test_unpack.py b/test/unpack/test_unpack.py
|
||||
index 64ad3381e58867c83e1c10a9f125341771e2c454..90bcae8dcba6e27375467c292e675e84a64d1e9b 100644
|
||||
--- a/test/unpack/test_unpack.py
|
||||
+++ b/test/unpack/test_unpack.py
|
||||
@@ -34,13 +34,13 @@ class TestUnpack(TestCase):
|
||||
def test_gz_unpack(self):
|
||||
"""unpack gz file"""
|
||||
with self.assertRaises(UnpackError):
|
||||
- Unpack.dispatch(".gz", file_path=os.path.join(self.path, "bz2_error.txt"),
|
||||
+ Unpack.dispatch(".gz", file_path=os.path.join(self.path, "gz_error.txt"),
|
||||
save_file=os.path.join(self.path, "bz2_unpack.sqlite"))
|
||||
|
||||
def test_error_tar(self):
|
||||
"""error tar file"""
|
||||
with self.assertRaises(IOError):
|
||||
- Unpack.dispatch(".tar", file_path=os.path.join(self.path, "bz2_error.txt"),
|
||||
+ Unpack.dispatch(".tar", file_path=os.path.join(self.path, "tar_error.txt"),
|
||||
save_file=os.path.join(self.path, "bz2_unpack.sqlite"))
|
||||
|
||||
def test_tar_unpack(self):
|
||||
@@ -50,9 +50,14 @@ class TestUnpack(TestCase):
|
||||
|
||||
def test_error_zip_unpack(self):
|
||||
"""unpack error zip file"""
|
||||
+ file = os.path.join(self.path, "zip_error.txt")
|
||||
+ with open(file, "w", encoding="utf-8") as f:
|
||||
+ f.write("error zip file")
|
||||
with self.assertRaises(IOError):
|
||||
- Unpack.dispatch(".zip", file_path=os.path.join(self.path, "bz2_error.txt"),
|
||||
+ Unpack.dispatch(".zip", file_path=file,
|
||||
save_file=os.path.join(self.path, "zip_file.sqlite"))
|
||||
+ if os.path.exists(file):
|
||||
+ os.remove(file)
|
||||
|
||||
def test_zip_unpack(self):
|
||||
"""unpack zip file"""
|
||||
@@ -64,7 +69,7 @@ class TestUnpack(TestCase):
|
||||
def test_xz_unpack(self):
|
||||
"""unpack xz file"""
|
||||
with self.assertRaises(UnpackError):
|
||||
- Unpack.dispatch(".xz", file_path=os.path.join(self.path, "bz2_error.txt"),
|
||||
+ Unpack.dispatch(".xz", file_path=os.path.join(self.path, "xz_error.txt"),
|
||||
save_file=os.path.join(self.path, "xz.sqlite"))
|
||||
|
||||
def test_file_path_none(self):
|
||||
@ -1,12 +1,13 @@
|
||||
Name: pkgship
|
||||
Version: 2.2.0
|
||||
Release: 3
|
||||
Release: 4
|
||||
Summary: Pkgship implements rpm package dependence ,maintainer, patch query and so on.
|
||||
License: Mulan 2.0
|
||||
URL: https://gitee.com/openeuler/pkgship
|
||||
Source0: https://gitee.com/openeuler/pkgship-%{version}.tar.gz
|
||||
Patch0001: 0001-bugfix-pkginfo.patch
|
||||
Patch0002: 0002-fix-install-and-start-script-info.patch
|
||||
Patch0003: 0003-bugfix-binary-name-mapping-source.patch
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
@ -112,6 +113,11 @@ create_dir_file /var/log/pkgship-operation 700 d
|
||||
%attr(0640,pkgshipuser,pkgshipuser) /lib/systemd/system/pkgship.service
|
||||
|
||||
%changelog
|
||||
* Fri Sep 3 2021 Haiwei Li <lihaiwei8@huawei.com> - 2.2.0-4
|
||||
- Due to the inappropriate mapping rules between the binary package and the source package,
|
||||
- the source package corresponding to the binary package cannot be found when the query bedepend require,
|
||||
- and an error is reported.
|
||||
|
||||
* Thu Sep 2 2021 Haiwei Li <lihaiwei8@huawei.com> - 2.2.0-3
|
||||
- When the input parameters of the script that executes the installation of es and redis are incorrect,
|
||||
- the prompt message is incorrect.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user