mirror of
https://pagure.io/fm-orchestrator.git
synced 2026-04-01 18:01:40 +08:00
Add Koji content generator class
This commit adds support classes for koji content generator imports. Using this class will come later
This commit is contained in:
169
module_build_service/builder/KojiContentGenerator.py
Normal file
169
module_build_service/builder/KojiContentGenerator.py
Normal file
@@ -0,0 +1,169 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in all
|
||||
# copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
#
|
||||
# Written by Stanislav Ochotnicky <sochotnicky@redhat.com>
|
||||
|
||||
|
||||
import calendar
|
||||
import logging
|
||||
import platform
|
||||
import hashlib
|
||||
|
||||
import koji
|
||||
|
||||
import module_build_service
|
||||
from module_build_service import log
|
||||
from module_build_service.builder.KojiModuleBuilder import KojiModuleBuilder
|
||||
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
|
||||
|
||||
class KojiContentGenerator(object):
|
||||
""" Class for handling content generator imports of module builds into Koji """
|
||||
|
||||
def __init__(self, module, config):
|
||||
"""
|
||||
:param owner: a string representing who kicked off the builds
|
||||
:param module: module_build_service.models.ModuleBuild instance.
|
||||
:param config: module_build_service.config.Config instance
|
||||
"""
|
||||
self.owner = module.owner
|
||||
self.module = module
|
||||
self.module_str = module.name
|
||||
self.config = config
|
||||
|
||||
|
||||
def __repr__(self):
|
||||
return "<KojiContentGenerator module: %s>" % (self.module_str)
|
||||
|
||||
def _koji_rpms_in_tag(self, tag):
|
||||
""" Return the list of koji rpms in a tag. """
|
||||
log.debug("Listing rpms in koji tag %s", tag)
|
||||
session = KojiModuleBuilder.get_session(self.config, self.owner)
|
||||
|
||||
try:
|
||||
rpms, builds = session.listTaggedRPMS(tag, latest=True)
|
||||
except koji.GenericError as e:
|
||||
log.exception("Failed to list rpms in tag %r", tag)
|
||||
# If the tag doesn't exist.. then there are no rpms in that tag.
|
||||
return []
|
||||
|
||||
# Extract some srpm-level info from the build attach it to each rpm
|
||||
builds = {build['build_id']: build for build in builds}
|
||||
for rpm in rpms:
|
||||
idx = rpm['build_id']
|
||||
rpm['srpm_name'] = builds[idx]['name']
|
||||
rpm['srpm_nevra'] = builds[idx]['nvr']
|
||||
|
||||
return rpms
|
||||
|
||||
def _get_build(self):
|
||||
ret = {}
|
||||
ret['name'] = self.module.name
|
||||
ret['version'] = self.module.stream
|
||||
ret['release'] = self.module.version
|
||||
ret['source'] = self.module.scmurl
|
||||
ret['start_time'] = calendar.timegm(
|
||||
self.module.time_submitted.utctimetuple())
|
||||
ret['end_time'] = calendar.timegm(
|
||||
self.module.time_completed.utctimetuple())
|
||||
ret['extra'] = {
|
||||
"typeinfo": {
|
||||
"modulemd": {
|
||||
"module_build_service_id": self.module.id,
|
||||
"modulemd_str": self.module.modulemd
|
||||
}
|
||||
}
|
||||
}
|
||||
return ret
|
||||
|
||||
def _get_buildroot(self):
|
||||
import pkg_resources
|
||||
version = pkg_resources.get_distribution("module-build-service").version
|
||||
distro = platform.linux_distribution()
|
||||
ret = {
|
||||
"id": 1,
|
||||
"host": {
|
||||
"arch": platform.machine(),
|
||||
'os': "%s %s" % (distro[0], distro[1])
|
||||
},
|
||||
"content_generator": {
|
||||
"name": "module-build-service",
|
||||
"version": version
|
||||
},
|
||||
"container": {
|
||||
"arch": platform.machine(),
|
||||
"type": "none"
|
||||
},
|
||||
"components": [],
|
||||
"tools": []
|
||||
}
|
||||
return ret
|
||||
|
||||
|
||||
|
||||
def _get_output(self):
|
||||
ret = []
|
||||
rpms = self._koji_rpms_in_tag(self.module.koji_tag)
|
||||
components = []
|
||||
for rpm in rpms:
|
||||
components.append(
|
||||
{
|
||||
"name": rpm["name"],
|
||||
"version": rpm["version"],
|
||||
"release": rpm["release"],
|
||||
"arch": rpm["arch"],
|
||||
"epoch": rpm["epoch"],
|
||||
"sigmd5": rpm["payloadhash"],
|
||||
"type": "rpm"
|
||||
}
|
||||
)
|
||||
|
||||
ret.append(
|
||||
{
|
||||
'buildroot_id': 1,
|
||||
'arch': "noarch",
|
||||
'type': 'modulemd',
|
||||
'filesize': len(self.module_str),
|
||||
'checksum_type': 'md5',
|
||||
'checksum': hashlib.md5(self.module_str).hexdigest(),
|
||||
'filename': 'modulemd.yaml',
|
||||
'components': components
|
||||
}
|
||||
)
|
||||
# TODO add logs output
|
||||
return ret
|
||||
|
||||
|
||||
def _get_content_generator_metadata(self):
|
||||
ret = {
|
||||
"metadata_version": 0,
|
||||
"buildroots": [self._get_buildroot()],
|
||||
"build": self._get_build(),
|
||||
"output": self._get_output()
|
||||
}
|
||||
|
||||
return ret
|
||||
|
||||
def koji_import(self):
|
||||
session = KojiModuleBuilder.get_session(self.config, self.owner)
|
||||
|
||||
metadata = self._get_content_generator_metadata()
|
||||
95
tests/test_content_generator.py
Normal file
95
tests/test_content_generator.py
Normal file
@@ -0,0 +1,95 @@
|
||||
# Copyright (c) 2016 Red Hat, Inc.
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in all
|
||||
# copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
#
|
||||
# Written by Stanislav Ochotnicky <sochotnicky@redhat.com>
|
||||
|
||||
import unittest
|
||||
import json
|
||||
import vcr
|
||||
|
||||
from os import path
|
||||
from os.path import dirname
|
||||
|
||||
|
||||
import module_build_service.messaging
|
||||
import module_build_service.scheduler.handlers.repos
|
||||
import module_build_service.utils
|
||||
from module_build_service import models, conf
|
||||
|
||||
from mock import patch, Mock
|
||||
|
||||
from tests import init_data
|
||||
|
||||
from module_build_service.builder.KojiContentGenerator import KojiContentGenerator
|
||||
|
||||
base_dir = dirname(dirname(__file__))
|
||||
cassette_dir = base_dir + '/vcr-request-data/'
|
||||
|
||||
user = ('Homer J. Simpson', set(['packager']))
|
||||
|
||||
|
||||
class TestBuild(unittest.TestCase):
|
||||
|
||||
# Global variable used for tests if needed
|
||||
_global_var = None
|
||||
|
||||
def setUp(self):
|
||||
init_data()
|
||||
module = models.ModuleBuild.query.filter_by(id=1).one()
|
||||
self.cg = KojiContentGenerator(module, conf)
|
||||
|
||||
filename = cassette_dir + self.id()
|
||||
self.vcr = vcr.use_cassette(filename)
|
||||
self.vcr.__enter__()
|
||||
|
||||
|
||||
def tearDown(self):
|
||||
# Necessary to restart the twisted reactor for the next test.
|
||||
import sys
|
||||
del sys.modules['twisted.internet.reactor']
|
||||
del sys.modules['moksha.hub.reactor']
|
||||
del sys.modules['moksha.hub']
|
||||
import moksha.hub.reactor
|
||||
self.vcr.__exit__()
|
||||
|
||||
@patch("pkg_resources.get_distribution")
|
||||
@patch("platform.linux_distribution")
|
||||
@patch("platform.machine")
|
||||
@patch("module_build_service.builder.KojiContentGenerator.KojiContentGenerator._koji_rpms_in_tag")
|
||||
def test_get_generator_json(self, rpms_in_tag, machine, distro, pkg_res):
|
||||
self.maxDiff = None
|
||||
distro.return_value = ("Fedora", "25", "Twenty Five")
|
||||
machine.return_value = "i686"
|
||||
pkg_res.return_value = Mock()
|
||||
pkg_res.return_value.version = "current-tested-version"
|
||||
|
||||
tests_dir = path.abspath(path.dirname(__file__))
|
||||
rpm_in_tag_path = path.join(tests_dir,
|
||||
"test_get_generator_json_rpms_in_tag.json")
|
||||
with open(rpm_in_tag_path) as rpms_in_tag_file:
|
||||
rpms_in_tag.return_value = json.load(rpms_in_tag_file)
|
||||
|
||||
expected_output_path = path.join(tests_dir,
|
||||
"test_get_generator_json_expected_output.json")
|
||||
with open(expected_output_path) as expected_output_file:
|
||||
expected_output = json.load(expected_output_file)
|
||||
ret = self.cg._get_content_generator_metadata()
|
||||
rpms_in_tag.assert_called_once()
|
||||
self.assertEqual(expected_output, ret)
|
||||
625
tests/test_get_generator_json_expected_output.json
Normal file
625
tests/test_get_generator_json_expected_output.json
Normal file
@@ -0,0 +1,625 @@
|
||||
{
|
||||
"buildroots": [{
|
||||
"id": 1,
|
||||
"host": {
|
||||
"arch": "i686",
|
||||
"os": "Fedora 25"
|
||||
},
|
||||
"content_generator": {
|
||||
"name": "module-build-service",
|
||||
"version": "current-tested-version"
|
||||
},
|
||||
"tools": [],
|
||||
"components": [],
|
||||
"container": {
|
||||
"arch": "i686",
|
||||
"type": "none"
|
||||
}
|
||||
}],
|
||||
"output": [
|
||||
{
|
||||
"filename": "modulemd.yaml",
|
||||
"buildroot_id": 1,
|
||||
"components": [
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "armv7hl",
|
||||
"name": "dhcp-relay",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "90fa6038158ed88725a1e4d80abf489d"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "armv7hl",
|
||||
"name": "dhcp-libs",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "0d5830920551ce9ed6ec3794347f2fce"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "armv7hl",
|
||||
"name": "dhcp-devel",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "c705770bb47ef5786c8efa123f5fe797"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "armv7hl",
|
||||
"name": "dhcp-client",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "14d454c33f0e69e34af2355297c3c9f0"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "armv7hl",
|
||||
"name": "dhcp-server",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "18480b5d37274b933eccaf8600a4c039"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "armv7hl",
|
||||
"name": "dhcp-compat",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "1e15de6b5a263bf407eb627f36cc6c0a"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "armv7hl",
|
||||
"name": "dhcp-debuginfo",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "2d142f5d634b1595da9f84bfa9998eb8"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "i686",
|
||||
"name": "dhcp-compat",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "5bf7e2bb1e457d2d636d39b1f7dd2cd7"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "i686",
|
||||
"name": "dhcp-relay",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "4be0015f9290a8c7489f7e8240653730"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "i686",
|
||||
"name": "dhcp-client",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "54d581defa0de65df647691cc30b3c8d"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "i686",
|
||||
"name": "dhcp-server",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "8b6486cb5ba4dd1355e60d100ff2d269"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "i686",
|
||||
"name": "dhcp-libs",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "aaf81ee6c2bce98aa0b9ea7c4a912e08"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "i686",
|
||||
"name": "dhcp-debuginfo",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "5ba2750d1411f10be8d4c45bcdae3038"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "i686",
|
||||
"name": "dhcp-devel",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "05c0a31a93e89e710d9df04ce943b339"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64",
|
||||
"name": "dhcp-debuginfo",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "3dadcbd5643f9228d2c63faa4c7261ac"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64",
|
||||
"name": "dhcp-client",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "2d9bf0c0415f5cea9c599b4a263ed6b7"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64",
|
||||
"name": "dhcp-relay",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "38d8e6c2cff7c6aab9ce607cd8b881ce"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64",
|
||||
"name": "dhcp-libs",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "0ed34d01f24c2e244aee09767d6eec2e"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64",
|
||||
"name": "dhcp-compat",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "fb645d96e97c24a4e6650344b38f5eb3"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64",
|
||||
"name": "dhcp-devel",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "0a21a17c8230c8c12ff588d4af0892b8"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64",
|
||||
"name": "dhcp-server",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "2e5ab6824e0b13a6ca8f89a485cac034"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "aarch64",
|
||||
"name": "dhcp-relay",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "1f85196afd24e0664918ca781111e1c5"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "aarch64",
|
||||
"name": "dhcp-server",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "e1ef32e7da2c6767b9fb4b623525ab60"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "aarch64",
|
||||
"name": "dhcp-client",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "5adae02507dac66db420f8798111a282"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "aarch64",
|
||||
"name": "dhcp-debuginfo",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "1310c413efb5e4e6dff196a41b61ab16"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "aarch64",
|
||||
"name": "dhcp-compat",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "75be4f00e000f37b2b6ae9361d7a7f65"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "aarch64",
|
||||
"name": "dhcp-libs",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "1482a2638fe741086b453cf76645b61b"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "aarch64",
|
||||
"name": "dhcp-devel",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "09b21aaf971818463a9d4fa31ade485e"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64le",
|
||||
"name": "dhcp-server",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "0c1bed339fe3e71a0252fc69859c76e5"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64le",
|
||||
"name": "dhcp-client",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "ae14bf7cac86f5f58ecb18ca2cdeb76e"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64le",
|
||||
"name": "dhcp-compat",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "c6dc94a975e8939a73446f9a69da6718"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64le",
|
||||
"name": "dhcp-relay",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "4bad7b8404596d0b48be22c9362d7b2c"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64le",
|
||||
"name": "dhcp-debuginfo",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "19461ea5d257ffe0dda0dc56cf73ad5d"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64le",
|
||||
"name": "dhcp-devel",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "2bcef78ccca5986db7d7fa5e5a9a40b8"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "ppc64le",
|
||||
"name": "dhcp-libs",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "b9406e5356db6c36f15af21e4a8ddf7c"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "x86_64",
|
||||
"name": "dhcp-libs",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "499ae3c5ca57ef45d14643850da39e52"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "x86_64",
|
||||
"name": "dhcp-client",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "b40b18aced3a78a7c670135cb97bed2d"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "x86_64",
|
||||
"name": "dhcp-debuginfo",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "68e7c7ac713ba5cd6b49e3912fc74f56"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "x86_64",
|
||||
"name": "dhcp-devel",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "96c6c1b0a8bfc782f6dc4451f033cc3f"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "x86_64",
|
||||
"name": "dhcp-compat",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "03aaa447e471575b0ff6ba8dbd656ed6"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "x86_64",
|
||||
"name": "dhcp-server",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "12fb5fb1c246b3d357239b51034f66f5"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "noarch",
|
||||
"name": "dhcp-common",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "d59b5a08ff2ab593978614ecf7f7f0c7"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "x86_64",
|
||||
"name": "dhcp-relay",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "846faaa11674763b163c606d0f87a635"
|
||||
},
|
||||
{
|
||||
"epoch": 12,
|
||||
"type": "rpm",
|
||||
"version": "4.3.5",
|
||||
"arch": "src",
|
||||
"name": "dhcp",
|
||||
"release": "5.module_2118aef6",
|
||||
"sigmd5": "45c2f6b6131c68dc4da0833caeefa5d3"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "armv7hl",
|
||||
"name": "bind99-devel",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "891e4729ae04ef7d04ead60a884c1c3c"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "armv7hl",
|
||||
"name": "bind99-debuginfo",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "1c21d138cf080c00ce2cc5837e7b2b63"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "armv7hl",
|
||||
"name": "bind99-libs",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "45f88db7672bd209a9999b1e7a3d6410"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "i686",
|
||||
"name": "bind99-libs",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "e2d4a9a7ee3389e0cb354ac9590c573e"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "i686",
|
||||
"name": "bind99-debuginfo",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "b2c00bf25e3b943e2f8ff36a904cb6bd"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "i686",
|
||||
"name": "bind99-devel",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "d012ca49b66e81ee6d4350b7b27eadf0"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "ppc64",
|
||||
"name": "bind99-libs",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "6889d9619b2509d1d6019d4d585e1ace"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "ppc64",
|
||||
"name": "bind99-devel",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "758f99d5a885259c05b12422188c3367"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "ppc64",
|
||||
"name": "bind99-debuginfo",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "67fb6720b1fdc6a764fc64dc73362e19"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "aarch64",
|
||||
"name": "bind99-devel",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "055d1311d31db0279f554630f9c87bc4"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "aarch64",
|
||||
"name": "bind99-libs",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "c96f841ab07863b0e5dc40668328515d"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "aarch64",
|
||||
"name": "bind99-debuginfo",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "c04123eff71cae1b3ea6b76a44c83d66"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "ppc64le",
|
||||
"name": "bind99-devel",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "8db3604b46f68683dd7207e155fe6464"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "ppc64le",
|
||||
"name": "bind99-libs",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "629008b3edd9e5ef9a8eedf166351e62"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "ppc64le",
|
||||
"name": "bind99-debuginfo",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "b06998cfaf8f9f2b88d3d362472d7c55"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "x86_64",
|
||||
"name": "bind99-libs",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "6c9f40725a31320e698267110de19ca9"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "x86_64",
|
||||
"name": "bind99-debuginfo",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "ae381be6cccbdad9c15f370550c3e66a"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "x86_64",
|
||||
"name": "bind99-devel",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "9845ee96c4a4bfc84eaea2ba46104f5a"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "noarch",
|
||||
"name": "bind99-license",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "b60b539e075d68992bfd40346f9f7bd8"
|
||||
},
|
||||
{
|
||||
"epoch": null,
|
||||
"type": "rpm",
|
||||
"version": "9.9.9",
|
||||
"arch": "src",
|
||||
"name": "bind99",
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"sigmd5": "38758ae862424b354b20d9d4d38be97e"
|
||||
}
|
||||
],
|
||||
"arch": "noarch",
|
||||
"filesize": 5,
|
||||
"checksum": "ee434023cf89d7dfb21f63d64f0f9d74",
|
||||
"checksum_type": "md5",
|
||||
"type": "modulemd"
|
||||
}
|
||||
],
|
||||
"metadata_version": 0,
|
||||
"build": {
|
||||
"version": "1",
|
||||
"end_time": 1472901932,
|
||||
"name": "nginx",
|
||||
"release": "2",
|
||||
"extra": {
|
||||
"typeinfo": {
|
||||
"modulemd": {
|
||||
"module_build_service_id": 1,
|
||||
"modulemd_str": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"source": "git://pkgs.domain.local/modules/nginx?#ba95886c7a443b36a9ce31abda1f9bef22f2f8c9",
|
||||
"start_time": 1472901800
|
||||
}
|
||||
}
|
||||
962
tests/test_get_generator_json_rpms_in_tag.json
Normal file
962
tests/test_get_generator_json_rpms_in_tag.json
Normal file
@@ -0,0 +1,962 @@
|
||||
[
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-relay",
|
||||
"extra": null,
|
||||
"arch": "armv7hl",
|
||||
"buildtime": 1492700546,
|
||||
"id": 9519610,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319958,
|
||||
"payloadhash": "90fa6038158ed88725a1e4d80abf489d",
|
||||
"size": 217814
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-libs",
|
||||
"extra": null,
|
||||
"arch": "armv7hl",
|
||||
"buildtime": 1492700546,
|
||||
"id": 9519609,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319958,
|
||||
"payloadhash": "0d5830920551ce9ed6ec3794347f2fce",
|
||||
"size": 135498
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-devel",
|
||||
"extra": null,
|
||||
"arch": "armv7hl",
|
||||
"buildtime": 1492700546,
|
||||
"id": 9519608,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319958,
|
||||
"payloadhash": "c705770bb47ef5786c8efa123f5fe797",
|
||||
"size": 116886
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-client",
|
||||
"extra": null,
|
||||
"arch": "armv7hl",
|
||||
"buildtime": 1492700546,
|
||||
"id": 9519607,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319958,
|
||||
"payloadhash": "14d454c33f0e69e34af2355297c3c9f0",
|
||||
"size": 295382
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-server",
|
||||
"extra": null,
|
||||
"arch": "armv7hl",
|
||||
"buildtime": 1492700546,
|
||||
"id": 9519606,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319958,
|
||||
"payloadhash": "18480b5d37274b933eccaf8600a4c039",
|
||||
"size": 491558
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-compat",
|
||||
"extra": null,
|
||||
"arch": "armv7hl",
|
||||
"buildtime": 1492700546,
|
||||
"id": 9519605,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319958,
|
||||
"payloadhash": "1e15de6b5a263bf407eb627f36cc6c0a",
|
||||
"size": 87722
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "armv7hl",
|
||||
"buildtime": 1492700546,
|
||||
"id": 9519604,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319958,
|
||||
"payloadhash": "2d142f5d634b1595da9f84bfa9998eb8",
|
||||
"size": 1762550
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-compat",
|
||||
"extra": null,
|
||||
"arch": "i686",
|
||||
"buildtime": 1492700413,
|
||||
"id": 9519603,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319954,
|
||||
"payloadhash": "5bf7e2bb1e457d2d636d39b1f7dd2cd7",
|
||||
"size": 87702
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-relay",
|
||||
"extra": null,
|
||||
"arch": "i686",
|
||||
"buildtime": 1492700413,
|
||||
"id": 9519602,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319954,
|
||||
"payloadhash": "4be0015f9290a8c7489f7e8240653730",
|
||||
"size": 240638
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-client",
|
||||
"extra": null,
|
||||
"arch": "i686",
|
||||
"buildtime": 1492700413,
|
||||
"id": 9519601,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319954,
|
||||
"payloadhash": "54d581defa0de65df647691cc30b3c8d",
|
||||
"size": 324782
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-server",
|
||||
"extra": null,
|
||||
"arch": "i686",
|
||||
"buildtime": 1492700413,
|
||||
"id": 9519600,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319954,
|
||||
"payloadhash": "8b6486cb5ba4dd1355e60d100ff2d269",
|
||||
"size": 544070
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-libs",
|
||||
"extra": null,
|
||||
"arch": "i686",
|
||||
"buildtime": 1492700413,
|
||||
"id": 9519599,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319954,
|
||||
"payloadhash": "aaf81ee6c2bce98aa0b9ea7c4a912e08",
|
||||
"size": 147038
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "i686",
|
||||
"buildtime": 1492700413,
|
||||
"id": 9519598,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319954,
|
||||
"payloadhash": "5ba2750d1411f10be8d4c45bcdae3038",
|
||||
"size": 1756854
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-devel",
|
||||
"extra": null,
|
||||
"arch": "i686",
|
||||
"buildtime": 1492700413,
|
||||
"id": 9519597,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319954,
|
||||
"payloadhash": "05c0a31a93e89e710d9df04ce943b339",
|
||||
"size": 116854
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "ppc64",
|
||||
"buildtime": 1492700534,
|
||||
"id": 9519596,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319957,
|
||||
"payloadhash": "3dadcbd5643f9228d2c63faa4c7261ac",
|
||||
"size": 1814630
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-client",
|
||||
"extra": null,
|
||||
"arch": "ppc64",
|
||||
"buildtime": 1492700534,
|
||||
"id": 9519595,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319957,
|
||||
"payloadhash": "2d9bf0c0415f5cea9c599b4a263ed6b7",
|
||||
"size": 328742
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-relay",
|
||||
"extra": null,
|
||||
"arch": "ppc64",
|
||||
"buildtime": 1492700534,
|
||||
"id": 9519594,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319957,
|
||||
"payloadhash": "38d8e6c2cff7c6aab9ce607cd8b881ce",
|
||||
"size": 244658
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-libs",
|
||||
"extra": null,
|
||||
"arch": "ppc64",
|
||||
"buildtime": 1492700534,
|
||||
"id": 9519593,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319957,
|
||||
"payloadhash": "0ed34d01f24c2e244aee09767d6eec2e",
|
||||
"size": 150898
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-compat",
|
||||
"extra": null,
|
||||
"arch": "ppc64",
|
||||
"buildtime": 1492700534,
|
||||
"id": 9519592,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319957,
|
||||
"payloadhash": "fb645d96e97c24a4e6650344b38f5eb3",
|
||||
"size": 87670
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-devel",
|
||||
"extra": null,
|
||||
"arch": "ppc64",
|
||||
"buildtime": 1492700534,
|
||||
"id": 9519591,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319957,
|
||||
"payloadhash": "0a21a17c8230c8c12ff588d4af0892b8",
|
||||
"size": 116842
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-server",
|
||||
"extra": null,
|
||||
"arch": "ppc64",
|
||||
"buildtime": 1492700534,
|
||||
"id": 9519590,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319957,
|
||||
"payloadhash": "2e5ab6824e0b13a6ca8f89a485cac034",
|
||||
"size": 542926
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-relay",
|
||||
"extra": null,
|
||||
"arch": "aarch64",
|
||||
"buildtime": 1492700521,
|
||||
"id": 9519589,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319956,
|
||||
"payloadhash": "1f85196afd24e0664918ca781111e1c5",
|
||||
"size": 231858
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-server",
|
||||
"extra": null,
|
||||
"arch": "aarch64",
|
||||
"buildtime": 1492700521,
|
||||
"id": 9519588,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319956,
|
||||
"payloadhash": "e1ef32e7da2c6767b9fb4b623525ab60",
|
||||
"size": 527954
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-client",
|
||||
"extra": null,
|
||||
"arch": "aarch64",
|
||||
"buildtime": 1492700521,
|
||||
"id": 9519587,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319956,
|
||||
"payloadhash": "5adae02507dac66db420f8798111a282",
|
||||
"size": 313326
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "aarch64",
|
||||
"buildtime": 1492700521,
|
||||
"id": 9519586,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319956,
|
||||
"payloadhash": "1310c413efb5e4e6dff196a41b61ab16",
|
||||
"size": 1809826
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-compat",
|
||||
"extra": null,
|
||||
"arch": "aarch64",
|
||||
"buildtime": 1492700521,
|
||||
"id": 9519585,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319956,
|
||||
"payloadhash": "75be4f00e000f37b2b6ae9361d7a7f65",
|
||||
"size": 87674
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-libs",
|
||||
"extra": null,
|
||||
"arch": "aarch64",
|
||||
"buildtime": 1492700521,
|
||||
"id": 9519584,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319956,
|
||||
"payloadhash": "1482a2638fe741086b453cf76645b61b",
|
||||
"size": 143798
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-devel",
|
||||
"extra": null,
|
||||
"arch": "aarch64",
|
||||
"buildtime": 1492700521,
|
||||
"id": 9519583,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319956,
|
||||
"payloadhash": "09b21aaf971818463a9d4fa31ade485e",
|
||||
"size": 116854
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-server",
|
||||
"extra": null,
|
||||
"arch": "ppc64le",
|
||||
"buildtime": 1492700513,
|
||||
"id": 9519582,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319955,
|
||||
"payloadhash": "0c1bed339fe3e71a0252fc69859c76e5",
|
||||
"size": 547290
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-client",
|
||||
"extra": null,
|
||||
"arch": "ppc64le",
|
||||
"buildtime": 1492700513,
|
||||
"id": 9519581,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319955,
|
||||
"payloadhash": "ae14bf7cac86f5f58ecb18ca2cdeb76e",
|
||||
"size": 332302
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-compat",
|
||||
"extra": null,
|
||||
"arch": "ppc64le",
|
||||
"buildtime": 1492700513,
|
||||
"id": 9519580,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319955,
|
||||
"payloadhash": "c6dc94a975e8939a73446f9a69da6718",
|
||||
"size": 87702
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-relay",
|
||||
"extra": null,
|
||||
"arch": "ppc64le",
|
||||
"buildtime": 1492700513,
|
||||
"id": 9519579,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319955,
|
||||
"payloadhash": "4bad7b8404596d0b48be22c9362d7b2c",
|
||||
"size": 246754
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "ppc64le",
|
||||
"buildtime": 1492700513,
|
||||
"id": 9519578,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319955,
|
||||
"payloadhash": "19461ea5d257ffe0dda0dc56cf73ad5d",
|
||||
"size": 1821430
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-devel",
|
||||
"extra": null,
|
||||
"arch": "ppc64le",
|
||||
"buildtime": 1492700513,
|
||||
"id": 9519577,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319955,
|
||||
"payloadhash": "2bcef78ccca5986db7d7fa5e5a9a40b8",
|
||||
"size": 116878
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-libs",
|
||||
"extra": null,
|
||||
"arch": "ppc64le",
|
||||
"buildtime": 1492700513,
|
||||
"id": 9519576,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319955,
|
||||
"payloadhash": "b9406e5356db6c36f15af21e4a8ddf7c",
|
||||
"size": 150934
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-libs",
|
||||
"extra": null,
|
||||
"arch": "x86_64",
|
||||
"buildtime": 1492700424,
|
||||
"id": 9519575,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319953,
|
||||
"payloadhash": "499ae3c5ca57ef45d14643850da39e52",
|
||||
"size": 141850
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-client",
|
||||
"extra": null,
|
||||
"arch": "x86_64",
|
||||
"buildtime": 1492700424,
|
||||
"id": 9519574,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319953,
|
||||
"payloadhash": "b40b18aced3a78a7c670135cb97bed2d",
|
||||
"size": 314414
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "x86_64",
|
||||
"buildtime": 1492700424,
|
||||
"id": 9519573,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319953,
|
||||
"payloadhash": "68e7c7ac713ba5cd6b49e3912fc74f56",
|
||||
"size": 1762038
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-devel",
|
||||
"extra": null,
|
||||
"arch": "x86_64",
|
||||
"buildtime": 1492700424,
|
||||
"id": 9519572,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319953,
|
||||
"payloadhash": "96c6c1b0a8bfc782f6dc4451f033cc3f",
|
||||
"size": 116850
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-compat",
|
||||
"extra": null,
|
||||
"arch": "x86_64",
|
||||
"buildtime": 1492700424,
|
||||
"id": 9519571,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319953,
|
||||
"payloadhash": "03aaa447e471575b0ff6ba8dbd656ed6",
|
||||
"size": 87682
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-server",
|
||||
"extra": null,
|
||||
"arch": "x86_64",
|
||||
"buildtime": 1492700424,
|
||||
"id": 9519570,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319953,
|
||||
"payloadhash": "12fb5fb1c246b3d357239b51034f66f5",
|
||||
"size": 529398
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-common",
|
||||
"extra": null,
|
||||
"arch": "noarch",
|
||||
"buildtime": 1492700424,
|
||||
"id": 9519569,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319953,
|
||||
"payloadhash": "d59b5a08ff2ab593978614ecf7f7f0c7",
|
||||
"size": 203034
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp-relay",
|
||||
"extra": null,
|
||||
"arch": "x86_64",
|
||||
"buildtime": 1492700424,
|
||||
"id": 9519568,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319953,
|
||||
"payloadhash": "846faaa11674763b163c606d0f87a635",
|
||||
"size": 231778
|
||||
},
|
||||
{
|
||||
"build_id": 881907,
|
||||
"name": "dhcp",
|
||||
"extra": null,
|
||||
"arch": "src",
|
||||
"buildtime": 1492700381,
|
||||
"id": 9519567,
|
||||
"epoch": 12,
|
||||
"version": "4.3.5",
|
||||
"metadata_only": false,
|
||||
"release": "5.module_2118aef6",
|
||||
"buildroot_id": 8319953,
|
||||
"payloadhash": "45c2f6b6131c68dc4da0833caeefa5d3",
|
||||
"size": 10261804
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-devel",
|
||||
"extra": null,
|
||||
"arch": "armv7hl",
|
||||
"buildtime": 1492700171,
|
||||
"id": 9519545,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319861,
|
||||
"payloadhash": "891e4729ae04ef7d04ead60a884c1c3c",
|
||||
"size": 244318
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "armv7hl",
|
||||
"buildtime": 1492700171,
|
||||
"id": 9519544,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319861,
|
||||
"payloadhash": "1c21d138cf080c00ce2cc5837e7b2b63",
|
||||
"size": 2207398
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-libs",
|
||||
"extra": null,
|
||||
"arch": "armv7hl",
|
||||
"buildtime": 1492700171,
|
||||
"id": 9519543,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319861,
|
||||
"payloadhash": "45f88db7672bd209a9999b1e7a3d6410",
|
||||
"size": 612470
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-libs",
|
||||
"extra": null,
|
||||
"arch": "i686",
|
||||
"buildtime": 1492699799,
|
||||
"id": 9519542,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319866,
|
||||
"payloadhash": "e2d4a9a7ee3389e0cb354ac9590c573e",
|
||||
"size": 718606
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "i686",
|
||||
"buildtime": 1492699799,
|
||||
"id": 9519541,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319866,
|
||||
"payloadhash": "b2c00bf25e3b943e2f8ff36a904cb6bd",
|
||||
"size": 2197774
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-devel",
|
||||
"extra": null,
|
||||
"arch": "i686",
|
||||
"buildtime": 1492699799,
|
||||
"id": 9519540,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319866,
|
||||
"payloadhash": "d012ca49b66e81ee6d4350b7b27eadf0",
|
||||
"size": 245178
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-libs",
|
||||
"extra": null,
|
||||
"arch": "ppc64",
|
||||
"buildtime": 1492699851,
|
||||
"id": 9519539,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319864,
|
||||
"payloadhash": "6889d9619b2509d1d6019d4d585e1ace",
|
||||
"size": 741574
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-devel",
|
||||
"extra": null,
|
||||
"arch": "ppc64",
|
||||
"buildtime": 1492699851,
|
||||
"id": 9519538,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319864,
|
||||
"payloadhash": "758f99d5a885259c05b12422188c3367",
|
||||
"size": 244958
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "ppc64",
|
||||
"buildtime": 1492699851,
|
||||
"id": 9519537,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319864,
|
||||
"payloadhash": "67fb6720b1fdc6a764fc64dc73362e19",
|
||||
"size": 2311186
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-devel",
|
||||
"extra": null,
|
||||
"arch": "aarch64",
|
||||
"buildtime": 1492700021,
|
||||
"id": 9519536,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319863,
|
||||
"payloadhash": "055d1311d31db0279f554630f9c87bc4",
|
||||
"size": 244306
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-libs",
|
||||
"extra": null,
|
||||
"arch": "aarch64",
|
||||
"buildtime": 1492700021,
|
||||
"id": 9519535,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319863,
|
||||
"payloadhash": "c96f841ab07863b0e5dc40668328515d",
|
||||
"size": 677390
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "aarch64",
|
||||
"buildtime": 1492700021,
|
||||
"id": 9519534,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319863,
|
||||
"payloadhash": "c04123eff71cae1b3ea6b76a44c83d66",
|
||||
"size": 2278098
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-devel",
|
||||
"extra": null,
|
||||
"arch": "ppc64le",
|
||||
"buildtime": 1492699845,
|
||||
"id": 9519533,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319870,
|
||||
"payloadhash": "8db3604b46f68683dd7207e155fe6464",
|
||||
"size": 244342
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-libs",
|
||||
"extra": null,
|
||||
"arch": "ppc64le",
|
||||
"buildtime": 1492699845,
|
||||
"id": 9519532,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319870,
|
||||
"payloadhash": "629008b3edd9e5ef9a8eedf166351e62",
|
||||
"size": 741266
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "ppc64le",
|
||||
"buildtime": 1492699845,
|
||||
"id": 9519531,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319870,
|
||||
"payloadhash": "b06998cfaf8f9f2b88d3d362472d7c55",
|
||||
"size": 2299454
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-libs",
|
||||
"extra": null,
|
||||
"arch": "x86_64",
|
||||
"buildtime": 1492699742,
|
||||
"id": 9519530,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319862,
|
||||
"payloadhash": "6c9f40725a31320e698267110de19ca9",
|
||||
"size": 684922
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-debuginfo",
|
||||
"extra": null,
|
||||
"arch": "x86_64",
|
||||
"buildtime": 1492699742,
|
||||
"id": 9519529,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319862,
|
||||
"payloadhash": "ae381be6cccbdad9c15f370550c3e66a",
|
||||
"size": 2323886
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-devel",
|
||||
"extra": null,
|
||||
"arch": "x86_64",
|
||||
"buildtime": 1492699742,
|
||||
"id": 9519528,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319862,
|
||||
"payloadhash": "9845ee96c4a4bfc84eaea2ba46104f5a",
|
||||
"size": 245178
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99-license",
|
||||
"extra": null,
|
||||
"arch": "noarch",
|
||||
"buildtime": 1492699742,
|
||||
"id": 9519527,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319862,
|
||||
"payloadhash": "b60b539e075d68992bfd40346f9f7bd8",
|
||||
"size": 12726
|
||||
},
|
||||
{
|
||||
"build_id": 881899,
|
||||
"name": "bind99",
|
||||
"extra": null,
|
||||
"arch": "src",
|
||||
"buildtime": 1492699590,
|
||||
"id": 9519526,
|
||||
"epoch": null,
|
||||
"version": "9.9.9",
|
||||
"metadata_only": false,
|
||||
"release": "5.P8.module_2118aef6",
|
||||
"buildroot_id": 8319862,
|
||||
"payloadhash": "38758ae862424b354b20d9d4d38be97e",
|
||||
"size": 8773419
|
||||
}
|
||||
]
|
||||
Reference in New Issue
Block a user