From 986283674d656092f5d020bc86750a3889793a59 Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Tue, 24 Jan 2023 01:15:54 +0100 Subject: [PATCH 01/16] distro/rhel7: add packageset chains to qcow2 The qcow2 image type for RHEL 7 doesn't have packageset chains defined. This means that the blueprint packages are never merged into the os pipeline. This is unnecessary right now because of the upcoming rewrite, but it will minimise the differences that will show up in the manifest. The qcow2-customize manifest has an added block of options for the grub2.legacy stage because now the dracut-config-rescue package is being installed in the image. --- internal/distro/rhel7/qcow2.go | 3 + .../manifests/rhel_7-x86_64-qcow2-boot.json | 1127 ----- .../rhel_7-x86_64-qcow2_customize-boot.json | 3696 ++++------------- 3 files changed, 722 insertions(+), 4104 deletions(-) diff --git a/internal/distro/rhel7/qcow2.go b/internal/distro/rhel7/qcow2.go index f78f7c8ed7..37a6fb3887 100644 --- a/internal/distro/rhel7/qcow2.go +++ b/internal/distro/rhel7/qcow2.go @@ -102,6 +102,9 @@ var qcow2ImgType = imageType{ buildPkgsKey: distroBuildPackageSet, osPkgsKey: qcow2CommonPackageSet, }, + packageSetChains: map[string][]string{ + osPkgsKey: {osPkgsKey, blueprintPkgsKey}, + }, defaultImageConfig: &distro.ImageConfig{ DefaultTarget: common.ToPtr("multi-user.target"), Sysconfig: []*osbuild.SysconfigStageOptions{ diff --git a/test/data/manifests/rhel_7-x86_64-qcow2-boot.json b/test/data/manifests/rhel_7-x86_64-qcow2-boot.json index d516f8d7f0..14a9cd3004 100644 --- a/test/data/manifests/rhel_7-x86_64-qcow2-boot.json +++ b/test/data/manifests/rhel_7-x86_64-qcow2-boot.json @@ -3086,1133 +3086,6 @@ } }, "rpmmd": { - "blueprint": [ - { - "name": "acl", - "epoch": 0, - "version": "2.2.51", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/acl-2.2.51-15.el7.x86_64.rpm", - "checksum": "sha256:1370de73e8c66a91af841521ca143c72a704df1c54ee9b452b2354a54de7b9b4" - }, - { - "name": "audit-libs", - "epoch": 0, - "version": "2.8.5", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/audit-libs-2.8.5-4.el7.x86_64.rpm", - "checksum": "sha256:2f8d6d29f7f4b3e655bf00ffb0cb4be1ca46c042977e60dbc435ef999f76d323" - }, - { - "name": "basesystem", - "epoch": 0, - "version": "10.0", - "release": "7.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/basesystem-10.0-7.el7.noarch.rpm", - "checksum": "sha256:133df1ee1de627d3e07fcf15fe903696f94b051cf28dc0090178f5d1ec956057" - }, - { - "name": "bash", - "epoch": 0, - "version": "4.2.46", - "release": "34.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/bash-4.2.46-34.el7.x86_64.rpm", - "checksum": "sha256:164930af843a056c1ad18627fc4364d1f931d79145060aa47165d4e1edc6f2a4" - }, - { - "name": "bc", - "epoch": 0, - "version": "1.06.95", - "release": "13.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/bc-1.06.95-13.el7.x86_64.rpm", - "checksum": "sha256:78f77d63649812e9bcc0cd27f303692e7414a13326265e10d1bbaab6036d3fec" - }, - { - "name": "binutils", - "epoch": 0, - "version": "2.27", - "release": "44.base.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/binutils-2.27-44.base.el7.x86_64.rpm", - "checksum": "sha256:09823f3edb9eb138b587366dcc29b54445bafeb5221664e4119254bd0cd0440a" - }, - { - "name": "bzip2-libs", - "epoch": 0, - "version": "1.0.6", - "release": "13.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/bzip2-libs-1.0.6-13.el7.x86_64.rpm", - "checksum": "sha256:7df3437c7bea53f7ed6db4f27165e8bcd88d33cc7bc965f49e80b2e4fb6f78c9" - }, - { - "name": "ca-certificates", - "epoch": 0, - "version": "2020.2.41", - "release": "70.0.el7_8", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ca-certificates-2020.2.41-70.0.el7_8.noarch.rpm", - "checksum": "sha256:4d4a191087d74621903e3d7a00297da398737c7b66735ef24d45facad0a7dd11" - }, - { - "name": "chkconfig", - "epoch": 0, - "version": "1.7.6", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/chkconfig-1.7.6-1.el7.x86_64.rpm", - "checksum": "sha256:8517730ba35d7d4f47df5adc20d9c317ce16055da214576b60ceed86dcaadedc" - }, - { - "name": "coreutils", - "epoch": 0, - "version": "8.22", - "release": "24.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/coreutils-8.22-24.el7.x86_64.rpm", - "checksum": "sha256:d273b6dc11f28ced6db4c6545e245b1824deedddf3e386c935d8fb9f61836872" - }, - { - "name": "cpio", - "epoch": 0, - "version": "2.11", - "release": "28.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cpio-2.11-28.el7.x86_64.rpm", - "checksum": "sha256:ee9f7e005742702d8e10aa62f1c11683bde53e26adc170d038a7a2014119b72b" - }, - { - "name": "cracklib", - "epoch": 0, - "version": "2.9.0", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cracklib-2.9.0-11.el7.x86_64.rpm", - "checksum": "sha256:57e86792013b2c3506383659876605cc016d3a6795487ae1c22eb8fb319a3527" - }, - { - "name": "cracklib-dicts", - "epoch": 0, - "version": "2.9.0", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cracklib-dicts-2.9.0-11.el7.x86_64.rpm", - "checksum": "sha256:0e480a04ed607a99b85041a20b14314f1a681bc95a518d34543dd10531bbbe72" - }, - { - "name": "cryptsetup-libs", - "epoch": 0, - "version": "2.0.3", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cryptsetup-libs-2.0.3-6.el7.x86_64.rpm", - "checksum": "sha256:57738063a487cfdc9da6f50c9ff467ef6b24c244f666ddca76d84df11206b6f3" - }, - { - "name": "curl", - "epoch": 0, - "version": "7.29.0", - "release": "59.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/curl-7.29.0-59.el7.x86_64.rpm", - "checksum": "sha256:d71df169d5e155914ece85b1b4506c61238812a2ad331371e07950c09575093e" - }, - { - "name": "cyrus-sasl-lib", - "epoch": 0, - "version": "2.1.26", - "release": "23.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cyrus-sasl-lib-2.1.26-23.el7.x86_64.rpm", - "checksum": "sha256:52c58f3b6eeb69a9b77dda87eadb64b0c5f872c83bcb83fdca7a0e36f1d5d2db" - }, - { - "name": "dbus", - "epoch": 1, - "version": "1.10.24", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dbus-1.10.24-15.el7.x86_64.rpm", - "checksum": "sha256:261ddb84d4530e0ed4a0f66b18622629091f674f69133909638aaa68eebd3c49" - }, - { - "name": "dbus-libs", - "epoch": 1, - "version": "1.10.24", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dbus-libs-1.10.24-15.el7.x86_64.rpm", - "checksum": "sha256:ebf07223ff459f5441bec4857363ff4c623e34d333d9fd26eb794aa23db37da6" - }, - { - "name": "device-mapper", - "epoch": 7, - "version": "1.02.170", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-1.02.170-6.el7.x86_64.rpm", - "checksum": "sha256:f5edbf09fbd69fd4985682a6bb2fdb8732d11c90f6f75977e77c225f846f6bc5" - }, - { - "name": "device-mapper-libs", - "epoch": 7, - "version": "1.02.170", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-libs-1.02.170-6.el7.x86_64.rpm", - "checksum": "sha256:ceda9d24ef213658d34af8c53f891be32959398f7aa85b9bd4557a9ae9f797b9" - }, - { - "name": "diffutils", - "epoch": 0, - "version": "3.3", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/diffutils-3.3-5.el7.x86_64.rpm", - "checksum": "sha256:644bb4bb0d549837d1a5f9d65e02835290b538f123605070cbf93291b11d2812" - }, - { - "name": "dracut", - "epoch": 0, - "version": "033", - "release": "572.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dracut-033-572.el7.x86_64.rpm", - "checksum": "sha256:23e53944df86ed0b04fd39c8b0dd754e251c68179e44e2aa91b9e440b168df89" - }, - { - "name": "elfutils-default-yama-scope", - "epoch": 0, - "version": "0.176", - "release": "5.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/elfutils-default-yama-scope-0.176-5.el7.noarch.rpm", - "checksum": "sha256:e8828c8e13cb65e1ee5e302411a8abd0c476517e87d102398a9b9b112d993edf" - }, - { - "name": "elfutils-libelf", - "epoch": 0, - "version": "0.176", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/elfutils-libelf-0.176-5.el7.x86_64.rpm", - "checksum": "sha256:e432eb142cf558d61863f88e015fd99d222b606433f43f3850372de5188236cf" - }, - { - "name": "elfutils-libs", - "epoch": 0, - "version": "0.176", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/elfutils-libs-0.176-5.el7.x86_64.rpm", - "checksum": "sha256:22bfc046fe32e83a85265743b28c774e31fbacf8cd454b34ce2ff4fdf9f26725" - }, - { - "name": "expat", - "epoch": 0, - "version": "2.1.0", - "release": "12.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/expat-2.1.0-12.el7.x86_64.rpm", - "checksum": "sha256:fb9878feb857be5b29d802cab4982689c32df47f63a9a3b7f2fc33e2886ad323" - }, - { - "name": "filesystem", - "epoch": 0, - "version": "3.2", - "release": "25.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/filesystem-3.2-25.el7.x86_64.rpm", - "checksum": "sha256:10a19a46b46f111536f4db43fe6a1adbf8f8ac24b316297b64db2aee892ae137" - }, - { - "name": "findutils", - "epoch": 1, - "version": "4.5.11", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/findutils-4.5.11-6.el7.x86_64.rpm", - "checksum": "sha256:c4d66f83ac64a86c8b1d471bb85f7f3ddb126c6bd2d5f4a12c84da7c8ed178ad" - }, - { - "name": "gawk", - "epoch": 0, - "version": "4.0.2", - "release": "4.el7_3.1", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/gawk-4.0.2-4.el7_3.1.x86_64.rpm", - "checksum": "sha256:3db7deaf1a9a7a62ed322449230209d44167bdeb6529c8064421ab5ce26fe274" - }, - { - "name": "glib2", - "epoch": 0, - "version": "2.56.1", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/glib2-2.56.1-7.el7.x86_64.rpm", - "checksum": "sha256:3ce341bb037d0ca1189bcc51bb3f9bbb939bf47f799f1d834c1d9d907cb6f66d" - }, - { - "name": "glibc", - "epoch": 0, - "version": "2.17", - "release": "317.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/glibc-2.17-317.el7.x86_64.rpm", - "checksum": "sha256:ec6571bb9ac645f3430a24f9826da46823761529feb7decc7a1668829987a7cd" - }, - { - "name": "glibc-common", - "epoch": 0, - "version": "2.17", - "release": "317.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/glibc-common-2.17-317.el7.x86_64.rpm", - "checksum": "sha256:22afb742000128beaa4a42919531ec94eda22e8ceed7b5a5948584b90c106fc1" - }, - { - "name": "gmp", - "epoch": 1, - "version": "6.0.0", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/gmp-6.0.0-15.el7.x86_64.rpm", - "checksum": "sha256:ae220fa29366941ae2acab3006067bad40860a156bf67847a88935c8a354e926" - }, - { - "name": "grep", - "epoch": 0, - "version": "2.20", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/grep-2.20-3.el7.x86_64.rpm", - "checksum": "sha256:005f4e86184775de9904a454e0cd70b524952810e5d9916e4721f089986d5cc8" - }, - { - "name": "grubby", - "epoch": 0, - "version": "8.28", - "release": "26.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/grubby-8.28-26.el7.x86_64.rpm", - "checksum": "sha256:6ee12aa6e7b041aad0ac3d968b1ab18dacded8a489ad27b653242929af978e12" - }, - { - "name": "gzip", - "epoch": 0, - "version": "1.5", - "release": "10.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/gzip-1.5-10.el7.x86_64.rpm", - "checksum": "sha256:de398e6ad81cd87675053549c777bab89cd38729f1803087850a6b2afce213b7" - }, - { - "name": "hostname", - "epoch": 0, - "version": "3.13", - "release": "3.el7_7.1", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/hostname-3.13-3.el7_7.1.x86_64.rpm", - "checksum": "sha256:df090ffbfb86d2d5bc3ed70e61876e8ba1ebc4d273773c657a16f514b1d83b66" - }, - { - "name": "info", - "epoch": 0, - "version": "5.1", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/info-5.1-5.el7.x86_64.rpm", - "checksum": "sha256:6f3de3629f79a6728b6fe9e9c5840170a7d4436d1a1150e4e2b39a2a9f923a64" - }, - { - "name": "initscripts", - "epoch": 0, - "version": "9.49.53", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/initscripts-9.49.53-1.el7.x86_64.rpm", - "checksum": "sha256:74f3d93caa5b80e431181ee02b0727db0240b35032b5cbadec3d3b01551f7c21" - }, - { - "name": "iproute", - "epoch": 0, - "version": "4.11.0", - "release": "30.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iproute-4.11.0-30.el7.x86_64.rpm", - "checksum": "sha256:a9a0f1078682a2e7b85967c4402672648e05802d2eccdae48dab33b47521adbc" - }, - { - "name": "iptables", - "epoch": 0, - "version": "1.4.21", - "release": "35.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iptables-1.4.21-35.el7.x86_64.rpm", - "checksum": "sha256:ee91f2840155b3fbafe9059d4e3465ed12bee73cac15667f2dee4c5f9a52cf87" - }, - { - "name": "iputils", - "epoch": 0, - "version": "20160308", - "release": "10.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iputils-20160308-10.el7.x86_64.rpm", - "checksum": "sha256:92f5006e55ebf5dc518ad9e7498506063f0b6c889a925565117aa3fb550cd89c" - }, - { - "name": "json-c", - "epoch": 0, - "version": "0.11", - "release": "4.el7_0", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/json-c-0.11-4.el7_0.x86_64.rpm", - "checksum": "sha256:12d0d9348fb55a9e518a45b63db83b95b1e6c9d54551aa0ec288199f03cce5cd" - }, - { - "name": "kernel", - "epoch": 0, - "version": "3.10.0", - "release": "1160.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kernel-3.10.0-1160.el7.x86_64.rpm", - "checksum": "sha256:ca7bbd8e05c26a6152e8da8b176b92ea63fd1410967ea4643e4e271c084e1324" - }, - { - "name": "keyutils-libs", - "epoch": 0, - "version": "1.5.8", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/keyutils-libs-1.5.8-3.el7.x86_64.rpm", - "checksum": "sha256:68d0b20162b3e1e250d83e3d7a147ee6ad5c1ae282cce15421e734b5abd41add" - }, - { - "name": "kmod", - "epoch": 0, - "version": "20", - "release": "28.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kmod-20-28.el7.x86_64.rpm", - "checksum": "sha256:c86cc42ecd0a14b233fe81252c0c8abcba2b67e981a36179a711c9bb241479e4" - }, - { - "name": "kmod-libs", - "epoch": 0, - "version": "20", - "release": "28.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kmod-libs-20-28.el7.x86_64.rpm", - "checksum": "sha256:5016360d55f12a5548c1b504d8fdee0efb35eaf2b0815a3dc62afbba044cabc0" - }, - { - "name": "kpartx", - "epoch": 0, - "version": "0.4.9", - "release": "133.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kpartx-0.4.9-133.el7.x86_64.rpm", - "checksum": "sha256:233f1262f771eac659f5e76524a701ff8993e738c462dd823f984d2b703ddfcb" - }, - { - "name": "krb5-libs", - "epoch": 0, - "version": "1.15.1", - "release": "50.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/krb5-libs-1.15.1-50.el7.x86_64.rpm", - "checksum": "sha256:0c75f4193a32541ca250fc4dc41754350bbea7ac64e3cb50bfde9aa2bc0d9473" - }, - { - "name": "libacl", - "epoch": 0, - "version": "2.2.51", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libacl-2.2.51-15.el7.x86_64.rpm", - "checksum": "sha256:2a9bc37a1274ef0fd28a594bc83334b868bee0c87f19f5b413c8c81e2a43dddd" - }, - { - "name": "libattr", - "epoch": 0, - "version": "2.4.46", - "release": "13.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libattr-2.4.46-13.el7.x86_64.rpm", - "checksum": "sha256:17a04e5cd7d2514904b203126a4273d63fe87a2871efa75ace5be72b992bd1e8" - }, - { - "name": "libblkid", - "epoch": 0, - "version": "2.23.2", - "release": "65.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libblkid-2.23.2-65.el7.x86_64.rpm", - "checksum": "sha256:54d8d52e4ec61256417b3dd708ff88dea8c2c43db0dc588528e2f78ba55ca043" - }, - { - "name": "libcap", - "epoch": 0, - "version": "2.22", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libcap-2.22-11.el7.x86_64.rpm", - "checksum": "sha256:899714773ed68807327e4f73f5d8ee6088b5e1f35f5fb2cea737e54b90c2a461" - }, - { - "name": "libcap-ng", - "epoch": 0, - "version": "0.7.5", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libcap-ng-0.7.5-4.el7.x86_64.rpm", - "checksum": "sha256:37f2b2b3ed3c45ac0caa7c5410a357dbcaef6bdb671cb511a15c9c46523e82f1" - }, - { - "name": "libcom_err", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libcom_err-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:2e89845aa49ddf70e2cec55f857bb9229164a7a17fc83343f6a9786e4e037477" - }, - { - "name": "libcurl", - "epoch": 0, - "version": "7.29.0", - "release": "59.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libcurl-7.29.0-59.el7.x86_64.rpm", - "checksum": "sha256:a5ca0ac5ee32aa9c2ba4a02e37fb6cdb7d65df0a7df1a6b795c294b3ed6e242d" - }, - { - "name": "libdb", - "epoch": 0, - "version": "5.3.21", - "release": "25.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libdb-5.3.21-25.el7.x86_64.rpm", - "checksum": "sha256:6a778b6a2091b427b4196d704d00a92e47e8269d32eaa222c2c0e359e8394e8f" - }, - { - "name": "libdb-utils", - "epoch": 0, - "version": "5.3.21", - "release": "25.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libdb-utils-5.3.21-25.el7.x86_64.rpm", - "checksum": "sha256:a6bd2f5457433ca2c45146aa547eec6642870bebb3e96ef75bed4d73fb246f32" - }, - { - "name": "libffi", - "epoch": 0, - "version": "3.0.13", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libffi-3.0.13-19.el7.x86_64.rpm", - "checksum": "sha256:04d6ccafb0a07e09cef1312a6a892e4d3365b9a71b265f7afa5fc96303067af3" - }, - { - "name": "libgcc", - "epoch": 0, - "version": "4.8.5", - "release": "44.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libgcc-4.8.5-44.el7.x86_64.rpm", - "checksum": "sha256:23682b13bb03b7441413d2ba85bc26046fe836162049a92e6389ca57d729e020" - }, - { - "name": "libgcrypt", - "epoch": 0, - "version": "1.5.3", - "release": "14.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libgcrypt-1.5.3-14.el7.x86_64.rpm", - "checksum": "sha256:4905d8ba3634b4fe5ece50dfa31afb52cb1815a7ffdc4ea7d8bddfb8189aa299" - }, - { - "name": "libgpg-error", - "epoch": 0, - "version": "1.12", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libgpg-error-1.12-3.el7.x86_64.rpm", - "checksum": "sha256:85b53f4c3206f7f7f171a85444c835fea90f4b09ab17734bc08bb20feac305f4" - }, - { - "name": "libidn", - "epoch": 0, - "version": "1.28", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libidn-1.28-4.el7.x86_64.rpm", - "checksum": "sha256:cff44fe84d096c0e6f082cb622f17149c3edde1421b32192307ef713d1f64790" - }, - { - "name": "libmnl", - "epoch": 0, - "version": "1.0.3", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libmnl-1.0.3-7.el7.x86_64.rpm", - "checksum": "sha256:28b57683dc8c1843ce1d28b92ddf3f68e997717e3184e2ae629ceb3a81acf05d" - }, - { - "name": "libmount", - "epoch": 0, - "version": "2.23.2", - "release": "65.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libmount-2.23.2-65.el7.x86_64.rpm", - "checksum": "sha256:9908abc99788aa3e371c54a89d7236e9edd66ff7e8bc9b9f2cf4732ca86b4785" - }, - { - "name": "libnetfilter_conntrack", - "epoch": 0, - "version": "1.0.6", - "release": "1.el7_3", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libnetfilter_conntrack-1.0.6-1.el7_3.x86_64.rpm", - "checksum": "sha256:eb71af5a9b4665611dbd3cd17ecaa3437c2ad0961f40ff743fcf2fa7292cff05" - }, - { - "name": "libnfnetlink", - "epoch": 0, - "version": "1.0.1", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libnfnetlink-1.0.1-4.el7.x86_64.rpm", - "checksum": "sha256:cfe92193511248e70f151a48715424f45dee559b3420d2930c266bd93d58fd06" - }, - { - "name": "libpwquality", - "epoch": 0, - "version": "1.2.3", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libpwquality-1.2.3-5.el7.x86_64.rpm", - "checksum": "sha256:399631dd617fa4bc2ace90712b2e688fbbeea766286650bbbc019174c402475c" - }, - { - "name": "libselinux", - "epoch": 0, - "version": "2.5", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libselinux-2.5-15.el7.x86_64.rpm", - "checksum": "sha256:207150c3207f1d5af39c66faf06b6578d80c880917525a0917111a0087fdeeee" - }, - { - "name": "libsemanage", - "epoch": 0, - "version": "2.5", - "release": "14.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libsemanage-2.5-14.el7.x86_64.rpm", - "checksum": "sha256:863368533ab642f516054ac4f6a5368f8995229d1ad808478b5bf03d0c69472b" - }, - { - "name": "libsepol", - "epoch": 0, - "version": "2.5", - "release": "10.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libsepol-2.5-10.el7.x86_64.rpm", - "checksum": "sha256:37942df220318ac6c91049adabaefe854ad9f83845907352aad7d66045f64b02" - }, - { - "name": "libsmartcols", - "epoch": 0, - "version": "2.23.2", - "release": "65.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libsmartcols-2.23.2-65.el7.x86_64.rpm", - "checksum": "sha256:a0047e1ed0eb51fc41a74096559cfe67f1c01fa01cf668709ae54524db7cf414" - }, - { - "name": "libssh2", - "epoch": 0, - "version": "1.8.0", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libssh2-1.8.0-4.el7.x86_64.rpm", - "checksum": "sha256:4a9ac18573b971d88bd2acefbcc6cfad01c986d04b4b88ed705ae019b6a653a3" - }, - { - "name": "libstdc++", - "epoch": 0, - "version": "4.8.5", - "release": "44.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libstdc++-4.8.5-44.el7.x86_64.rpm", - "checksum": "sha256:9048a971753ff997aeebc363a7d07e4c4d9dfbf32bfc7698bc9ea0aacfc7bfae" - }, - { - "name": "libtasn1", - "epoch": 0, - "version": "4.10", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libtasn1-4.10-1.el7.x86_64.rpm", - "checksum": "sha256:0522ab1034c4202c3ad9ff36807e55814ac366a4aac27a034b30b522cd4aeca9" - }, - { - "name": "libuser", - "epoch": 0, - "version": "0.60", - "release": "9.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libuser-0.60-9.el7.x86_64.rpm", - "checksum": "sha256:70244d0073f3e4a4fed3a0f64b1db29c3adc15e69ba953ed253e2719ffa6770d" - }, - { - "name": "libutempter", - "epoch": 0, - "version": "1.1.6", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libutempter-1.1.6-4.el7.x86_64.rpm", - "checksum": "sha256:921caeefffe3e048ad3adf874e60da4126487c16c1278997ffbc169c3fb47b14" - }, - { - "name": "libuuid", - "epoch": 0, - "version": "2.23.2", - "release": "65.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libuuid-2.23.2-65.el7.x86_64.rpm", - "checksum": "sha256:d36f82cb917ef79e1461704027a1fa97deeaf97fdeaacdb8882a1b6bebeba4fe" - }, - { - "name": "libverto", - "epoch": 0, - "version": "0.2.5", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libverto-0.2.5-4.el7.x86_64.rpm", - "checksum": "sha256:ce2064e2a37929695ef045837bb7ea158ac6c33230874c956305d71da6ef3660" - }, - { - "name": "libxml2", - "epoch": 0, - "version": "2.9.1", - "release": "6.el7.5", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libxml2-2.9.1-6.el7.5.x86_64.rpm", - "checksum": "sha256:dac2ae10dbb0a09a7e6bd341044dfab1e63d8773c9b7582cbf2d40937180f7b0" - }, - { - "name": "linux-firmware", - "epoch": 0, - "version": "20200421", - "release": "79.git78c0348.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/linux-firmware-20200421-79.git78c0348.el7.noarch.rpm", - "checksum": "sha256:9385bd952947ac44a78ed8652ac72eda744ff4fd16643f572deb099cba5ce91b" - }, - { - "name": "lua", - "epoch": 0, - "version": "5.1.4", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lua-5.1.4-15.el7.x86_64.rpm", - "checksum": "sha256:f2ee3238762ee4b1917cb7ed5d5e064dbae4d1804bdb65bd4bf6c56b785f8836" - }, - { - "name": "lz4", - "epoch": 0, - "version": "1.8.3", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lz4-1.8.3-1.el7.x86_64.rpm", - "checksum": "sha256:547b7bb1b7791f9972f82f88c9931b9c754ad64a8113b733d6515b6edd1b970c" - }, - { - "name": "ncurses", - "epoch": 0, - "version": "5.9", - "release": "14.20130511.el7_4", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ncurses-5.9-14.20130511.el7_4.x86_64.rpm", - "checksum": "sha256:936a7e2f7995baf47cbc485d4112e790d81e9fa28f0393551e52d12746842a31" - }, - { - "name": "ncurses-base", - "epoch": 0, - "version": "5.9", - "release": "14.20130511.el7_4", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ncurses-base-5.9-14.20130511.el7_4.noarch.rpm", - "checksum": "sha256:0e1e6a4125d13f1ddaa5a84df882c0bc4c3f5376dd854300589254c4a4e86ae1" - }, - { - "name": "ncurses-libs", - "epoch": 0, - "version": "5.9", - "release": "14.20130511.el7_4", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ncurses-libs-5.9-14.20130511.el7_4.x86_64.rpm", - "checksum": "sha256:236e8b3ac8d8adfa9879c6a8dbdc161e7249dc82359ba778c9044c4d15b35d70" - }, - { - "name": "nspr", - "epoch": 0, - "version": "4.21.0", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nspr-4.21.0-1.el7.x86_64.rpm", - "checksum": "sha256:d6a1658cd8506c820334d9ff9b37515153fd3f0921710c6b0ba232d994cf0928" - }, - { - "name": "nss", - "epoch": 0, - "version": "3.44.0", - "release": "7.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-3.44.0-7.el7_7.x86_64.rpm", - "checksum": "sha256:494d4861f429cb413db6fefda7ba0d86d54db5684bba34dfd0e111732ef2d6ef" - }, - { - "name": "nss-pem", - "epoch": 0, - "version": "1.0.3", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-pem-1.0.3-7.el7.x86_64.rpm", - "checksum": "sha256:728834a32b4fe0645fc53f094d243d26aa98baa514fb704bda0760204779638b" - }, - { - "name": "nss-softokn", - "epoch": 0, - "version": "3.44.0", - "release": "8.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-softokn-3.44.0-8.el7_7.x86_64.rpm", - "checksum": "sha256:a4c288bf1d3475008236df696953dab9ca6bbfcebe8ff2e052024ae57fdc0096" - }, - { - "name": "nss-softokn-freebl", - "epoch": 0, - "version": "3.44.0", - "release": "8.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-softokn-freebl-3.44.0-8.el7_7.x86_64.rpm", - "checksum": "sha256:4cc68a15a41483e29fbfe85829f26fedaddf9e19fe7c8673c499596f9b06103b" - }, - { - "name": "nss-sysinit", - "epoch": 0, - "version": "3.44.0", - "release": "7.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-sysinit-3.44.0-7.el7_7.x86_64.rpm", - "checksum": "sha256:4a56cbf131d5416e594f70b158fc21540bd98e3a50b74cd714f66ab2fda85db8" - }, - { - "name": "nss-tools", - "epoch": 0, - "version": "3.44.0", - "release": "7.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-tools-3.44.0-7.el7_7.x86_64.rpm", - "checksum": "sha256:09f84377bb5398797c3b4d0a05b42aea85fa00892128e150ed54c0b2ccc3d78b" - }, - { - "name": "nss-util", - "epoch": 0, - "version": "3.44.0", - "release": "4.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-util-3.44.0-4.el7_7.x86_64.rpm", - "checksum": "sha256:596d946cd8d35332795898be6ce8b4e4b0dc2f65c151f673e1ca51b8489a7d43" - }, - { - "name": "openldap", - "epoch": 0, - "version": "2.4.44", - "release": "22.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/openldap-2.4.44-22.el7.x86_64.rpm", - "checksum": "sha256:1301457e09b0dbcd96d150d374829cad731faa3f9f9f6dbfa2cbff53740096a8" - }, - { - "name": "openssl-libs", - "epoch": 1, - "version": "1.0.2k", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/openssl-libs-1.0.2k-19.el7.x86_64.rpm", - "checksum": "sha256:33b01edf15778994adee406ccb92221bb93c9076322443dde2922b758deebaac" - }, - { - "name": "p11-kit", - "epoch": 0, - "version": "0.23.5", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/p11-kit-0.23.5-3.el7.x86_64.rpm", - "checksum": "sha256:532c25b0c5b732c51ebf3fc0f363e9d72955a6c10b98752bbb321f914c87cb28" - }, - { - "name": "p11-kit-trust", - "epoch": 0, - "version": "0.23.5", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/p11-kit-trust-0.23.5-3.el7.x86_64.rpm", - "checksum": "sha256:26f1c092476e34c290350487f2229305a97aebdc0b096d6ca12ecae645c6416f" - }, - { - "name": "pam", - "epoch": 0, - "version": "1.1.8", - "release": "23.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pam-1.1.8-23.el7.x86_64.rpm", - "checksum": "sha256:b0039bb73308f9af0562d7bfeb17d72d1e07a21f786eeed31e6470fb27476630" - }, - { - "name": "pcre", - "epoch": 0, - "version": "8.32", - "release": "17.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pcre-8.32-17.el7.x86_64.rpm", - "checksum": "sha256:61d51059a91e227d71ce1ed0a787797b740dbb80cc5d4aab9812cd3248178713" - }, - { - "name": "pcre2", - "epoch": 0, - "version": "10.23", - "release": "2.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pcre2-10.23-2.el7.x86_64.rpm", - "checksum": "sha256:ede1b4844bd8038e385b9fcf59e7b8ef7063a52600ab2e79cb56a1094ba4d19d" - }, - { - "name": "pkgconfig", - "epoch": 1, - "version": "0.27.1", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pkgconfig-0.27.1-4.el7.x86_64.rpm", - "checksum": "sha256:b043d16e3d62f62e7589e93dfc0cebee5753d8f8ea225c0682e1fbeea5f1985a" - }, - { - "name": "popt", - "epoch": 0, - "version": "1.13", - "release": "16.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/popt-1.13-16.el7.x86_64.rpm", - "checksum": "sha256:28e81ba93e4ba3f95d28850e26991200f1ec9f94e4a8a92279c885d9c1444115" - }, - { - "name": "procps-ng", - "epoch": 0, - "version": "3.3.10", - "release": "28.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/procps-ng-3.3.10-28.el7.x86_64.rpm", - "checksum": "sha256:6587e5219f2ca2677e91abeceaa3e9c700b56108f395360f15ea84bffe118e4c" - }, - { - "name": "qrencode-libs", - "epoch": 0, - "version": "3.4.1", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/qrencode-libs-3.4.1-3.el7.x86_64.rpm", - "checksum": "sha256:423c42c5eb216eb25c4d32a896f77cf28f735e7d07cd60d3678a2db5c904ac55" - }, - { - "name": "readline", - "epoch": 0, - "version": "6.2", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/readline-6.2-11.el7.x86_64.rpm", - "checksum": "sha256:d196a525d02f95d83eaa9a25a10f7d08c15c4cad7cb9aeac15c9fbae8bbb164c" - }, - { - "name": "redhat-release-server", - "epoch": 0, - "version": "7.9", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/redhat-release-server-7.9-3.el7.x86_64.rpm", - "checksum": "sha256:ff1e959ba052cc5ceda455206e27ebca8638b7ce7fbf2b7db8a91f61a72aec66" - }, - { - "name": "sed", - "epoch": 0, - "version": "4.2.2", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/sed-4.2.2-7.el7.x86_64.rpm", - "checksum": "sha256:edfbbdad51585941595f0a7f38cce55cff109c555245d66a2af08fe8f2642d04" - }, - { - "name": "setup", - "epoch": 0, - "version": "2.8.71", - "release": "11.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/setup-2.8.71-11.el7.noarch.rpm", - "checksum": "sha256:66d16c27de575b7a34f7d811cb9b3df5262cdd1f65ea4d36bed0cdf25f2cc8cb" - }, - { - "name": "shadow-utils", - "epoch": 2, - "version": "4.6", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/shadow-utils-4.6-5.el7.x86_64.rpm", - "checksum": "sha256:63a2a2b5b6febf9e2cca8ffe69d36fbd700111a8c1e572d11e183df242a849e3" - }, - { - "name": "shared-mime-info", - "epoch": 0, - "version": "1.8", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/shared-mime-info-1.8-5.el7.x86_64.rpm", - "checksum": "sha256:46b5e7d3b453c12b8a40aec53d14e7529de17a999d45118809f6c1b83b151e1b" - }, - { - "name": "sqlite", - "epoch": 0, - "version": "3.7.17", - "release": "8.el7_7.1", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/sqlite-3.7.17-8.el7_7.1.x86_64.rpm", - "checksum": "sha256:d0a139643324cde3b1862adc5854bb915d66e2cc451f3608331a76ceef7e13fb" - }, - { - "name": "systemd", - "epoch": 0, - "version": "219", - "release": "78.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/systemd-219-78.el7.x86_64.rpm", - "checksum": "sha256:99d2f89951c958d69aaa04935001253b1d1ea781d44a3ba1db123fab15c5aab7" - }, - { - "name": "systemd-libs", - "epoch": 0, - "version": "219", - "release": "78.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/systemd-libs-219-78.el7.x86_64.rpm", - "checksum": "sha256:4062df96c0797801f4295a133df9a022e33ec13ae4516b29c936763f64a9b2f2" - }, - { - "name": "sysvinit-tools", - "epoch": 0, - "version": "2.88", - "release": "14.dsf.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/sysvinit-tools-2.88-14.dsf.el7.x86_64.rpm", - "checksum": "sha256:7ad380191f90f8ef35f60104fdd2c5abbc390a3b42223c52de86a166852cdc75" - }, - { - "name": "tar", - "epoch": 2, - "version": "1.26", - "release": "35.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/tar-1.26-35.el7.x86_64.rpm", - "checksum": "sha256:18c52a40340d3e7221fc43e2ad698926b78505eac0f3b36d0f23dfea1e8c4934" - }, - { - "name": "tzdata", - "epoch": 0, - "version": "2020a", - "release": "1.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/tzdata-2020a-1.el7.noarch.rpm", - "checksum": "sha256:a1f06bf1cbed7e05308f192c91856e81bbc988e1751efe6881bd7aca254d10ec" - }, - { - "name": "ustr", - "epoch": 0, - "version": "1.0.4", - "release": "16.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ustr-1.0.4-16.el7.x86_64.rpm", - "checksum": "sha256:50573712702e041493f2faf28f55f527d9eef8338a8bc6b59d92e1f221a227b8" - }, - { - "name": "util-linux", - "epoch": 0, - "version": "2.23.2", - "release": "65.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/util-linux-2.23.2-65.el7.x86_64.rpm", - "checksum": "sha256:4fb6e7b6246f929ade40e70f5edc757956714684fefcac9e6d21215623e5d569" - }, - { - "name": "xz", - "epoch": 0, - "version": "5.2.2", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/xz-5.2.2-1.el7.x86_64.rpm", - "checksum": "sha256:3252cadf18993f9b73799625d8fc7e9be6efedf33ddc3efa035797f2db9d8894" - }, - { - "name": "xz-libs", - "epoch": 0, - "version": "5.2.2", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/xz-libs-5.2.2-1.el7.x86_64.rpm", - "checksum": "sha256:aa391cfaba93d4b9f4f8959175fa2fcaf851b1e70d5f15c5b27e1a7ebfadf5fd" - }, - { - "name": "zlib", - "epoch": 0, - "version": "1.2.7", - "release": "18.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/zlib-1.2.7-18.el7.x86_64.rpm", - "checksum": "sha256:db8dd5164d1177c2804a337199ad1f8ae6821f91d38d442c03ab15c318f27c97" - }, - { - "name": "hardlink", - "epoch": 1, - "version": "1.3", - "release": "6.el7eng", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/hardlink/1.3/6.el7eng/x86_64/hardlink-1.3-6.el7eng.x86_64.rpm", - "checksum": "sha256:c6d7e3e6d22005f0e302e209188081522cae87e8db86fbefb38815fb647e8f42" - }, - { - "name": "rpm", - "epoch": 0, - "version": "4.11.3", - "release": "45.zfix_sighdr.el7eng", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/rpm/4.11.3/45.zfix_sighdr.el7eng/x86_64/rpm-4.11.3-45.zfix_sighdr.el7eng.x86_64.rpm", - "checksum": "sha256:c3f76a582b0de01668f2a0567458598f9914f792e79515713f2f7f00e2c1c788" - }, - { - "name": "rpm-libs", - "epoch": 0, - "version": "4.11.3", - "release": "45.zfix_sighdr.el7eng", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/rpm/4.11.3/45.zfix_sighdr.el7eng/x86_64/rpm-libs-4.11.3-45.zfix_sighdr.el7eng.x86_64.rpm", - "checksum": "sha256:cfee456a0f3a2208ec1925cf1e699dd9ac9c5efb9ef4f27c5928670b57aa2bf1" - } - ], "build": [ { "name": "acl", diff --git a/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json index 8ec76cabef..192953ee37 100644 --- a/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json @@ -671,15 +671,39 @@ "type": "org.osbuild.files", "origin": "org.osbuild.source", "references": [ + { + "id": "sha256:cc4b75e1ce83af2dbad9604e70bcf40e7f20ad8918a08f8b82f6d5e69efd9655" + }, { "id": "sha256:9ae89ba6e5533df2ee1af8cab3ed8fd6be99a432eff3519783095a37cd710a66" }, + { + "id": "sha256:cab023377a79bf3dc9317c1281abf4099aaccc0c95e69032fe2e563023a802f0" + }, + { + "id": "sha256:fca63e69026cd824dbe1d0ba051894e2bb63b3277d5a01c42fda7accc909b6a9" + }, + { + "id": "sha256:bfb092807d02f35824f86087b5baf279d92e3c2290d94bc00078b6ea0ec97c22" + }, { "id": "sha256:3b7e15c04916e85c82a35b0c30f3134692d032f3c5184f9bd558b87ee742117c" }, { "id": "sha256:1370de73e8c66a91af841521ca143c72a704df1c54ee9b452b2354a54de7b9b4" }, + { + "id": "sha256:978c60b716fd39216dede943a6149f2673a6277b534f5310190dd765e5b0010c" + }, + { + "id": "sha256:07aa5c8a348915ae684375cb75ab5e4d8c38bde2a90083126fe81c0ec7650db0" + }, + { + "id": "sha256:e70333dc0e327dd19cd56dd2ad8251ba42920b88ee38718ba99fa1d0f9b06913" + }, + { + "id": "sha256:005d3c65516a8021aac3e640d498a5fafe7f86eb7848009aed399a42730aa79f" + }, { "id": "sha256:70afac8a0b797e1c8983fa18a831c519a9d1c668381f35d669c81ecb99cba358" }, @@ -704,6 +728,12 @@ { "id": "sha256:09823f3edb9eb138b587366dcc29b54445bafeb5221664e4119254bd0cd0440a" }, + { + "id": "sha256:838e27cadbb77a140e9c26664d37cd22d38f22500b8e9b587405e926bbb7c18f" + }, + { + "id": "sha256:86fa352092d56520903a819fc02fb0bc7396ef86df9b89f7b6689dc492ba392d" + }, { "id": "sha256:a6b159e029615e6b2ab7bb402ba762610a743b72ef8a1b161bd3dc03d16a3afe" }, @@ -719,6 +749,9 @@ { "id": "sha256:8517730ba35d7d4f47df5adc20d9c317ce16055da214576b60ceed86dcaadedc" }, + { + "id": "sha256:c4703397f0a79f8f9f47549f3c535ef7c650bc169b5fbe67dfa5699f2ae91e18" + }, { "id": "sha256:413c3662c4532237979c888707d2acce4289fd4990fd3ea73d5d40fb6ebfd52b" }, @@ -773,9 +806,18 @@ { "id": "sha256:f5edbf09fbd69fd4985682a6bb2fdb8732d11c90f6f75977e77c225f846f6bc5" }, + { + "id": "sha256:bc12d9d6875e2120680179861221139e3a34833a918300a1def89ff75c18e4a5" + }, + { + "id": "sha256:ab40914102cb36464420c18710524a41f32df9e7762ead4879de09986c3f85ad" + }, { "id": "sha256:ceda9d24ef213658d34af8c53f891be32959398f7aa85b9bd4557a9ae9f797b9" }, + { + "id": "sha256:178e4b4ccf193c065e54056bb1c6b997ae9bdd7a72415e92006146f7614a6a81" + }, { "id": "sha256:17b7d2ff8162ea7b9b3745b442ba71942be4e3d43b341a34d24be26fcd2be8bb" }, @@ -797,6 +839,9 @@ { "id": "sha256:83417516af90dbff01c37715535ecbf349cdb6cf2a39a7addd1544c8fb939803" }, + { + "id": "sha256:027e16fd46bc2ecbfdcc42f4426d80406b83db0582b1e908c058231299dc7614" + }, { "id": "sha256:b59aabfdc08262004e58dfd948e8232ed9368a0412d66bbeecea7b5b8aef3c40" }, @@ -860,6 +905,9 @@ { "id": "sha256:a3b5d4d9fed6506e43ac4de247a62fc13c0494ccfd618f854c99cefc1cfd8de5" }, + { + "id": "sha256:d029559bf7ec180b3c1d698cbc2d3f4d7988cc9f17ec40ae62e4da90c4816d35" + }, { "id": "sha256:3db7deaf1a9a7a62ed322449230209d44167bdeb6529c8064421ab5ce26fe274" }, @@ -947,6 +995,9 @@ { "id": "sha256:a9a0f1078682a2e7b85967c4402672648e05802d2eccdae48dab33b47521adbc" }, + { + "id": "sha256:c5137a9d3b9aac4dba1262800fa480bbc979a62227ad31f0d837618cdf4377ee" + }, { "id": "sha256:7af4e177936381d8a3d26db6dc66d8be32f80b4eefe4f0a2f43e4b938c148ac0" }, @@ -962,6 +1013,60 @@ { "id": "sha256:c829e5532ab00017d914bff2ecf419ac68d57689bfb8662741bc9dde1dae8cef" }, + { + "id": "sha256:d69952b6417c422f416fe3baddd49dec88a26cd826749961ee24b6721977a2ce" + }, + { + "id": "sha256:12d3f2ca7449af3e3a3cff8be6b024cd1106987f49a7be16a84fa9bb39f2dde9" + }, + { + "id": "sha256:7d15ad33bec7d5bdc64074edaecff6019f590069b5375de7640c7df7e8e3776d" + }, + { + "id": "sha256:97dfbf353c370ee92b04a856a883255217528af0cfcbc9f234531efe71c043e6" + }, + { + "id": "sha256:11ac559bb43266411c847e259a1bb111ee67b4fdc09c3d9dbf6e91094f815e0f" + }, + { + "id": "sha256:12b098f5666193520fc84a092ce438a39f8c3ff53f7a7c4eee55e6515b49618c" + }, + { + "id": "sha256:f4e8763f1a42799dbcbada6f3c7f7f0943c89d9f5369bb750ea067a6e7a5ce4b" + }, + { + "id": "sha256:7e3edabd3ad60028285e194934644e087602c2440a672dc8c05996afb044ece4" + }, + { + "id": "sha256:aced7b9842dab221f2ca286c7532c9342e81fff0df3f09c4f265ec3fa83d4ece" + }, + { + "id": "sha256:0a6d71d0c1c1d14f2a6885734232dbe2a06ca6a958a9b81f06cef008e58769c8" + }, + { + "id": "sha256:3da6456472355dc70e19cd3b5109a73b8f5c019bb7f24a6b17d7150314f07244" + }, + { + "id": "sha256:66149f8d65c73e297a392cf33a8c40e570ae8b16667c29d7ce967adade27eb7a" + }, + { + "id": "sha256:a37d2eeb9810427888dfe2eea1712441e0bb91e74f93d2166a8978a29f82ca98" + }, + { + "id": "sha256:d866a841fa8afa3b5f4210f172d4eb78aafaa13b0de26ccbea708779fb746b14" + }, + { + "id": "sha256:a3dc70cc6472c7eb9d1216acc144a6dceb48bdb69955f01b8585cd80ffdd538a" + }, + { + "id": "sha256:0b4110cf94f7f793dbabb7a1a616087455ab316ec74ad5204abb0fd2f211ee58" + }, + { + "id": "sha256:33fba59c069f63b29ac955363d97683c582178f5e314d594c452b8a630a59170" + }, + { + "id": "sha256:58ce6f65f4b61dfcb190deac65fca0cc210abfdae65b54a88ee5f61c61e3e47e" + }, { "id": "sha256:12d0d9348fb55a9e518a45b63db83b95b1e6c9d54551aa0ec288199f03cce5cd" }, @@ -1010,6 +1115,9 @@ { "id": "sha256:2a9bc37a1274ef0fd28a594bc83334b868bee0c87f19f5b413c8c81e2a43dddd" }, + { + "id": "sha256:bff924265c10c3e75cd5fadaf2e23910829a6e9f5482d4e43fb7c15e41eb48a0" + }, { "id": "sha256:0849869ef8adc05c8b90b93e3aaf1bac5afc4a1b1cc3efc594dceff96a123cf7" }, @@ -1043,12 +1151,18 @@ { "id": "sha256:a5ca0ac5ee32aa9c2ba4a02e37fb6cdb7d65df0a7df1a6b795c294b3ed6e242d" }, + { + "id": "sha256:827757b21e2a88b67e7991f003dd30afd778ee94d966d1d91619b05ba4f801fe" + }, { "id": "sha256:6a778b6a2091b427b4196d704d00a92e47e8269d32eaa222c2c0e359e8394e8f" }, { "id": "sha256:a6bd2f5457433ca2c45146aa547eec6642870bebb3e96ef75bed4d73fb246f32" }, + { + "id": "sha256:bb7b02048bc98c2f62e62ce67f36eb54cfcbf53f763ea0cd557053d20b2a2682" + }, { "id": "sha256:2a7721ccbaf5d43e1a813b267053fd38831f9aeb9c4eb8d8efb25c947082a1aa" }, @@ -1079,6 +1193,12 @@ { "id": "sha256:9bfc868c97a1998e18e7ff32657478d895e87a2d1d919ffeca60a4e9dc5cec43" }, + { + "id": "sha256:72e259b72e9345c09d6d06056fd93f8ea31c10cd69e78c95899f44a8777a04b5" + }, + { + "id": "sha256:9b8a185b88e6d414b5d744aabd5817950d112a8f351bff3c2a01b1ab2b766b1e" + }, { "id": "sha256:cff44fe84d096c0e6f082cb622f17149c3edde1421b32192307ef713d1f64790" }, @@ -1091,6 +1211,9 @@ { "id": "sha256:9908abc99788aa3e371c54a89d7236e9edd66ff7e8bc9b9f2cf4732ca86b4785" }, + { + "id": "sha256:7567202eb027a1efb739092a6204307d735db326cf92a2c979201e36d841a284" + }, { "id": "sha256:eb71af5a9b4665611dbd3cd17ecaa3437c2ad0961f40ff743fcf2fa7292cff05" }, @@ -1103,12 +1226,21 @@ { "id": "sha256:d7ee2c5b5fda494b492a8c9e04b0ec06b24521d9debea706e0a3af8c716d9ea2" }, + { + "id": "sha256:2e56f3449308538a955393ca85e4908d9022885fa34894cb365669b9d38de282" + }, + { + "id": "sha256:535aec9847767995152b43de3f8323e53c7c36decf894ca6e426742fb1507322" + }, { "id": "sha256:88e7108ff671d4e161a1fc1bd72c41c4cec8e80b74c5300b327183551824cc49" }, { "id": "sha256:6bc289b6f664cebfb07703f279f28a2f69482c83f4b3718eb07e8028deb2a5fe" }, + { + "id": "sha256:aeb22ef9ac260054a3641602a021740b6d0985cbddc60bc00ce2b3279017ca1c" + }, { "id": "sha256:776c8e0ba56567e1fa9f9295afd305563ccc28d139ac2bfe04eb61a57a2d78a3" }, @@ -1121,6 +1253,9 @@ { "id": "sha256:68e8132e5eda6b553ccbad7287dad2e8ab116eec95477002c84fcd9e1d7272ab" }, + { + "id": "sha256:da67098eeba3936506e2fcd15e5332d4afffe37e31b97f9170bea8ce9ceafd76" + }, { "id": "sha256:207150c3207f1d5af39c66faf06b6578d80c880917525a0917111a0087fdeeee" }, @@ -1157,6 +1292,9 @@ { "id": "sha256:0522ab1034c4202c3ad9ff36807e55814ac366a4aac27a034b30b522cd4aeca9" }, + { + "id": "sha256:93503e6622050a007698e4649903b26f7c76b207461c5e97c9215437a33b031f" + }, { "id": "sha256:b2a89261d081d8740b01f9a4b8191efeaabb6391e078eb77cc52756c269f3efe" }, @@ -1199,9 +1337,18 @@ { "id": "sha256:1e34f348448890f16458dff676697b311e4bd3ff4ac463b643b32edad7106d3b" }, + { + "id": "sha256:ea6c84fe12b97fb5511ffee78b31a8ffb0444fd41da21932503568df14a95e98" + }, { "id": "sha256:f2ee3238762ee4b1917cb7ed5d5e064dbae4d1804bdb65bd4bf6c56b785f8836" }, + { + "id": "sha256:8eab91b478d945b5992f5676754d1ca0f124bcee584de99e74bef3ed62a4a859" + }, + { + "id": "sha256:1a9ca0f47677eab3e6ce4e98823cc29d2968d058b365d8c65f724f2c067ed14d" + }, { "id": "sha256:547b7bb1b7791f9972f82f88c9931b9c754ad64a8113b733d6515b6edd1b970c" }, @@ -1325,6 +1472,15 @@ { "id": "sha256:b043d16e3d62f62e7589e93dfc0cebee5753d8f8ea225c0682e1fbeea5f1985a" }, + { + "id": "sha256:4dc9a401c2514336e46adc87f5d05244ca743eb08bf6bcab1443a9eba6b81970" + }, + { + "id": "sha256:77a55f2182769815d41519b53ca15b54aa09cbe48249cd91487a091e81fdd7c2" + }, + { + "id": "sha256:19f7ca6bf9d8e762c376d0d8b52e2982e900a3d3e5fe7d3f095d1b27f4ab95aa" + }, { "id": "sha256:b63d899b20f7c113f17bb3815efaf12fb275b6ac6e0a73a8e11d885fd06c414e" }, @@ -1487,6 +1643,9 @@ { "id": "sha256:d196a525d02f95d83eaa9a25a10f7d08c15c4cad7cb9aeac15c9fbae8bbb164c" }, + { + "id": "sha256:2293799f84ccf36c681066a3aa0f7fe713b913e589c105713ecbb98e86966cc7" + }, { "id": "sha256:65f0e22564f440caa9aad8404bce88bdef734bbfe78eb3909950a4ddd3280eb4" }, @@ -1601,6 +1760,9 @@ { "id": "sha256:09728df5b04e03f212a1a8be620b5ea3c97515c50e73cb079ec936ee174ba61d" }, + { + "id": "sha256:5487de1bac24442383d789e48ba61456ec1b28095b481ca87a2bd5a2a67b6c43" + }, { "id": "sha256:2a03d83873a95f5a41224ef37b6abc396c04472aa3efc96835baae9f4596e018" }, @@ -1625,6 +1787,9 @@ { "id": "sha256:06f674513dc3838eb76593777aa0a514eef44c85886ceb8b87779e69a9d00939" }, + { + "id": "sha256:a61dcf3c31bc66497c86d007870305008e2ab6d11fc6a570af179afa19bfcbc2" + }, { "id": "sha256:6bb6d2e38b25cf61b1f78c8e224bba9d5adb10fa8c4db977cc06f7b19bbc4d9b" }, @@ -1862,6 +2027,15 @@ "version": "7.9", "nick": "Maipo" } + }, + { + "id": "76a22bf4-f153-4541-b6c7-0332c0dfaeac", + "kernel": "0-rescue-ffffffffffffffffffffffffffffffff", + "product": { + "name": "Red Hat Enterprise Linux", + "version": "7.9", + "nick": "Maipo" + } } ], "bios": { @@ -3456,61 +3630,7 @@ } }, "rpmmd": { - "blueprint": [ - { - "name": "NetworkManager", - "epoch": 1, - "version": "1.18.8", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/NetworkManager-1.18.8-1.el7.x86_64.rpm", - "checksum": "sha256:cc4b75e1ce83af2dbad9604e70bcf40e7f20ad8918a08f8b82f6d5e69efd9655" - }, - { - "name": "NetworkManager-config-server", - "epoch": 1, - "version": "1.18.8", - "release": "1.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/NetworkManager-config-server-1.18.8-1.el7.noarch.rpm", - "checksum": "sha256:9ae89ba6e5533df2ee1af8cab3ed8fd6be99a432eff3519783095a37cd710a66" - }, - { - "name": "NetworkManager-libnm", - "epoch": 1, - "version": "1.18.8", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/NetworkManager-libnm-1.18.8-1.el7.x86_64.rpm", - "checksum": "sha256:cab023377a79bf3dc9317c1281abf4099aaccc0c95e69032fe2e563023a802f0" - }, - { - "name": "NetworkManager-team", - "epoch": 1, - "version": "1.18.8", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/NetworkManager-team-1.18.8-1.el7.x86_64.rpm", - "checksum": "sha256:fca63e69026cd824dbe1d0ba051894e2bb63b3277d5a01c42fda7accc909b6a9" - }, - { - "name": "NetworkManager-tui", - "epoch": 1, - "version": "1.18.8", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/NetworkManager-tui-1.18.8-1.el7.x86_64.rpm", - "checksum": "sha256:bfb092807d02f35824f86087b5baf279d92e3c2290d94bc00078b6ea0ec97c22" - }, - { - "name": "Red_Hat_Enterprise_Linux-Release_Notes-7-en-US", - "epoch": 0, - "version": "7", - "release": "2.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/Red_Hat_Enterprise_Linux-Release_Notes-7-en-US-7-2.el7.noarch.rpm", - "checksum": "sha256:3b7e15c04916e85c82a35b0c30f3134692d032f3c5184f9bd558b87ee742117c" - }, + "build": [ { "name": "acl", "epoch": 0, @@ -3520,51 +3640,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/acl-2.2.51-15.el7.x86_64.rpm", "checksum": "sha256:1370de73e8c66a91af841521ca143c72a704df1c54ee9b452b2354a54de7b9b4" }, - { - "name": "aic94xx-firmware", - "epoch": 0, - "version": "30", - "release": "6.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/aic94xx-firmware-30-6.el7.noarch.rpm", - "checksum": "sha256:978c60b716fd39216dede943a6149f2673a6277b534f5310190dd765e5b0010c" - }, - { - "name": "alsa-firmware", - "epoch": 0, - "version": "1.0.28", - "release": "2.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/alsa-firmware-1.0.28-2.el7.noarch.rpm", - "checksum": "sha256:07aa5c8a348915ae684375cb75ab5e4d8c38bde2a90083126fe81c0ec7650db0" - }, - { - "name": "alsa-lib", - "epoch": 0, - "version": "1.1.8", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/alsa-lib-1.1.8-1.el7.x86_64.rpm", - "checksum": "sha256:e70333dc0e327dd19cd56dd2ad8251ba42920b88ee38718ba99fa1d0f9b06913" - }, - { - "name": "alsa-tools-firmware", - "epoch": 0, - "version": "1.1.0", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/alsa-tools-firmware-1.1.0-1.el7.x86_64.rpm", - "checksum": "sha256:005d3c65516a8021aac3e640d498a5fafe7f86eb7848009aed399a42730aa79f" - }, - { - "name": "audit", - "epoch": 0, - "version": "2.8.5", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/audit-2.8.5-4.el7.x86_64.rpm", - "checksum": "sha256:70afac8a0b797e1c8983fa18a831c519a9d1c668381f35d669c81ecb99cba358" - }, { "name": "audit-libs", "epoch": 0, @@ -3592,24 +3667,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/bash-4.2.46-34.el7.x86_64.rpm", "checksum": "sha256:164930af843a056c1ad18627fc4364d1f931d79145060aa47165d4e1edc6f2a4" }, - { - "name": "bc", - "epoch": 0, - "version": "1.06.95", - "release": "13.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/bc-1.06.95-13.el7.x86_64.rpm", - "checksum": "sha256:78f77d63649812e9bcc0cd27f303692e7414a13326265e10d1bbaab6036d3fec" - }, - { - "name": "bind-export-libs", - "epoch": 32, - "version": "9.11.4", - "release": "26.P2.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/bind-export-libs-9.11.4-26.P2.el7.x86_64.rpm", - "checksum": "sha256:28229a7723ccb13eeb47fa50325fbb1b2eed94a4def1f43ec878271eff2d956b" - }, { "name": "binutils", "epoch": 0, @@ -3620,2826 +3677,16 @@ "checksum": "sha256:09823f3edb9eb138b587366dcc29b54445bafeb5221664e4119254bd0cd0440a" }, { - "name": "biosdevname", + "name": "boost-iostreams", "epoch": 0, - "version": "0.7.3", - "release": "2.el7", + "version": "1.53.0", + "release": "28.el7", "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/biosdevname-0.7.3-2.el7.x86_64.rpm", - "checksum": "sha256:838e27cadbb77a140e9c26664d37cd22d38f22500b8e9b587405e926bbb7c18f" + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/boost-iostreams-1.53.0-28.el7.x86_64.rpm", + "checksum": "sha256:85fa0e5f90907e690d09657d67d2b018572bf1431797d0d95a51fcea49700647" }, { - "name": "bluez", - "epoch": 0, - "version": "5.44", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/bluez-5.44-7.el7.x86_64.rpm", - "checksum": "sha256:86fa352092d56520903a819fc02fb0bc7396ef86df9b89f7b6689dc492ba392d" - }, - { - "name": "btrfs-progs", - "epoch": 0, - "version": "4.9.1", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/btrfs-progs-4.9.1-1.el7.x86_64.rpm", - "checksum": "sha256:a6b159e029615e6b2ab7bb402ba762610a743b72ef8a1b161bd3dc03d16a3afe" - }, - { - "name": "bzip2-libs", - "epoch": 0, - "version": "1.0.6", - "release": "13.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/bzip2-libs-1.0.6-13.el7.x86_64.rpm", - "checksum": "sha256:7df3437c7bea53f7ed6db4f27165e8bcd88d33cc7bc965f49e80b2e4fb6f78c9" - }, - { - "name": "ca-certificates", - "epoch": 0, - "version": "2020.2.41", - "release": "70.0.el7_8", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ca-certificates-2020.2.41-70.0.el7_8.noarch.rpm", - "checksum": "sha256:4d4a191087d74621903e3d7a00297da398737c7b66735ef24d45facad0a7dd11" - }, - { - "name": "chkconfig", - "epoch": 0, - "version": "1.7.6", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/chkconfig-1.7.6-1.el7.x86_64.rpm", - "checksum": "sha256:8517730ba35d7d4f47df5adc20d9c317ce16055da214576b60ceed86dcaadedc" - }, - { - "name": "chrony", - "epoch": 0, - "version": "3.4", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/chrony-3.4-1.el7.x86_64.rpm", - "checksum": "sha256:c4703397f0a79f8f9f47549f3c535ef7c650bc169b5fbe67dfa5699f2ae91e18" - }, - { - "name": "coreutils", - "epoch": 0, - "version": "8.22", - "release": "24.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/coreutils-8.22-24.el7.x86_64.rpm", - "checksum": "sha256:d273b6dc11f28ced6db4c6545e245b1824deedddf3e386c935d8fb9f61836872" - }, - { - "name": "cpio", - "epoch": 0, - "version": "2.11", - "release": "28.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cpio-2.11-28.el7.x86_64.rpm", - "checksum": "sha256:ee9f7e005742702d8e10aa62f1c11683bde53e26adc170d038a7a2014119b72b" - }, - { - "name": "cracklib", - "epoch": 0, - "version": "2.9.0", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cracklib-2.9.0-11.el7.x86_64.rpm", - "checksum": "sha256:57e86792013b2c3506383659876605cc016d3a6795487ae1c22eb8fb319a3527" - }, - { - "name": "cracklib-dicts", - "epoch": 0, - "version": "2.9.0", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cracklib-dicts-2.9.0-11.el7.x86_64.rpm", - "checksum": "sha256:0e480a04ed607a99b85041a20b14314f1a681bc95a518d34543dd10531bbbe72" - }, - { - "name": "cronie", - "epoch": 0, - "version": "1.4.11", - "release": "23.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cronie-1.4.11-23.el7.x86_64.rpm", - "checksum": "sha256:b4397a45fa289e5b53f09e4e12bdd1518f5e9b497b2cdbe49936aa43e51ad44f" - }, - { - "name": "cronie-anacron", - "epoch": 0, - "version": "1.4.11", - "release": "23.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cronie-anacron-1.4.11-23.el7.x86_64.rpm", - "checksum": "sha256:2e3bb02e9028cfcae4f9945fccb663ed54ffd3b26e77bceabb2328ba3b433ae6" - }, - { - "name": "crontabs", - "epoch": 0, - "version": "1.11", - "release": "6.20121102git.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/crontabs-1.11-6.20121102git.el7.noarch.rpm", - "checksum": "sha256:f84e2988e167610c0a5807d8cfecb6f82490fe04558b066ffc90b5bfbeb9ffb1" - }, - { - "name": "cryptsetup-libs", - "epoch": 0, - "version": "2.0.3", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cryptsetup-libs-2.0.3-6.el7.x86_64.rpm", - "checksum": "sha256:57738063a487cfdc9da6f50c9ff467ef6b24c244f666ddca76d84df11206b6f3" - }, - { - "name": "curl", - "epoch": 0, - "version": "7.29.0", - "release": "59.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/curl-7.29.0-59.el7.x86_64.rpm", - "checksum": "sha256:d71df169d5e155914ece85b1b4506c61238812a2ad331371e07950c09575093e" - }, - { - "name": "cyrus-sasl-lib", - "epoch": 0, - "version": "2.1.26", - "release": "23.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/cyrus-sasl-lib-2.1.26-23.el7.x86_64.rpm", - "checksum": "sha256:52c58f3b6eeb69a9b77dda87eadb64b0c5f872c83bcb83fdca7a0e36f1d5d2db" - }, - { - "name": "dbus", - "epoch": 1, - "version": "1.10.24", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dbus-1.10.24-15.el7.x86_64.rpm", - "checksum": "sha256:261ddb84d4530e0ed4a0f66b18622629091f674f69133909638aaa68eebd3c49" - }, - { - "name": "dbus-glib", - "epoch": 0, - "version": "0.100", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dbus-glib-0.100-7.el7.x86_64.rpm", - "checksum": "sha256:d9ebda818f23effdb4c90750b2d1e98248f6fe0203bbc09488f6deb867e06ec1" - }, - { - "name": "dbus-libs", - "epoch": 1, - "version": "1.10.24", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dbus-libs-1.10.24-15.el7.x86_64.rpm", - "checksum": "sha256:ebf07223ff459f5441bec4857363ff4c623e34d333d9fd26eb794aa23db37da6" - }, - { - "name": "dbus-python", - "epoch": 0, - "version": "1.1.1", - "release": "9.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dbus-python-1.1.1-9.el7.x86_64.rpm", - "checksum": "sha256:8bdcfd34fd406f1a12d984c02586630a55e8c036d72ab0728c855174870b7fc0" - }, - { - "name": "desktop-file-utils", - "epoch": 0, - "version": "0.23", - "release": "2.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/desktop-file-utils-0.23-2.el7.x86_64.rpm", - "checksum": "sha256:6d001476ce893301e5a770f0f461161249099427ff8ea151fa9e64039d6b2189" - }, - { - "name": "device-mapper", - "epoch": 7, - "version": "1.02.170", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-1.02.170-6.el7.x86_64.rpm", - "checksum": "sha256:f5edbf09fbd69fd4985682a6bb2fdb8732d11c90f6f75977e77c225f846f6bc5" - }, - { - "name": "device-mapper-event", - "epoch": 7, - "version": "1.02.170", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-event-1.02.170-6.el7.x86_64.rpm", - "checksum": "sha256:bc12d9d6875e2120680179861221139e3a34833a918300a1def89ff75c18e4a5" - }, - { - "name": "device-mapper-event-libs", - "epoch": 7, - "version": "1.02.170", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-event-libs-1.02.170-6.el7.x86_64.rpm", - "checksum": "sha256:ab40914102cb36464420c18710524a41f32df9e7762ead4879de09986c3f85ad" - }, - { - "name": "device-mapper-libs", - "epoch": 7, - "version": "1.02.170", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-libs-1.02.170-6.el7.x86_64.rpm", - "checksum": "sha256:ceda9d24ef213658d34af8c53f891be32959398f7aa85b9bd4557a9ae9f797b9" - }, - { - "name": "device-mapper-persistent-data", - "epoch": 0, - "version": "0.8.5", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-persistent-data-0.8.5-3.el7.x86_64.rpm", - "checksum": "sha256:178e4b4ccf193c065e54056bb1c6b997ae9bdd7a72415e92006146f7614a6a81" - }, - { - "name": "dhclient", - "epoch": 12, - "version": "4.2.5", - "release": "82.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dhclient-4.2.5-82.el7.x86_64.rpm", - "checksum": "sha256:17b7d2ff8162ea7b9b3745b442ba71942be4e3d43b341a34d24be26fcd2be8bb" - }, - { - "name": "dhcp-common", - "epoch": 12, - "version": "4.2.5", - "release": "82.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dhcp-common-4.2.5-82.el7.x86_64.rpm", - "checksum": "sha256:24d22c16e42254ecf34eab993177a614bb3cf4ee86529c5f9267db53b53f4aa8" - }, - { - "name": "dhcp-libs", - "epoch": 12, - "version": "4.2.5", - "release": "82.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dhcp-libs-4.2.5-82.el7.x86_64.rpm", - "checksum": "sha256:2fcf0cdbc2af078e48997356493e01094d5464be9bf6b93b9fada75b83a18130" - }, - { - "name": "diffutils", - "epoch": 0, - "version": "3.3", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/diffutils-3.3-5.el7.x86_64.rpm", - "checksum": "sha256:644bb4bb0d549837d1a5f9d65e02835290b538f123605070cbf93291b11d2812" - }, - { - "name": "dmidecode", - "epoch": 1, - "version": "3.2", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dmidecode-3.2-5.el7.x86_64.rpm", - "checksum": "sha256:dde04dcb5cd8be2e931c4abd93b72efb024f540a9f21e939ddea6af0da4d0b47" - }, - { - "name": "dracut", - "epoch": 0, - "version": "033", - "release": "572.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dracut-033-572.el7.x86_64.rpm", - "checksum": "sha256:23e53944df86ed0b04fd39c8b0dd754e251c68179e44e2aa91b9e440b168df89" - }, - { - "name": "dracut-config-rescue", - "epoch": 0, - "version": "033", - "release": "572.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dracut-config-rescue-033-572.el7.x86_64.rpm", - "checksum": "sha256:027e16fd46bc2ecbfdcc42f4426d80406b83db0582b1e908c058231299dc7614" - }, - { - "name": "dracut-network", - "epoch": 0, - "version": "033", - "release": "572.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dracut-network-033-572.el7.x86_64.rpm", - "checksum": "sha256:b59aabfdc08262004e58dfd948e8232ed9368a0412d66bbeecea7b5b8aef3c40" - }, - { - "name": "e2fsprogs", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/e2fsprogs-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:d3a3a4872f45d3a37871fb374a1a0bb4b8c83190ac1711d13b74c363b50aabdf" - }, - { - "name": "e2fsprogs-libs", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/e2fsprogs-libs-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:740a1af1718166f8145bcbd75a12684abdb2351674c99ebbc849cbc08d4b38a0" - }, - { - "name": "ebtables", - "epoch": 0, - "version": "2.0.10", - "release": "16.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ebtables-2.0.10-16.el7.x86_64.rpm", - "checksum": "sha256:094d087413bbb86acb550e417041bbbb755d8ee98d7c481f7d09ad077806ff51" - }, - { - "name": "elfutils-default-yama-scope", - "epoch": 0, - "version": "0.176", - "release": "5.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/elfutils-default-yama-scope-0.176-5.el7.noarch.rpm", - "checksum": "sha256:e8828c8e13cb65e1ee5e302411a8abd0c476517e87d102398a9b9b112d993edf" - }, - { - "name": "elfutils-libelf", - "epoch": 0, - "version": "0.176", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/elfutils-libelf-0.176-5.el7.x86_64.rpm", - "checksum": "sha256:e432eb142cf558d61863f88e015fd99d222b606433f43f3850372de5188236cf" - }, - { - "name": "elfutils-libs", - "epoch": 0, - "version": "0.176", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/elfutils-libs-0.176-5.el7.x86_64.rpm", - "checksum": "sha256:22bfc046fe32e83a85265743b28c774e31fbacf8cd454b34ce2ff4fdf9f26725" - }, - { - "name": "emacs-filesystem", - "epoch": 1, - "version": "24.3", - "release": "23.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/emacs-filesystem-24.3-23.el7.noarch.rpm", - "checksum": "sha256:cd1e435a74209901055546f73ae7c192f9ed646b74ffec0f798f2fa4e7c00492" - }, - { - "name": "ethtool", - "epoch": 2, - "version": "4.8", - "release": "10.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ethtool-4.8-10.el7.x86_64.rpm", - "checksum": "sha256:7b2639a5b7d320e69d88f09428c9aa377ac091675928cfffa50710e02911aff8" - }, - { - "name": "expat", - "epoch": 0, - "version": "2.1.0", - "release": "12.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/expat-2.1.0-12.el7.x86_64.rpm", - "checksum": "sha256:fb9878feb857be5b29d802cab4982689c32df47f63a9a3b7f2fc33e2886ad323" - }, - { - "name": "file", - "epoch": 0, - "version": "5.11", - "release": "37.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/file-5.11-37.el7.x86_64.rpm", - "checksum": "sha256:a7334659feacb2b869b1b6b3b24e7c48445d65c40f5fea6568f32828478b1558" - }, - { - "name": "file-libs", - "epoch": 0, - "version": "5.11", - "release": "37.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/file-libs-5.11-37.el7.x86_64.rpm", - "checksum": "sha256:d62dc3d5a28dfcfc40c9f59f997656e28e00f62de319874ae28c162c4c9937da" - }, - { - "name": "filesystem", - "epoch": 0, - "version": "3.2", - "release": "25.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/filesystem-3.2-25.el7.x86_64.rpm", - "checksum": "sha256:10a19a46b46f111536f4db43fe6a1adbf8f8ac24b316297b64db2aee892ae137" - }, - { - "name": "findutils", - "epoch": 1, - "version": "4.5.11", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/findutils-4.5.11-6.el7.x86_64.rpm", - "checksum": "sha256:c4d66f83ac64a86c8b1d471bb85f7f3ddb126c6bd2d5f4a12c84da7c8ed178ad" - }, - { - "name": "fipscheck", - "epoch": 0, - "version": "1.4.1", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/fipscheck-1.4.1-6.el7.x86_64.rpm", - "checksum": "sha256:2a0b4b1fee52b3dc30c332a70ee8f787a03ccaa4ea59e484e47e2ef4b1365239" - }, - { - "name": "fipscheck-lib", - "epoch": 0, - "version": "1.4.1", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/fipscheck-lib-1.4.1-6.el7.x86_64.rpm", - "checksum": "sha256:84f7abbf32791cfbfd6e21c2bc021f7adb76cfc1783fe22f8221c056e16ac7a5" - }, - { - "name": "firewalld", - "epoch": 0, - "version": "0.6.3", - "release": "11.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/firewalld-0.6.3-11.el7.noarch.rpm", - "checksum": "sha256:5af98557ef67c525908bb314f24d9ffe15dc9970f9e51875c10b0e68395d163c" - }, - { - "name": "firewalld-filesystem", - "epoch": 0, - "version": "0.6.3", - "release": "11.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/firewalld-filesystem-0.6.3-11.el7.noarch.rpm", - "checksum": "sha256:e6605139e0ad352b6a67dda76ba537e2801e09d83d1b9050c403d63a95041a6e" - }, - { - "name": "fxload", - "epoch": 0, - "version": "2002_04_11", - "release": "16.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/fxload-2002_04_11-16.el7.x86_64.rpm", - "checksum": "sha256:d029559bf7ec180b3c1d698cbc2d3f4d7988cc9f17ec40ae62e4da90c4816d35" - }, - { - "name": "gawk", - "epoch": 0, - "version": "4.0.2", - "release": "4.el7_3.1", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/gawk-4.0.2-4.el7_3.1.x86_64.rpm", - "checksum": "sha256:3db7deaf1a9a7a62ed322449230209d44167bdeb6529c8064421ab5ce26fe274" - }, - { - "name": "gdbm", - "epoch": 0, - "version": "1.10", - "release": "8.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/gdbm-1.10-8.el7.x86_64.rpm", - "checksum": "sha256:fb080ff259faa1252f46c0f4ed4a49d086d1712333fbba0f6554759c4a976142" - }, - { - "name": "glib2", - "epoch": 0, - "version": "2.56.1", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/glib2-2.56.1-7.el7.x86_64.rpm", - "checksum": "sha256:3ce341bb037d0ca1189bcc51bb3f9bbb939bf47f799f1d834c1d9d907cb6f66d" - }, - { - "name": "glibc", - "epoch": 0, - "version": "2.17", - "release": "317.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/glibc-2.17-317.el7.x86_64.rpm", - "checksum": "sha256:ec6571bb9ac645f3430a24f9826da46823761529feb7decc7a1668829987a7cd" - }, - { - "name": "glibc-common", - "epoch": 0, - "version": "2.17", - "release": "317.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/glibc-common-2.17-317.el7.x86_64.rpm", - "checksum": "sha256:22afb742000128beaa4a42919531ec94eda22e8ceed7b5a5948584b90c106fc1" - }, - { - "name": "gmp", - "epoch": 1, - "version": "6.0.0", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/gmp-6.0.0-15.el7.x86_64.rpm", - "checksum": "sha256:ae220fa29366941ae2acab3006067bad40860a156bf67847a88935c8a354e926" - }, - { - "name": "gnupg2", - "epoch": 0, - "version": "2.0.22", - "release": "5.el7_5", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/gnupg2-2.0.22-5.el7_5.x86_64.rpm", - "checksum": "sha256:c06f6adbbdbb714b831ed6fad4b88b9b3dcff5dfe5186c4a8d0e3c60a0f985d3" - }, - { - "name": "gobject-introspection", - "epoch": 0, - "version": "1.56.1", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/gobject-introspection-1.56.1-1.el7.x86_64.rpm", - "checksum": "sha256:b22d91546662cebf2707f052f1ec8353980dd80ccdb66dca29e75ff3c63c9aac" - }, - { - "name": "gpgme", - "epoch": 0, - "version": "1.3.2", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/gpgme-1.3.2-5.el7.x86_64.rpm", - "checksum": "sha256:91a28fec5e3d54e1fd375399be811bbdf692625befb8d95ef053bf31a511a826" - }, - { - "name": "grep", - "epoch": 0, - "version": "2.20", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/grep-2.20-3.el7.x86_64.rpm", - "checksum": "sha256:005f4e86184775de9904a454e0cd70b524952810e5d9916e4721f089986d5cc8" - }, - { - "name": "groff-base", - "epoch": 0, - "version": "1.22.2", - "release": "8.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/groff-base-1.22.2-8.el7.x86_64.rpm", - "checksum": "sha256:e0e5409f044c98cab1ffce5cf8915a8eee43a37f723c59760469d306c7ae1cfe" - }, - { - "name": "grubby", - "epoch": 0, - "version": "8.28", - "release": "26.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/grubby-8.28-26.el7.x86_64.rpm", - "checksum": "sha256:6ee12aa6e7b041aad0ac3d968b1ab18dacded8a489ad27b653242929af978e12" - }, - { - "name": "gzip", - "epoch": 0, - "version": "1.5", - "release": "10.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/gzip-1.5-10.el7.x86_64.rpm", - "checksum": "sha256:de398e6ad81cd87675053549c777bab89cd38729f1803087850a6b2afce213b7" - }, - { - "name": "hostname", - "epoch": 0, - "version": "3.13", - "release": "3.el7_7.1", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/hostname-3.13-3.el7_7.1.x86_64.rpm", - "checksum": "sha256:df090ffbfb86d2d5bc3ed70e61876e8ba1ebc4d273773c657a16f514b1d83b66" - }, - { - "name": "hwdata", - "epoch": 0, - "version": "0.252", - "release": "9.7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/hwdata-0.252-9.7.el7.x86_64.rpm", - "checksum": "sha256:259dccd3801c5f2b41438236eca586f8caaf0ae9e9789acd61b2affee56e924d" - }, - { - "name": "info", - "epoch": 0, - "version": "5.1", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/info-5.1-5.el7.x86_64.rpm", - "checksum": "sha256:6f3de3629f79a6728b6fe9e9c5840170a7d4436d1a1150e4e2b39a2a9f923a64" - }, - { - "name": "initscripts", - "epoch": 0, - "version": "9.49.53", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/initscripts-9.49.53-1.el7.x86_64.rpm", - "checksum": "sha256:74f3d93caa5b80e431181ee02b0727db0240b35032b5cbadec3d3b01551f7c21" - }, - { - "name": "iproute", - "epoch": 0, - "version": "4.11.0", - "release": "30.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iproute-4.11.0-30.el7.x86_64.rpm", - "checksum": "sha256:a9a0f1078682a2e7b85967c4402672648e05802d2eccdae48dab33b47521adbc" - }, - { - "name": "iprutils", - "epoch": 0, - "version": "2.4.17.1", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iprutils-2.4.17.1-3.el7.x86_64.rpm", - "checksum": "sha256:c5137a9d3b9aac4dba1262800fa480bbc979a62227ad31f0d837618cdf4377ee" - }, - { - "name": "ipset", - "epoch": 0, - "version": "7.1", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ipset-7.1-1.el7.x86_64.rpm", - "checksum": "sha256:7af4e177936381d8a3d26db6dc66d8be32f80b4eefe4f0a2f43e4b938c148ac0" - }, - { - "name": "ipset-libs", - "epoch": 0, - "version": "7.1", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ipset-libs-7.1-1.el7.x86_64.rpm", - "checksum": "sha256:0bb2ac8f0d7a970cd1c318d9b810ba9c0f9540bd0d62d391ec47b5da9415fd2d" - }, - { - "name": "iptables", - "epoch": 0, - "version": "1.4.21", - "release": "35.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iptables-1.4.21-35.el7.x86_64.rpm", - "checksum": "sha256:ee91f2840155b3fbafe9059d4e3465ed12bee73cac15667f2dee4c5f9a52cf87" - }, - { - "name": "iputils", - "epoch": 0, - "version": "20160308", - "release": "10.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iputils-20160308-10.el7.x86_64.rpm", - "checksum": "sha256:92f5006e55ebf5dc518ad9e7498506063f0b6c889a925565117aa3fb550cd89c" - }, - { - "name": "irqbalance", - "epoch": 3, - "version": "1.0.7", - "release": "12.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/irqbalance-1.0.7-12.el7.x86_64.rpm", - "checksum": "sha256:c829e5532ab00017d914bff2ecf419ac68d57689bfb8662741bc9dde1dae8cef" - }, - { - "name": "ivtv-firmware", - "epoch": 2, - "version": "20080701", - "release": "26.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ivtv-firmware-20080701-26.el7.noarch.rpm", - "checksum": "sha256:d69952b6417c422f416fe3baddd49dec88a26cd826749961ee24b6721977a2ce" - }, - { - "name": "iwl100-firmware", - "epoch": 0, - "version": "39.31.5.1", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl100-firmware-39.31.5.1-79.el7.noarch.rpm", - "checksum": "sha256:12d3f2ca7449af3e3a3cff8be6b024cd1106987f49a7be16a84fa9bb39f2dde9" - }, - { - "name": "iwl1000-firmware", - "epoch": 1, - "version": "39.31.5.1", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl1000-firmware-39.31.5.1-79.el7.noarch.rpm", - "checksum": "sha256:7d15ad33bec7d5bdc64074edaecff6019f590069b5375de7640c7df7e8e3776d" - }, - { - "name": "iwl105-firmware", - "epoch": 0, - "version": "18.168.6.1", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl105-firmware-18.168.6.1-79.el7.noarch.rpm", - "checksum": "sha256:97dfbf353c370ee92b04a856a883255217528af0cfcbc9f234531efe71c043e6" - }, - { - "name": "iwl135-firmware", - "epoch": 0, - "version": "18.168.6.1", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl135-firmware-18.168.6.1-79.el7.noarch.rpm", - "checksum": "sha256:11ac559bb43266411c847e259a1bb111ee67b4fdc09c3d9dbf6e91094f815e0f" - }, - { - "name": "iwl2000-firmware", - "epoch": 0, - "version": "18.168.6.1", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl2000-firmware-18.168.6.1-79.el7.noarch.rpm", - "checksum": "sha256:12b098f5666193520fc84a092ce438a39f8c3ff53f7a7c4eee55e6515b49618c" - }, - { - "name": "iwl2030-firmware", - "epoch": 0, - "version": "18.168.6.1", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl2030-firmware-18.168.6.1-79.el7.noarch.rpm", - "checksum": "sha256:f4e8763f1a42799dbcbada6f3c7f7f0943c89d9f5369bb750ea067a6e7a5ce4b" - }, - { - "name": "iwl3160-firmware", - "epoch": 0, - "version": "25.30.13.0", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl3160-firmware-25.30.13.0-79.el7.noarch.rpm", - "checksum": "sha256:7e3edabd3ad60028285e194934644e087602c2440a672dc8c05996afb044ece4" - }, - { - "name": "iwl3945-firmware", - "epoch": 0, - "version": "15.32.2.9", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl3945-firmware-15.32.2.9-79.el7.noarch.rpm", - "checksum": "sha256:aced7b9842dab221f2ca286c7532c9342e81fff0df3f09c4f265ec3fa83d4ece" - }, - { - "name": "iwl4965-firmware", - "epoch": 0, - "version": "228.61.2.24", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl4965-firmware-228.61.2.24-79.el7.noarch.rpm", - "checksum": "sha256:0a6d71d0c1c1d14f2a6885734232dbe2a06ca6a958a9b81f06cef008e58769c8" - }, - { - "name": "iwl5000-firmware", - "epoch": 0, - "version": "8.83.5.1_1", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl5000-firmware-8.83.5.1_1-79.el7.noarch.rpm", - "checksum": "sha256:3da6456472355dc70e19cd3b5109a73b8f5c019bb7f24a6b17d7150314f07244" - }, - { - "name": "iwl5150-firmware", - "epoch": 0, - "version": "8.24.2.2", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl5150-firmware-8.24.2.2-79.el7.noarch.rpm", - "checksum": "sha256:66149f8d65c73e297a392cf33a8c40e570ae8b16667c29d7ce967adade27eb7a" - }, - { - "name": "iwl6000-firmware", - "epoch": 0, - "version": "9.221.4.1", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl6000-firmware-9.221.4.1-79.el7.noarch.rpm", - "checksum": "sha256:a37d2eeb9810427888dfe2eea1712441e0bb91e74f93d2166a8978a29f82ca98" - }, - { - "name": "iwl6000g2a-firmware", - "epoch": 0, - "version": "18.168.6.1", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl6000g2a-firmware-18.168.6.1-79.el7.noarch.rpm", - "checksum": "sha256:d866a841fa8afa3b5f4210f172d4eb78aafaa13b0de26ccbea708779fb746b14" - }, - { - "name": "iwl6000g2b-firmware", - "epoch": 0, - "version": "18.168.6.1", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl6000g2b-firmware-18.168.6.1-79.el7.noarch.rpm", - "checksum": "sha256:a3dc70cc6472c7eb9d1216acc144a6dceb48bdb69955f01b8585cd80ffdd538a" - }, - { - "name": "iwl6050-firmware", - "epoch": 0, - "version": "41.28.5.1", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl6050-firmware-41.28.5.1-79.el7.noarch.rpm", - "checksum": "sha256:0b4110cf94f7f793dbabb7a1a616087455ab316ec74ad5204abb0fd2f211ee58" - }, - { - "name": "iwl7260-firmware", - "epoch": 0, - "version": "25.30.13.0", - "release": "79.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl7260-firmware-25.30.13.0-79.el7.noarch.rpm", - "checksum": "sha256:33fba59c069f63b29ac955363d97683c582178f5e314d594c452b8a630a59170" - }, - { - "name": "jansson", - "epoch": 0, - "version": "2.10", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/jansson-2.10-1.el7.x86_64.rpm", - "checksum": "sha256:58ce6f65f4b61dfcb190deac65fca0cc210abfdae65b54a88ee5f61c61e3e47e" - }, - { - "name": "json-c", - "epoch": 0, - "version": "0.11", - "release": "4.el7_0", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/json-c-0.11-4.el7_0.x86_64.rpm", - "checksum": "sha256:12d0d9348fb55a9e518a45b63db83b95b1e6c9d54551aa0ec288199f03cce5cd" - }, - { - "name": "kbd", - "epoch": 0, - "version": "1.15.5", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kbd-1.15.5-15.el7.x86_64.rpm", - "checksum": "sha256:a82e52394f7d644bf930dae1994b190a219d0d8b39fd01b839d45384221bebf9" - }, - { - "name": "kbd-legacy", - "epoch": 0, - "version": "1.15.5", - "release": "15.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kbd-legacy-1.15.5-15.el7.noarch.rpm", - "checksum": "sha256:428980a728da6f965068bbee26e6b688ca03d1b88deb6a24e88e033a220fd79a" - }, - { - "name": "kbd-misc", - "epoch": 0, - "version": "1.15.5", - "release": "15.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kbd-misc-1.15.5-15.el7.noarch.rpm", - "checksum": "sha256:7874e2d46c36407202a69e6fe8a9cdeb6629c92675d420aa1bf865346d638d1f" - }, - { - "name": "kernel", - "epoch": 0, - "version": "3.10.0", - "release": "1160.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kernel-3.10.0-1160.el7.x86_64.rpm", - "checksum": "sha256:ca7bbd8e05c26a6152e8da8b176b92ea63fd1410967ea4643e4e271c084e1324" - }, - { - "name": "kernel-tools", - "epoch": 0, - "version": "3.10.0", - "release": "1160.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kernel-tools-3.10.0-1160.el7.x86_64.rpm", - "checksum": "sha256:c264f613eba75609c960c72ddaf52664c6b70fea1c5c7e87671d68d3bcf5fed6" - }, - { - "name": "kernel-tools-libs", - "epoch": 0, - "version": "3.10.0", - "release": "1160.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kernel-tools-libs-3.10.0-1160.el7.x86_64.rpm", - "checksum": "sha256:6d3236f8d4a36f1f96412831705b0ecb78dc4a7b3f80bb97a0e7a1a815734ba9" - }, - { - "name": "kexec-tools", - "epoch": 0, - "version": "2.0.15", - "release": "51.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kexec-tools-2.0.15-51.el7.x86_64.rpm", - "checksum": "sha256:5fe34f0b30d8ce28e407542bfc05c02837cf6ed7806475ce0d0298b26a5bb9fb" - }, - { - "name": "keyutils-libs", - "epoch": 0, - "version": "1.5.8", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/keyutils-libs-1.5.8-3.el7.x86_64.rpm", - "checksum": "sha256:68d0b20162b3e1e250d83e3d7a147ee6ad5c1ae282cce15421e734b5abd41add" - }, - { - "name": "kmod", - "epoch": 0, - "version": "20", - "release": "28.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kmod-20-28.el7.x86_64.rpm", - "checksum": "sha256:c86cc42ecd0a14b233fe81252c0c8abcba2b67e981a36179a711c9bb241479e4" - }, - { - "name": "kmod-libs", - "epoch": 0, - "version": "20", - "release": "28.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kmod-libs-20-28.el7.x86_64.rpm", - "checksum": "sha256:5016360d55f12a5548c1b504d8fdee0efb35eaf2b0815a3dc62afbba044cabc0" - }, - { - "name": "kpartx", - "epoch": 0, - "version": "0.4.9", - "release": "133.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/kpartx-0.4.9-133.el7.x86_64.rpm", - "checksum": "sha256:233f1262f771eac659f5e76524a701ff8993e738c462dd823f984d2b703ddfcb" - }, - { - "name": "krb5-libs", - "epoch": 0, - "version": "1.15.1", - "release": "50.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/krb5-libs-1.15.1-50.el7.x86_64.rpm", - "checksum": "sha256:0c75f4193a32541ca250fc4dc41754350bbea7ac64e3cb50bfde9aa2bc0d9473" - }, - { - "name": "less", - "epoch": 0, - "version": "458", - "release": "9.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/less-458-9.el7.x86_64.rpm", - "checksum": "sha256:d8c446ed36175a359ddc118ce65325253a5196772dd0a9f791fb8786c6423a2f" - }, - { - "name": "libacl", - "epoch": 0, - "version": "2.2.51", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libacl-2.2.51-15.el7.x86_64.rpm", - "checksum": "sha256:2a9bc37a1274ef0fd28a594bc83334b868bee0c87f19f5b413c8c81e2a43dddd" - }, - { - "name": "libaio", - "epoch": 0, - "version": "0.3.109", - "release": "13.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libaio-0.3.109-13.el7.x86_64.rpm", - "checksum": "sha256:bff924265c10c3e75cd5fadaf2e23910829a6e9f5482d4e43fb7c15e41eb48a0" - }, - { - "name": "libassuan", - "epoch": 0, - "version": "2.1.0", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libassuan-2.1.0-3.el7.x86_64.rpm", - "checksum": "sha256:0849869ef8adc05c8b90b93e3aaf1bac5afc4a1b1cc3efc594dceff96a123cf7" - }, - { - "name": "libattr", - "epoch": 0, - "version": "2.4.46", - "release": "13.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libattr-2.4.46-13.el7.x86_64.rpm", - "checksum": "sha256:17a04e5cd7d2514904b203126a4273d63fe87a2871efa75ace5be72b992bd1e8" - }, - { - "name": "libblkid", - "epoch": 0, - "version": "2.23.2", - "release": "65.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libblkid-2.23.2-65.el7.x86_64.rpm", - "checksum": "sha256:54d8d52e4ec61256417b3dd708ff88dea8c2c43db0dc588528e2f78ba55ca043" - }, - { - "name": "libcap", - "epoch": 0, - "version": "2.22", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libcap-2.22-11.el7.x86_64.rpm", - "checksum": "sha256:899714773ed68807327e4f73f5d8ee6088b5e1f35f5fb2cea737e54b90c2a461" - }, - { - "name": "libcap-ng", - "epoch": 0, - "version": "0.7.5", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libcap-ng-0.7.5-4.el7.x86_64.rpm", - "checksum": "sha256:37f2b2b3ed3c45ac0caa7c5410a357dbcaef6bdb671cb511a15c9c46523e82f1" - }, - { - "name": "libcom_err", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libcom_err-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:2e89845aa49ddf70e2cec55f857bb9229164a7a17fc83343f6a9786e4e037477" - }, - { - "name": "libcurl", - "epoch": 0, - "version": "7.29.0", - "release": "59.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libcurl-7.29.0-59.el7.x86_64.rpm", - "checksum": "sha256:a5ca0ac5ee32aa9c2ba4a02e37fb6cdb7d65df0a7df1a6b795c294b3ed6e242d" - }, - { - "name": "libdaemon", - "epoch": 0, - "version": "0.14", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libdaemon-0.14-7.el7.x86_64.rpm", - "checksum": "sha256:827757b21e2a88b67e7991f003dd30afd778ee94d966d1d91619b05ba4f801fe" - }, - { - "name": "libdb", - "epoch": 0, - "version": "5.3.21", - "release": "25.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libdb-5.3.21-25.el7.x86_64.rpm", - "checksum": "sha256:6a778b6a2091b427b4196d704d00a92e47e8269d32eaa222c2c0e359e8394e8f" - }, - { - "name": "libdb-utils", - "epoch": 0, - "version": "5.3.21", - "release": "25.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libdb-utils-5.3.21-25.el7.x86_64.rpm", - "checksum": "sha256:a6bd2f5457433ca2c45146aa547eec6642870bebb3e96ef75bed4d73fb246f32" - }, - { - "name": "libdrm", - "epoch": 0, - "version": "2.4.97", - "release": "2.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libdrm-2.4.97-2.el7.x86_64.rpm", - "checksum": "sha256:bb7b02048bc98c2f62e62ce67f36eb54cfcbf53f763ea0cd557053d20b2a2682" - }, - { - "name": "libedit", - "epoch": 0, - "version": "3.0", - "release": "12.20121213cvs.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libedit-3.0-12.20121213cvs.el7.x86_64.rpm", - "checksum": "sha256:2a7721ccbaf5d43e1a813b267053fd38831f9aeb9c4eb8d8efb25c947082a1aa" - }, - { - "name": "libestr", - "epoch": 0, - "version": "0.1.9", - "release": "2.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libestr-0.1.9-2.el7.x86_64.rpm", - "checksum": "sha256:abab0980f49ec78b8a784bd20593f1d6aa6ec7f9a11575439542c47dc9524278" - }, - { - "name": "libfastjson", - "epoch": 0, - "version": "0.99.4", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libfastjson-0.99.4-3.el7.x86_64.rpm", - "checksum": "sha256:a8b52c16775143c98927e81c56104d0ee422e05d8de72099f190f713af8ad027" - }, - { - "name": "libffi", - "epoch": 0, - "version": "3.0.13", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libffi-3.0.13-19.el7.x86_64.rpm", - "checksum": "sha256:04d6ccafb0a07e09cef1312a6a892e4d3365b9a71b265f7afa5fc96303067af3" - }, - { - "name": "libgcc", - "epoch": 0, - "version": "4.8.5", - "release": "44.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libgcc-4.8.5-44.el7.x86_64.rpm", - "checksum": "sha256:23682b13bb03b7441413d2ba85bc26046fe836162049a92e6389ca57d729e020" - }, - { - "name": "libgcrypt", - "epoch": 0, - "version": "1.5.3", - "release": "14.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libgcrypt-1.5.3-14.el7.x86_64.rpm", - "checksum": "sha256:4905d8ba3634b4fe5ece50dfa31afb52cb1815a7ffdc4ea7d8bddfb8189aa299" - }, - { - "name": "libgpg-error", - "epoch": 0, - "version": "1.12", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libgpg-error-1.12-3.el7.x86_64.rpm", - "checksum": "sha256:85b53f4c3206f7f7f171a85444c835fea90f4b09ab17734bc08bb20feac305f4" - }, - { - "name": "libgudev1", - "epoch": 0, - "version": "219", - "release": "78.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libgudev1-219-78.el7.x86_64.rpm", - "checksum": "sha256:9bfc868c97a1998e18e7ff32657478d895e87a2d1d919ffeca60a4e9dc5cec43" - }, - { - "name": "libical", - "epoch": 0, - "version": "3.0.3", - "release": "2.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libical-3.0.3-2.el7.x86_64.rpm", - "checksum": "sha256:72e259b72e9345c09d6d06056fd93f8ea31c10cd69e78c95899f44a8777a04b5" - }, - { - "name": "libicu", - "epoch": 0, - "version": "50.2", - "release": "4.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libicu-50.2-4.el7_7.x86_64.rpm", - "checksum": "sha256:9b8a185b88e6d414b5d744aabd5817950d112a8f351bff3c2a01b1ab2b766b1e" - }, - { - "name": "libidn", - "epoch": 0, - "version": "1.28", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libidn-1.28-4.el7.x86_64.rpm", - "checksum": "sha256:cff44fe84d096c0e6f082cb622f17149c3edde1421b32192307ef713d1f64790" - }, - { - "name": "libmnl", - "epoch": 0, - "version": "1.0.3", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libmnl-1.0.3-7.el7.x86_64.rpm", - "checksum": "sha256:28b57683dc8c1843ce1d28b92ddf3f68e997717e3184e2ae629ceb3a81acf05d" - }, - { - "name": "libmount", - "epoch": 0, - "version": "2.23.2", - "release": "65.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libmount-2.23.2-65.el7.x86_64.rpm", - "checksum": "sha256:9908abc99788aa3e371c54a89d7236e9edd66ff7e8bc9b9f2cf4732ca86b4785" - }, - { - "name": "libndp", - "epoch": 0, - "version": "1.2", - "release": "9.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libndp-1.2-9.el7.x86_64.rpm", - "checksum": "sha256:7567202eb027a1efb739092a6204307d735db326cf92a2c979201e36d841a284" - }, - { - "name": "libnetfilter_conntrack", - "epoch": 0, - "version": "1.0.6", - "release": "1.el7_3", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libnetfilter_conntrack-1.0.6-1.el7_3.x86_64.rpm", - "checksum": "sha256:eb71af5a9b4665611dbd3cd17ecaa3437c2ad0961f40ff743fcf2fa7292cff05" - }, - { - "name": "libnfnetlink", - "epoch": 0, - "version": "1.0.1", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libnfnetlink-1.0.1-4.el7.x86_64.rpm", - "checksum": "sha256:cfe92193511248e70f151a48715424f45dee559b3420d2930c266bd93d58fd06" - }, - { - "name": "libnl", - "epoch": 0, - "version": "1.1.4", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libnl-1.1.4-3.el7.x86_64.rpm", - "checksum": "sha256:d7ee2c5b5fda494b492a8c9e04b0ec06b24521d9debea706e0a3af8c716d9ea2" - }, - { - "name": "libnl3", - "epoch": 0, - "version": "3.2.28", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libnl3-3.2.28-4.el7.x86_64.rpm", - "checksum": "sha256:2e56f3449308538a955393ca85e4908d9022885fa34894cb365669b9d38de282" - }, - { - "name": "libnl3-cli", - "epoch": 0, - "version": "3.2.28", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libnl3-cli-3.2.28-4.el7.x86_64.rpm", - "checksum": "sha256:535aec9847767995152b43de3f8323e53c7c36decf894ca6e426742fb1507322" - }, - { - "name": "libpciaccess", - "epoch": 0, - "version": "0.14", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libpciaccess-0.14-1.el7.x86_64.rpm", - "checksum": "sha256:aeb22ef9ac260054a3641602a021740b6d0985cbddc60bc00ce2b3279017ca1c" - }, - { - "name": "libpipeline", - "epoch": 0, - "version": "1.2.3", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libpipeline-1.2.3-3.el7.x86_64.rpm", - "checksum": "sha256:776c8e0ba56567e1fa9f9295afd305563ccc28d139ac2bfe04eb61a57a2d78a3" - }, - { - "name": "libpwquality", - "epoch": 0, - "version": "1.2.3", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libpwquality-1.2.3-5.el7.x86_64.rpm", - "checksum": "sha256:399631dd617fa4bc2ace90712b2e688fbbeea766286650bbbc019174c402475c" - }, - { - "name": "libseccomp", - "epoch": 0, - "version": "2.3.1", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libseccomp-2.3.1-4.el7.x86_64.rpm", - "checksum": "sha256:da67098eeba3936506e2fcd15e5332d4afffe37e31b97f9170bea8ce9ceafd76" - }, - { - "name": "libselinux", - "epoch": 0, - "version": "2.5", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libselinux-2.5-15.el7.x86_64.rpm", - "checksum": "sha256:207150c3207f1d5af39c66faf06b6578d80c880917525a0917111a0087fdeeee" - }, - { - "name": "libselinux-python", - "epoch": 0, - "version": "2.5", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libselinux-python-2.5-15.el7.x86_64.rpm", - "checksum": "sha256:60611444e46c1bf76261901a52f29dde5a4c0dc1d4b6916333b94563a074c86c" - }, - { - "name": "libselinux-utils", - "epoch": 0, - "version": "2.5", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libselinux-utils-2.5-15.el7.x86_64.rpm", - "checksum": "sha256:75dba0c8b4ee186c0729b41b56679e3b60df02144a3d5a043a44133aa4d2c0f3" - }, - { - "name": "libsemanage", - "epoch": 0, - "version": "2.5", - "release": "14.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libsemanage-2.5-14.el7.x86_64.rpm", - "checksum": "sha256:863368533ab642f516054ac4f6a5368f8995229d1ad808478b5bf03d0c69472b" - }, - { - "name": "libsepol", - "epoch": 0, - "version": "2.5", - "release": "10.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libsepol-2.5-10.el7.x86_64.rpm", - "checksum": "sha256:37942df220318ac6c91049adabaefe854ad9f83845907352aad7d66045f64b02" - }, - { - "name": "libsmartcols", - "epoch": 0, - "version": "2.23.2", - "release": "65.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libsmartcols-2.23.2-65.el7.x86_64.rpm", - "checksum": "sha256:a0047e1ed0eb51fc41a74096559cfe67f1c01fa01cf668709ae54524db7cf414" - }, - { - "name": "libss", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libss-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:c094fe217ef92710bea79c4060c127e585a72bbf0cfba61697cbb488adcc8a7e" - }, - { - "name": "libssh2", - "epoch": 0, - "version": "1.8.0", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libssh2-1.8.0-4.el7.x86_64.rpm", - "checksum": "sha256:4a9ac18573b971d88bd2acefbcc6cfad01c986d04b4b88ed705ae019b6a653a3" - }, - { - "name": "libstdc++", - "epoch": 0, - "version": "4.8.5", - "release": "44.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libstdc++-4.8.5-44.el7.x86_64.rpm", - "checksum": "sha256:9048a971753ff997aeebc363a7d07e4c4d9dfbf32bfc7698bc9ea0aacfc7bfae" - }, - { - "name": "libsysfs", - "epoch": 0, - "version": "2.1.0", - "release": "16.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libsysfs-2.1.0-16.el7.x86_64.rpm", - "checksum": "sha256:a8e89f879bf0574031e19f285ff52c36f340b090bf3a7b4ba483dc7686795436" - }, - { - "name": "libtasn1", - "epoch": 0, - "version": "4.10", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libtasn1-4.10-1.el7.x86_64.rpm", - "checksum": "sha256:0522ab1034c4202c3ad9ff36807e55814ac366a4aac27a034b30b522cd4aeca9" - }, - { - "name": "libteam", - "epoch": 0, - "version": "1.29", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libteam-1.29-3.el7.x86_64.rpm", - "checksum": "sha256:93503e6622050a007698e4649903b26f7c76b207461c5e97c9215437a33b031f" - }, - { - "name": "libuser", - "epoch": 0, - "version": "0.60", - "release": "9.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libuser-0.60-9.el7.x86_64.rpm", - "checksum": "sha256:70244d0073f3e4a4fed3a0f64b1db29c3adc15e69ba953ed253e2719ffa6770d" - }, - { - "name": "libutempter", - "epoch": 0, - "version": "1.1.6", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libutempter-1.1.6-4.el7.x86_64.rpm", - "checksum": "sha256:921caeefffe3e048ad3adf874e60da4126487c16c1278997ffbc169c3fb47b14" - }, - { - "name": "libuuid", - "epoch": 0, - "version": "2.23.2", - "release": "65.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libuuid-2.23.2-65.el7.x86_64.rpm", - "checksum": "sha256:d36f82cb917ef79e1461704027a1fa97deeaf97fdeaacdb8882a1b6bebeba4fe" - }, - { - "name": "libverto", - "epoch": 0, - "version": "0.2.5", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libverto-0.2.5-4.el7.x86_64.rpm", - "checksum": "sha256:ce2064e2a37929695ef045837bb7ea158ac6c33230874c956305d71da6ef3660" - }, - { - "name": "libxml2", - "epoch": 0, - "version": "2.9.1", - "release": "6.el7.5", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libxml2-2.9.1-6.el7.5.x86_64.rpm", - "checksum": "sha256:dac2ae10dbb0a09a7e6bd341044dfab1e63d8773c9b7582cbf2d40937180f7b0" - }, - { - "name": "libxml2-python", - "epoch": 0, - "version": "2.9.1", - "release": "6.el7.5", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libxml2-python-2.9.1-6.el7.5.x86_64.rpm", - "checksum": "sha256:80106cfbeb0b71d337022a01df8acc9dc4fc3205124be3db511ccf2d0b10c7c2" - }, - { - "name": "libxslt", - "epoch": 0, - "version": "1.1.28", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libxslt-1.1.28-6.el7.x86_64.rpm", - "checksum": "sha256:ed3ec37460ed09d2ead9117dc16ddaa9747f2aecaedf6c5c496ea1d2fbb03cf2" - }, - { - "name": "linux-firmware", - "epoch": 0, - "version": "20200421", - "release": "79.git78c0348.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/linux-firmware-20200421-79.git78c0348.el7.noarch.rpm", - "checksum": "sha256:9385bd952947ac44a78ed8652ac72eda744ff4fd16643f572deb099cba5ce91b" - }, - { - "name": "logrotate", - "epoch": 0, - "version": "3.8.6", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/logrotate-3.8.6-19.el7.x86_64.rpm", - "checksum": "sha256:4607af33521aa996fac231f33a2cdd4803c57d421115ec246c61291aed84c35b" - }, - { - "name": "lshw", - "epoch": 0, - "version": "B.02.18", - "release": "17.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lshw-B.02.18-17.el7.x86_64.rpm", - "checksum": "sha256:1e34f348448890f16458dff676697b311e4bd3ff4ac463b643b32edad7106d3b" - }, - { - "name": "lsscsi", - "epoch": 0, - "version": "0.27", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lsscsi-0.27-6.el7.x86_64.rpm", - "checksum": "sha256:ea6c84fe12b97fb5511ffee78b31a8ffb0444fd41da21932503568df14a95e98" - }, - { - "name": "lua", - "epoch": 0, - "version": "5.1.4", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lua-5.1.4-15.el7.x86_64.rpm", - "checksum": "sha256:f2ee3238762ee4b1917cb7ed5d5e064dbae4d1804bdb65bd4bf6c56b785f8836" - }, - { - "name": "lvm2", - "epoch": 7, - "version": "2.02.187", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lvm2-2.02.187-6.el7.x86_64.rpm", - "checksum": "sha256:8eab91b478d945b5992f5676754d1ca0f124bcee584de99e74bef3ed62a4a859" - }, - { - "name": "lvm2-libs", - "epoch": 7, - "version": "2.02.187", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lvm2-libs-2.02.187-6.el7.x86_64.rpm", - "checksum": "sha256:1a9ca0f47677eab3e6ce4e98823cc29d2968d058b365d8c65f724f2c067ed14d" - }, - { - "name": "lz4", - "epoch": 0, - "version": "1.8.3", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lz4-1.8.3-1.el7.x86_64.rpm", - "checksum": "sha256:547b7bb1b7791f9972f82f88c9931b9c754ad64a8113b733d6515b6edd1b970c" - }, - { - "name": "lzo", - "epoch": 0, - "version": "2.06", - "release": "8.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lzo-2.06-8.el7.x86_64.rpm", - "checksum": "sha256:e867bd069a2e0d07b07593a6961cd7230817f92931219b355feff868d6a1ced0" - }, - { - "name": "m2crypto", - "epoch": 0, - "version": "0.21.1", - "release": "17.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/m2crypto-0.21.1-17.el7.x86_64.rpm", - "checksum": "sha256:e06f9c964c16c8a1a5e556864a9d5c998369ed1b528d6331b48e517fe99c3187" - }, - { - "name": "man-db", - "epoch": 0, - "version": "2.6.3", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/man-db-2.6.3-11.el7.x86_64.rpm", - "checksum": "sha256:f227220f40dc32bf96941a62628fd2ad692dea3667bf28a6d6e2fed4992382b2" - }, - { - "name": "mariadb-libs", - "epoch": 1, - "version": "5.5.68", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/mariadb-libs-5.5.68-1.el7.x86_64.rpm", - "checksum": "sha256:33ff255b4c74d2ccb58bd1efa5f8f9928a108fefea9cc9831db764bf0aa1f644" - }, - { - "name": "microcode_ctl", - "epoch": 2, - "version": "2.1", - "release": "73.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/microcode_ctl-2.1-73.el7.x86_64.rpm", - "checksum": "sha256:e7e5c3c4297d3002321a4bbc0e029972059a23a6835721aad84c836bb4e8dda0" - }, - { - "name": "mozjs17", - "epoch": 0, - "version": "17.0.0", - "release": "20.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/mozjs17-17.0.0-20.el7.x86_64.rpm", - "checksum": "sha256:a2d948620a42eea5a00c2e859366b3d3a14a1577d5e598b00dfb742aa2c3ee54" - }, - { - "name": "ncurses", - "epoch": 0, - "version": "5.9", - "release": "14.20130511.el7_4", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ncurses-5.9-14.20130511.el7_4.x86_64.rpm", - "checksum": "sha256:936a7e2f7995baf47cbc485d4112e790d81e9fa28f0393551e52d12746842a31" - }, - { - "name": "ncurses-base", - "epoch": 0, - "version": "5.9", - "release": "14.20130511.el7_4", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ncurses-base-5.9-14.20130511.el7_4.noarch.rpm", - "checksum": "sha256:0e1e6a4125d13f1ddaa5a84df882c0bc4c3f5376dd854300589254c4a4e86ae1" - }, - { - "name": "ncurses-libs", - "epoch": 0, - "version": "5.9", - "release": "14.20130511.el7_4", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ncurses-libs-5.9-14.20130511.el7_4.x86_64.rpm", - "checksum": "sha256:236e8b3ac8d8adfa9879c6a8dbdc161e7249dc82359ba778c9044c4d15b35d70" - }, - { - "name": "newt", - "epoch": 0, - "version": "0.52.15", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/newt-0.52.15-4.el7.x86_64.rpm", - "checksum": "sha256:6709447ee9542d56cfff47f3fbcd54739af451aea45beb6a0a74b6e01dcd8087" - }, - { - "name": "newt-python", - "epoch": 0, - "version": "0.52.15", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/newt-python-0.52.15-4.el7.x86_64.rpm", - "checksum": "sha256:1f064dd0cd7373658b90056452124b14ae49617530319e0d8446dc8645d97efb" - }, - { - "name": "nspr", - "epoch": 0, - "version": "4.21.0", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nspr-4.21.0-1.el7.x86_64.rpm", - "checksum": "sha256:d6a1658cd8506c820334d9ff9b37515153fd3f0921710c6b0ba232d994cf0928" - }, - { - "name": "nss", - "epoch": 0, - "version": "3.44.0", - "release": "7.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-3.44.0-7.el7_7.x86_64.rpm", - "checksum": "sha256:494d4861f429cb413db6fefda7ba0d86d54db5684bba34dfd0e111732ef2d6ef" - }, - { - "name": "nss-pem", - "epoch": 0, - "version": "1.0.3", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-pem-1.0.3-7.el7.x86_64.rpm", - "checksum": "sha256:728834a32b4fe0645fc53f094d243d26aa98baa514fb704bda0760204779638b" - }, - { - "name": "nss-softokn", - "epoch": 0, - "version": "3.44.0", - "release": "8.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-softokn-3.44.0-8.el7_7.x86_64.rpm", - "checksum": "sha256:a4c288bf1d3475008236df696953dab9ca6bbfcebe8ff2e052024ae57fdc0096" - }, - { - "name": "nss-softokn-freebl", - "epoch": 0, - "version": "3.44.0", - "release": "8.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-softokn-freebl-3.44.0-8.el7_7.x86_64.rpm", - "checksum": "sha256:4cc68a15a41483e29fbfe85829f26fedaddf9e19fe7c8673c499596f9b06103b" - }, - { - "name": "nss-sysinit", - "epoch": 0, - "version": "3.44.0", - "release": "7.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-sysinit-3.44.0-7.el7_7.x86_64.rpm", - "checksum": "sha256:4a56cbf131d5416e594f70b158fc21540bd98e3a50b74cd714f66ab2fda85db8" - }, - { - "name": "nss-tools", - "epoch": 0, - "version": "3.44.0", - "release": "7.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-tools-3.44.0-7.el7_7.x86_64.rpm", - "checksum": "sha256:09f84377bb5398797c3b4d0a05b42aea85fa00892128e150ed54c0b2ccc3d78b" - }, - { - "name": "nss-util", - "epoch": 0, - "version": "3.44.0", - "release": "4.el7_7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nss-util-3.44.0-4.el7_7.x86_64.rpm", - "checksum": "sha256:596d946cd8d35332795898be6ce8b4e4b0dc2f65c151f673e1ca51b8489a7d43" - }, - { - "name": "numactl-libs", - "epoch": 0, - "version": "2.0.12", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/numactl-libs-2.0.12-5.el7.x86_64.rpm", - "checksum": "sha256:bd4df28dbd6928faf3bc3bb48de9c511cf623c78d95c0af7cc4cdb5b1818ea7a" - }, - { - "name": "openldap", - "epoch": 0, - "version": "2.4.44", - "release": "22.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/openldap-2.4.44-22.el7.x86_64.rpm", - "checksum": "sha256:1301457e09b0dbcd96d150d374829cad731faa3f9f9f6dbfa2cbff53740096a8" - }, - { - "name": "openssh", - "epoch": 0, - "version": "7.4p1", - "release": "21.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/openssh-7.4p1-21.el7.x86_64.rpm", - "checksum": "sha256:290ccc1f3e22a77ce692e451a70d7483a358b38358f908b622e85ce93b9d12db" - }, - { - "name": "openssh-clients", - "epoch": 0, - "version": "7.4p1", - "release": "21.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/openssh-clients-7.4p1-21.el7.x86_64.rpm", - "checksum": "sha256:364fdd8fbeafbc36f07ba45d00a5f556a39f0386ee075ef00b9203dc496baf81" - }, - { - "name": "openssh-server", - "epoch": 0, - "version": "7.4p1", - "release": "21.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/openssh-server-7.4p1-21.el7.x86_64.rpm", - "checksum": "sha256:d4b2de8f877b5c86b4c6751fbfba32d805bff4ecbb6183831888c833fb1af967" - }, - { - "name": "openssl-libs", - "epoch": 1, - "version": "1.0.2k", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/openssl-libs-1.0.2k-19.el7.x86_64.rpm", - "checksum": "sha256:33b01edf15778994adee406ccb92221bb93c9076322443dde2922b758deebaac" - }, - { - "name": "p11-kit", - "epoch": 0, - "version": "0.23.5", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/p11-kit-0.23.5-3.el7.x86_64.rpm", - "checksum": "sha256:532c25b0c5b732c51ebf3fc0f363e9d72955a6c10b98752bbb321f914c87cb28" - }, - { - "name": "p11-kit-trust", - "epoch": 0, - "version": "0.23.5", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/p11-kit-trust-0.23.5-3.el7.x86_64.rpm", - "checksum": "sha256:26f1c092476e34c290350487f2229305a97aebdc0b096d6ca12ecae645c6416f" - }, - { - "name": "pam", - "epoch": 0, - "version": "1.1.8", - "release": "23.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pam-1.1.8-23.el7.x86_64.rpm", - "checksum": "sha256:b0039bb73308f9af0562d7bfeb17d72d1e07a21f786eeed31e6470fb27476630" - }, - { - "name": "parted", - "epoch": 0, - "version": "3.1", - "release": "32.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/parted-3.1-32.el7.x86_64.rpm", - "checksum": "sha256:222a97490d294758676db9ae9a0aca5684627a2750561aecf4d073f2849dd4bb" - }, - { - "name": "passwd", - "epoch": 0, - "version": "0.79", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/passwd-0.79-6.el7.x86_64.rpm", - "checksum": "sha256:21224107f63cbbb08284a5d99c01f85041b455474de2a7e0475702d6dc34b1af" - }, - { - "name": "pciutils-libs", - "epoch": 0, - "version": "3.5.1", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pciutils-libs-3.5.1-3.el7.x86_64.rpm", - "checksum": "sha256:6a3c0f268e554bde444aba8f4ff5b4d09ff42f17f5f27c32843396dd9d1b1310" - }, - { - "name": "pcre", - "epoch": 0, - "version": "8.32", - "release": "17.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pcre-8.32-17.el7.x86_64.rpm", - "checksum": "sha256:61d51059a91e227d71ce1ed0a787797b740dbb80cc5d4aab9812cd3248178713" - }, - { - "name": "pcre2", - "epoch": 0, - "version": "10.23", - "release": "2.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pcre2-10.23-2.el7.x86_64.rpm", - "checksum": "sha256:ede1b4844bd8038e385b9fcf59e7b8ef7063a52600ab2e79cb56a1094ba4d19d" - }, - { - "name": "pinentry", - "epoch": 0, - "version": "0.8.1", - "release": "17.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pinentry-0.8.1-17.el7.x86_64.rpm", - "checksum": "sha256:f6b628ad8e07ea56d5dd75453611d680b959de24f3ea5552f6968d5282bce349" - }, - { - "name": "pkgconfig", - "epoch": 1, - "version": "0.27.1", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pkgconfig-0.27.1-4.el7.x86_64.rpm", - "checksum": "sha256:b043d16e3d62f62e7589e93dfc0cebee5753d8f8ea225c0682e1fbeea5f1985a" - }, - { - "name": "plymouth", - "epoch": 0, - "version": "0.8.9", - "release": "0.34.20140113.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/plymouth-0.8.9-0.34.20140113.el7.x86_64.rpm", - "checksum": "sha256:4dc9a401c2514336e46adc87f5d05244ca743eb08bf6bcab1443a9eba6b81970" - }, - { - "name": "plymouth-core-libs", - "epoch": 0, - "version": "0.8.9", - "release": "0.34.20140113.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/plymouth-core-libs-0.8.9-0.34.20140113.el7.x86_64.rpm", - "checksum": "sha256:77a55f2182769815d41519b53ca15b54aa09cbe48249cd91487a091e81fdd7c2" - }, - { - "name": "plymouth-scripts", - "epoch": 0, - "version": "0.8.9", - "release": "0.34.20140113.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/plymouth-scripts-0.8.9-0.34.20140113.el7.x86_64.rpm", - "checksum": "sha256:19f7ca6bf9d8e762c376d0d8b52e2982e900a3d3e5fe7d3f095d1b27f4ab95aa" - }, - { - "name": "policycoreutils", - "epoch": 0, - "version": "2.5", - "release": "34.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/policycoreutils-2.5-34.el7.x86_64.rpm", - "checksum": "sha256:b63d899b20f7c113f17bb3815efaf12fb275b6ac6e0a73a8e11d885fd06c414e" - }, - { - "name": "polkit", - "epoch": 0, - "version": "0.112", - "release": "26.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/polkit-0.112-26.el7.x86_64.rpm", - "checksum": "sha256:f9850f761d7ba6d0e2b4a9b9270e17ae472a3ce05eaaa7ea09be5e8b30ffbe11" - }, - { - "name": "polkit-pkla-compat", - "epoch": 0, - "version": "0.1", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/polkit-pkla-compat-0.1-4.el7.x86_64.rpm", - "checksum": "sha256:b7e5197b32c1d34996937e190ab08daebccf3875a8ab460c729df7165a02b6fe" - }, - { - "name": "popt", - "epoch": 0, - "version": "1.13", - "release": "16.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/popt-1.13-16.el7.x86_64.rpm", - "checksum": "sha256:28e81ba93e4ba3f95d28850e26991200f1ec9f94e4a8a92279c885d9c1444115" - }, - { - "name": "postfix", - "epoch": 2, - "version": "2.10.1", - "release": "9.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/postfix-2.10.1-9.el7.x86_64.rpm", - "checksum": "sha256:cd3fbcae070f273060b79e5b16b831eb2342686ed56b33c62b3e65d8b8f9504d" - }, - { - "name": "procps-ng", - "epoch": 0, - "version": "3.3.10", - "release": "28.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/procps-ng-3.3.10-28.el7.x86_64.rpm", - "checksum": "sha256:6587e5219f2ca2677e91abeceaa3e9c700b56108f395360f15ea84bffe118e4c" - }, - { - "name": "pth", - "epoch": 0, - "version": "2.0.7", - "release": "23.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pth-2.0.7-23.el7.x86_64.rpm", - "checksum": "sha256:c7a614c7c472f428f309adc2edc0b1bf055c2d22d4d69eb63bdd9598f9fe47ae" - }, - { - "name": "pyOpenSSL", - "epoch": 0, - "version": "0.13.1", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pyOpenSSL-0.13.1-4.el7.x86_64.rpm", - "checksum": "sha256:0e48bed2d46de70c6afcffd02cd282c20c7ced7508d0b8ec69d4c93976639ea8" - }, - { - "name": "pygobject2", - "epoch": 0, - "version": "2.28.6", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pygobject2-2.28.6-11.el7.x86_64.rpm", - "checksum": "sha256:b5bfd94252d1a853d2a2c55a22c30e736ea90c115b93d75cbdf855a7fdd39ea3" - }, - { - "name": "pygpgme", - "epoch": 0, - "version": "0.3", - "release": "9.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pygpgme-0.3-9.el7.x86_64.rpm", - "checksum": "sha256:5c9922798c80f495e698799ba7f5175a8de1be142dde20a80c1098966cc6cc18" - }, - { - "name": "pyliblzma", - "epoch": 0, - "version": "0.5.3", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pyliblzma-0.5.3-11.el7.x86_64.rpm", - "checksum": "sha256:090919c1cadabe7b863a184c9f079e8e883f632f3c9a5a12a7e9ef6be092c492" - }, - { - "name": "python", - "epoch": 0, - "version": "2.7.5", - "release": "89.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-2.7.5-89.el7.x86_64.rpm", - "checksum": "sha256:6d080d91f510a1af96e523be25a3355344721af038d95aad5d1a3cec139c951c" - }, - { - "name": "python-configobj", - "epoch": 0, - "version": "4.7.2", - "release": "7.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-configobj-4.7.2-7.el7.noarch.rpm", - "checksum": "sha256:4e04cab11080f1ebc9b6003ed993a55dbf4db1c6dcc8dad75e3b2e124f768415" - }, - { - "name": "python-decorator", - "epoch": 0, - "version": "3.4.0", - "release": "3.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-decorator-3.4.0-3.el7.noarch.rpm", - "checksum": "sha256:047500594382798561653d0b20408180ee9de108330b00abb3812ae35d70930b" - }, - { - "name": "python-dmidecode", - "epoch": 0, - "version": "3.12.2", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-dmidecode-3.12.2-4.el7.x86_64.rpm", - "checksum": "sha256:2bba49f3d27655dc966ac46c92773a61b06ba05e039c76b26622513d613acc69" - }, - { - "name": "python-ethtool", - "epoch": 0, - "version": "0.8", - "release": "8.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-ethtool-0.8-8.el7.x86_64.rpm", - "checksum": "sha256:be68fe77c5c5abbaac3734d520a5056f0752e35eb5c911cd85c34088bd99888e" - }, - { - "name": "python-firewall", - "epoch": 0, - "version": "0.6.3", - "release": "11.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-firewall-0.6.3-11.el7.noarch.rpm", - "checksum": "sha256:01bf7678344452ca4b3b0ade1854abb72ac5f64728d38f4c0107077e56d5a822" - }, - { - "name": "python-gobject-base", - "epoch": 0, - "version": "3.22.0", - "release": "1.el7_4.1", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-gobject-base-3.22.0-1.el7_4.1.x86_64.rpm", - "checksum": "sha256:67c1c7ddb6cd30db4a615aada6c5ffde8b633af490c2325ed74afa786116c2e2" - }, - { - "name": "python-gudev", - "epoch": 0, - "version": "147.2", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-gudev-147.2-7.el7.x86_64.rpm", - "checksum": "sha256:0fd5ecd7d98b8200431fbef4833c073dc69694b4d7a36ab9f71f32b70f9de487" - }, - { - "name": "python-hwdata", - "epoch": 0, - "version": "1.7.3", - "release": "4.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-hwdata-1.7.3-4.el7.noarch.rpm", - "checksum": "sha256:fe7d54ab5e4e85e10c1293081967d4400f20a93ec0c67dadd64b08790efaaed6" - }, - { - "name": "python-iniparse", - "epoch": 0, - "version": "0.4", - "release": "9.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-iniparse-0.4-9.el7.noarch.rpm", - "checksum": "sha256:9a65bb88497d256159ea07e4c5fe140421c4cab7a311319bd0b2df029e2a5b03" - }, - { - "name": "python-inotify", - "epoch": 0, - "version": "0.9.4", - "release": "4.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-inotify-0.9.4-4.el7.noarch.rpm", - "checksum": "sha256:f2994162ef1ef4713b9bb2e05bb208290fd88250df1f049663b1dfc24efe0eda" - }, - { - "name": "python-ipaddr", - "epoch": 0, - "version": "2.1.11", - "release": "2.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-ipaddr-2.1.11-2.el7.noarch.rpm", - "checksum": "sha256:bb750fe8ff5ce9a7a6e56c681c63f000e8d973b3ab87740eb56cde9ce0721bb8" - }, - { - "name": "python-libs", - "epoch": 0, - "version": "2.7.5", - "release": "89.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-libs-2.7.5-89.el7.x86_64.rpm", - "checksum": "sha256:d57f9d7387c282c5f5dd86e4bb5c8718fa4405a3a596c63b3da1d2e8f14ef84f" - }, - { - "name": "python-linux-procfs", - "epoch": 0, - "version": "0.4.11", - "release": "4.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-linux-procfs-0.4.11-4.el7.noarch.rpm", - "checksum": "sha256:6c14c09e9a1287b07f62607f2d53259d850cd2bd6ee5f73cf2befac63fc2f6ff" - }, - { - "name": "python-lxml", - "epoch": 0, - "version": "3.2.1", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-lxml-3.2.1-4.el7.x86_64.rpm", - "checksum": "sha256:571f921ab7697888c5d0ba75a5e5dde5f674d7c344b0085ab43c0ef148c5d2be" - }, - { - "name": "python-magic", - "epoch": 0, - "version": "5.11", - "release": "37.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-magic-5.11-37.el7.noarch.rpm", - "checksum": "sha256:ee30a75a354783680bc6d46f8bdf3b2e18c7241d5af2d48abb150ca924b744bc" - }, - { - "name": "python-perf", - "epoch": 0, - "version": "3.10.0", - "release": "1160.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-perf-3.10.0-1160.el7.x86_64.rpm", - "checksum": "sha256:8da1f1e2007d98f395befb666f18f9e26ab3009f638a566b985615b22e14fe13" - }, - { - "name": "python-pycurl", - "epoch": 0, - "version": "7.19.0", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-pycurl-7.19.0-19.el7.x86_64.rpm", - "checksum": "sha256:feff1a3d7b76871cf7dc0d8c94c8d2911a094d9d58155808da1debce19f40ee4" - }, - { - "name": "python-pyudev", - "epoch": 0, - "version": "0.15", - "release": "9.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-pyudev-0.15-9.el7.noarch.rpm", - "checksum": "sha256:5ef4bbfe39568843c5bd64942183d10bc11db265c4eb7a067ec8063814c5d174" - }, - { - "name": "python-schedutils", - "epoch": 0, - "version": "0.4", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-schedutils-0.4-6.el7.x86_64.rpm", - "checksum": "sha256:7f9376eac090765ae29166a5da1ca08c9571f492e8603cc13d2cce5786affb06" - }, - { - "name": "python-slip", - "epoch": 0, - "version": "0.4.0", - "release": "4.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-slip-0.4.0-4.el7.noarch.rpm", - "checksum": "sha256:b449b7f89b8ffbaf72bf66e1b3c9c0e215faaacaca33b69bca5d44aeedaa6d20" - }, - { - "name": "python-slip-dbus", - "epoch": 0, - "version": "0.4.0", - "release": "4.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-slip-dbus-0.4.0-4.el7.noarch.rpm", - "checksum": "sha256:aaf24de9d4bb53663cfd848dbf458ffd4b0a5e55321d07251cce24cf386d1982" - }, - { - "name": "python-syspurpose", - "epoch": 0, - "version": "1.24.42", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-syspurpose-1.24.42-1.el7.x86_64.rpm", - "checksum": "sha256:32b70de1b779e3f551d8b00c0f0031c84725139f1f5f398ba80053f9c96a08a2" - }, - { - "name": "python-urlgrabber", - "epoch": 0, - "version": "3.10", - "release": "10.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-urlgrabber-3.10-10.el7.noarch.rpm", - "checksum": "sha256:9ddd959c968b3fa18f95faf3606a3930ec626f20aeb182cca99e497b05278aa4" - }, - { - "name": "pyxattr", - "epoch": 0, - "version": "0.5.1", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pyxattr-0.5.1-5.el7.x86_64.rpm", - "checksum": "sha256:4a13c0ad25f16e0736c1f578bbcb8dc071d0e0272631f3251e1a31c788f142f8" - }, - { - "name": "qrencode-libs", - "epoch": 0, - "version": "3.4.1", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/qrencode-libs-3.4.1-3.el7.x86_64.rpm", - "checksum": "sha256:423c42c5eb216eb25c4d32a896f77cf28f735e7d07cd60d3678a2db5c904ac55" - }, - { - "name": "readline", - "epoch": 0, - "version": "6.2", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/readline-6.2-11.el7.x86_64.rpm", - "checksum": "sha256:d196a525d02f95d83eaa9a25a10f7d08c15c4cad7cb9aeac15c9fbae8bbb164c" - }, - { - "name": "redhat-logos", - "epoch": 0, - "version": "70.7.0", - "release": "1.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/redhat-logos-70.7.0-1.el7.noarch.rpm", - "checksum": "sha256:2293799f84ccf36c681066a3aa0f7fe713b913e589c105713ecbb98e86966cc7" - }, - { - "name": "redhat-release-eula", - "epoch": 0, - "version": "7.8", - "release": "0.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/redhat-release-eula-7.8-0.el7.noarch.rpm", - "checksum": "sha256:65f0e22564f440caa9aad8404bce88bdef734bbfe78eb3909950a4ddd3280eb4" - }, - { - "name": "redhat-release-server", - "epoch": 0, - "version": "7.9", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/redhat-release-server-7.9-3.el7.x86_64.rpm", - "checksum": "sha256:ff1e959ba052cc5ceda455206e27ebca8638b7ce7fbf2b7db8a91f61a72aec66" - }, - { - "name": "redhat-support-lib-python", - "epoch": 0, - "version": "0.12.1", - "release": "1.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/redhat-support-lib-python-0.12.1-1.el7.noarch.rpm", - "checksum": "sha256:6e54c37c51856a6be2dd8e22c0c8f9fbc82fd21f01c2f7c7295a29bbcdf1e824" - }, - { - "name": "redhat-support-tool", - "epoch": 0, - "version": "0.12.2", - "release": "1.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/redhat-support-tool-0.12.2-1.el7.noarch.rpm", - "checksum": "sha256:a1b2071fd093dc2ba2fa2fcd12c2a300ad789fdf22704305297d3f84a6e6fcf0" - }, - { - "name": "rhn-check", - "epoch": 0, - "version": "2.0.2", - "release": "24.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/rhn-check-2.0.2-24.el7.x86_64.rpm", - "checksum": "sha256:5b9eecff66a0e3f70d43010f6fb2ce149a00a215c72b36f73fce2c6ba3982a43" - }, - { - "name": "rhn-client-tools", - "epoch": 0, - "version": "2.0.2", - "release": "24.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/rhn-client-tools-2.0.2-24.el7.x86_64.rpm", - "checksum": "sha256:3aa6194da8f12809a83fde5453a1fdca5211e42e3022e0b924ff1376b49b9701" - }, - { - "name": "rhn-setup", - "epoch": 0, - "version": "2.0.2", - "release": "24.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/rhn-setup-2.0.2-24.el7.x86_64.rpm", - "checksum": "sha256:a251219dbd9bf0d5022c2452bb75d23db132fa69ab3ce92759a5de64b4a697ea" - }, - { - "name": "rhnlib", - "epoch": 0, - "version": "2.5.65", - "release": "8.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/rhnlib-2.5.65-8.el7.noarch.rpm", - "checksum": "sha256:e12e796899851d7ac2dcfa011fb7e9d56358991e0fc0552949d6f1bc62350a97" - }, - { - "name": "rhnsd", - "epoch": 0, - "version": "5.0.13", - "release": "10.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/rhnsd-5.0.13-10.el7.x86_64.rpm", - "checksum": "sha256:1a21af8faab93b4e4d828f4be9710abfc478a6c0b189bac4fb48ac1b6d638939" - }, - { - "name": "rootfiles", - "epoch": 0, - "version": "8.1", - "release": "11.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/rootfiles-8.1-11.el7.noarch.rpm", - "checksum": "sha256:89f3c9576cab42749460f7736221728770cf0c622cfb319e2503b01e7f5a9ee8" - }, - { - "name": "rsyslog", - "epoch": 0, - "version": "8.24.0", - "release": "55.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/rsyslog-8.24.0-55.el7.x86_64.rpm", - "checksum": "sha256:10873eefaff164ae15ae2a9d02b57ae8018205f6824437796fb030c17def0fa7" - }, - { - "name": "sed", - "epoch": 0, - "version": "4.2.2", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/sed-4.2.2-7.el7.x86_64.rpm", - "checksum": "sha256:edfbbdad51585941595f0a7f38cce55cff109c555245d66a2af08fe8f2642d04" - }, - { - "name": "selinux-policy", - "epoch": 0, - "version": "3.13.1", - "release": "268.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/selinux-policy-3.13.1-268.el7.noarch.rpm", - "checksum": "sha256:90970802248a6d3d908bb0dfa6b1fbd3c1ca70df15a880ef9a65851b1302d44b" - }, - { - "name": "selinux-policy-targeted", - "epoch": 0, - "version": "3.13.1", - "release": "268.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/selinux-policy-targeted-3.13.1-268.el7.noarch.rpm", - "checksum": "sha256:0206ad85f99f76af27e33e2c73a2d2a02c87f400e74a5baccf0c04561907e92d" - }, - { - "name": "setup", - "epoch": 0, - "version": "2.8.71", - "release": "11.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/setup-2.8.71-11.el7.noarch.rpm", - "checksum": "sha256:66d16c27de575b7a34f7d811cb9b3df5262cdd1f65ea4d36bed0cdf25f2cc8cb" - }, - { - "name": "sg3_utils", - "epoch": 1, - "version": "1.37", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/sg3_utils-1.37-19.el7.x86_64.rpm", - "checksum": "sha256:39d5b27e7b53308da7ac9900019b67e87222ac2645e415b8577f4db4fb3e821b" - }, - { - "name": "sg3_utils-libs", - "epoch": 1, - "version": "1.37", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/sg3_utils-libs-1.37-19.el7.x86_64.rpm", - "checksum": "sha256:540d92c8b1aee1eb318afdc3f6c678c64e5a24ebb1db9317c7720c0864a7722e" - }, - { - "name": "shadow-utils", - "epoch": 2, - "version": "4.6", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/shadow-utils-4.6-5.el7.x86_64.rpm", - "checksum": "sha256:63a2a2b5b6febf9e2cca8ffe69d36fbd700111a8c1e572d11e183df242a849e3" - }, - { - "name": "shared-mime-info", - "epoch": 0, - "version": "1.8", - "release": "5.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/shared-mime-info-1.8-5.el7.x86_64.rpm", - "checksum": "sha256:46b5e7d3b453c12b8a40aec53d14e7529de17a999d45118809f6c1b83b151e1b" - }, - { - "name": "slang", - "epoch": 0, - "version": "2.2.4", - "release": "11.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/slang-2.2.4-11.el7.x86_64.rpm", - "checksum": "sha256:282f5cbb66c7df0b453652836314248bae9ca5d28ecd7ec08bb795ba5aff8951" - }, - { - "name": "snappy", - "epoch": 0, - "version": "1.1.0", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/snappy-1.1.0-3.el7.x86_64.rpm", - "checksum": "sha256:b410972f8b141ed2c9e0c6f71d3cb479562c320a198f627b575a9c6619eb7dfa" - }, - { - "name": "sqlite", - "epoch": 0, - "version": "3.7.17", - "release": "8.el7_7.1", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/sqlite-3.7.17-8.el7_7.1.x86_64.rpm", - "checksum": "sha256:d0a139643324cde3b1862adc5854bb915d66e2cc451f3608331a76ceef7e13fb" - }, - { - "name": "subscription-manager", - "epoch": 0, - "version": "1.24.42", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/subscription-manager-1.24.42-1.el7.x86_64.rpm", - "checksum": "sha256:d968bf7f8073c68f646e6ba646e29cb6d233cec64ed5f9c420831290774c50ca" - }, - { - "name": "subscription-manager-rhsm", - "epoch": 0, - "version": "1.24.42", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/subscription-manager-rhsm-1.24.42-1.el7.x86_64.rpm", - "checksum": "sha256:4a28d86ae079986885c72cf09ec6fbd62ffacd8bb13b3c8855ace345bacbb6b0" - }, - { - "name": "subscription-manager-rhsm-certificates", - "epoch": 0, - "version": "1.24.42", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/subscription-manager-rhsm-certificates-1.24.42-1.el7.x86_64.rpm", - "checksum": "sha256:19700bb2a20ef7c48f7193b24785b15edb7f1c06f3283f206fafe847343d7b54" - }, - { - "name": "sudo", - "epoch": 0, - "version": "1.8.23", - "release": "10.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/sudo-1.8.23-10.el7.x86_64.rpm", - "checksum": "sha256:2662ba7b0af95a6f8f20cde932c66e9b670665890cd34fba3f70b8a5ff7e8848" - }, - { - "name": "systemd", - "epoch": 0, - "version": "219", - "release": "78.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/systemd-219-78.el7.x86_64.rpm", - "checksum": "sha256:99d2f89951c958d69aaa04935001253b1d1ea781d44a3ba1db123fab15c5aab7" - }, - { - "name": "systemd-libs", - "epoch": 0, - "version": "219", - "release": "78.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/systemd-libs-219-78.el7.x86_64.rpm", - "checksum": "sha256:4062df96c0797801f4295a133df9a022e33ec13ae4516b29c936763f64a9b2f2" - }, - { - "name": "systemd-sysv", - "epoch": 0, - "version": "219", - "release": "78.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/systemd-sysv-219-78.el7.x86_64.rpm", - "checksum": "sha256:a7e16898bcde09e76d873f2593810c9ebb4a9d36da992aede7c17155b1a5bc9d" - }, - { - "name": "sysvinit-tools", - "epoch": 0, - "version": "2.88", - "release": "14.dsf.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/sysvinit-tools-2.88-14.dsf.el7.x86_64.rpm", - "checksum": "sha256:7ad380191f90f8ef35f60104fdd2c5abbc390a3b42223c52de86a166852cdc75" - }, - { - "name": "tar", - "epoch": 2, - "version": "1.26", - "release": "35.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/tar-1.26-35.el7.x86_64.rpm", - "checksum": "sha256:18c52a40340d3e7221fc43e2ad698926b78505eac0f3b36d0f23dfea1e8c4934" - }, - { - "name": "tcp_wrappers-libs", - "epoch": 0, - "version": "7.6", - "release": "77.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/tcp_wrappers-libs-7.6-77.el7.x86_64.rpm", - "checksum": "sha256:0d8650ee08a36666aaeed4ee713d6067ccd3c7e5445e3d949ac2ee183c94921a" - }, - { - "name": "teamd", - "epoch": 0, - "version": "1.29", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/teamd-1.29-3.el7.x86_64.rpm", - "checksum": "sha256:5487de1bac24442383d789e48ba61456ec1b28095b481ca87a2bd5a2a67b6c43" - }, - { - "name": "tuned", - "epoch": 0, - "version": "2.11.0", - "release": "9.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/tuned-2.11.0-9.el7.noarch.rpm", - "checksum": "sha256:2a03d83873a95f5a41224ef37b6abc396c04472aa3efc96835baae9f4596e018" - }, - { - "name": "tzdata", - "epoch": 0, - "version": "2020a", - "release": "1.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/tzdata-2020a-1.el7.noarch.rpm", - "checksum": "sha256:a1f06bf1cbed7e05308f192c91856e81bbc988e1751efe6881bd7aca254d10ec" - }, - { - "name": "usermode", - "epoch": 0, - "version": "1.111", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/usermode-1.111-6.el7.x86_64.rpm", - "checksum": "sha256:76f63f8fe81ae05558de72c0123a2e4f4e6f2cc87fef29655ef40995bd2b704c" - }, - { - "name": "ustr", - "epoch": 0, - "version": "1.0.4", - "release": "16.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ustr-1.0.4-16.el7.x86_64.rpm", - "checksum": "sha256:50573712702e041493f2faf28f55f527d9eef8338a8bc6b59d92e1f221a227b8" - }, - { - "name": "util-linux", - "epoch": 0, - "version": "2.23.2", - "release": "65.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/util-linux-2.23.2-65.el7.x86_64.rpm", - "checksum": "sha256:4fb6e7b6246f929ade40e70f5edc757956714684fefcac9e6d21215623e5d569" - }, - { - "name": "vim-minimal", - "epoch": 2, - "version": "7.4.629", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/vim-minimal-7.4.629-7.el7.x86_64.rpm", - "checksum": "sha256:9d2cc8c7e7fe129b9e5c1e057870c82522e3104c05bbba9ee6ece56ec92900bc" - }, - { - "name": "virt-what", - "epoch": 0, - "version": "1.18", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/virt-what-1.18-4.el7.x86_64.rpm", - "checksum": "sha256:34810a66dca420b3b88f129e386c28c2cb13f6f494acf58eafb4d6037fdcc20e" - }, - { - "name": "which", - "epoch": 0, - "version": "2.20", - "release": "7.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/which-2.20-7.el7.x86_64.rpm", - "checksum": "sha256:06f674513dc3838eb76593777aa0a514eef44c85886ceb8b87779e69a9d00939" - }, - { - "name": "wpa_supplicant", - "epoch": 1, - "version": "2.6", - "release": "12.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/wpa_supplicant-2.6-12.el7.x86_64.rpm", - "checksum": "sha256:a61dcf3c31bc66497c86d007870305008e2ab6d11fc6a570af179afa19bfcbc2" - }, - { - "name": "xdg-utils", - "epoch": 0, - "version": "1.1.0", - "release": "0.17.20120809git.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/xdg-utils-1.1.0-0.17.20120809git.el7.noarch.rpm", - "checksum": "sha256:6bb6d2e38b25cf61b1f78c8e224bba9d5adb10fa8c4db977cc06f7b19bbc4d9b" - }, - { - "name": "xfsprogs", - "epoch": 0, - "version": "4.5.0", - "release": "22.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/xfsprogs-4.5.0-22.el7.x86_64.rpm", - "checksum": "sha256:dd79a2a2f87ed920f3a9401da58813fb9507cc94fd6130192be77a02c3fc448d" - }, - { - "name": "xz", - "epoch": 0, - "version": "5.2.2", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/xz-5.2.2-1.el7.x86_64.rpm", - "checksum": "sha256:3252cadf18993f9b73799625d8fc7e9be6efedf33ddc3efa035797f2db9d8894" - }, - { - "name": "xz-libs", - "epoch": 0, - "version": "5.2.2", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/xz-libs-5.2.2-1.el7.x86_64.rpm", - "checksum": "sha256:aa391cfaba93d4b9f4f8959175fa2fcaf851b1e70d5f15c5b27e1a7ebfadf5fd" - }, - { - "name": "yum", - "epoch": 0, - "version": "3.4.3", - "release": "168.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/yum-3.4.3-168.el7.noarch.rpm", - "checksum": "sha256:f59f37936ec9399161f49420340d460e909409b3018b55e348806a15ff063a72" - }, - { - "name": "yum-metadata-parser", - "epoch": 0, - "version": "1.1.4", - "release": "10.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm", - "checksum": "sha256:f783a96d524d0a38aa6041a4f4372df2ea662236ed4ddbc15115967ed32c6ca1" - }, - { - "name": "yum-rhn-plugin", - "epoch": 0, - "version": "2.0.1", - "release": "10.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/yum-rhn-plugin-2.0.1-10.el7.noarch.rpm", - "checksum": "sha256:39a9ade0e44eb4856e70940e8d3d581ada5e6b122744d5e957729042d1b7ff0b" - }, - { - "name": "zlib", - "epoch": 0, - "version": "1.2.7", - "release": "18.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/zlib-1.2.7-18.el7.x86_64.rpm", - "checksum": "sha256:db8dd5164d1177c2804a337199ad1f8ae6821f91d38d442c03ab15c318f27c97" - }, - { - "name": "hardlink", - "epoch": 1, - "version": "1.3", - "release": "6.el7eng", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/hardlink/1.3/6.el7eng/x86_64/hardlink-1.3-6.el7eng.x86_64.rpm", - "checksum": "sha256:c6d7e3e6d22005f0e302e209188081522cae87e8db86fbefb38815fb647e8f42" - }, - { - "name": "python-six", - "epoch": 0, - "version": "1.9.0", - "release": "4.el7eng", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/python-six/1.9.0/4.el7eng/noarch/python-six-1.9.0-4.el7eng.noarch.rpm", - "checksum": "sha256:3f8fce412b3d5dd8cd96ab00a18cd793ce0b2a66718dcfe9b715b701f191d904" - }, - { - "name": "python2-dateutil", - "epoch": 1, - "version": "2.6.1", - "release": "1.el7ost", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/python-dateutil/2.6.1/1.el7ost/noarch/python2-dateutil-2.6.1-1.el7ost.noarch.rpm", - "checksum": "sha256:9ce3026d2c80057a19b3dbfecd2abab534ec364684e43b7b2041e321c073a267" - }, - { - "name": "python2-setuptools", - "epoch": 0, - "version": "38.4.0", - "release": "3.el7ost", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/python-setuptools/38.4.0/3.el7ost/noarch/python2-setuptools-38.4.0-3.el7ost.noarch.rpm", - "checksum": "sha256:2b90b44e0c41d233b6110575c4a442719b59f8f31d86dcb0b303451c70cfa4d0" - }, - { - "name": "rpm", - "epoch": 0, - "version": "4.11.3", - "release": "45.zfix_sighdr.el7eng", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/rpm/4.11.3/45.zfix_sighdr.el7eng/x86_64/rpm-4.11.3-45.zfix_sighdr.el7eng.x86_64.rpm", - "checksum": "sha256:c3f76a582b0de01668f2a0567458598f9914f792e79515713f2f7f00e2c1c788" - }, - { - "name": "rpm-build-libs", - "epoch": 0, - "version": "4.11.3", - "release": "45.zfix_sighdr.el7eng", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/rpm/4.11.3/45.zfix_sighdr.el7eng/x86_64/rpm-build-libs-4.11.3-45.zfix_sighdr.el7eng.x86_64.rpm", - "checksum": "sha256:c285642978ec4bf9fc04ee3f94daa745deba518ee1bacc270d2a05f5286b448f" - }, - { - "name": "rpm-libs", - "epoch": 0, - "version": "4.11.3", - "release": "45.zfix_sighdr.el7eng", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/rpm/4.11.3/45.zfix_sighdr.el7eng/x86_64/rpm-libs-4.11.3-45.zfix_sighdr.el7eng.x86_64.rpm", - "checksum": "sha256:cfee456a0f3a2208ec1925cf1e699dd9ac9c5efb9ef4f27c5928670b57aa2bf1" - }, - { - "name": "rpm-python", - "epoch": 0, - "version": "4.11.3", - "release": "45.zfix_sighdr.el7eng", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/rpm/4.11.3/45.zfix_sighdr.el7eng/x86_64/rpm-python-4.11.3-45.zfix_sighdr.el7eng.x86_64.rpm", - "checksum": "sha256:6b335cd2811b48cfcd895189dab46969d5069150a92e4ef725976d5cf4bcbc50" - } - ], - "build": [ - { - "name": "acl", - "epoch": 0, - "version": "2.2.51", - "release": "15.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/acl-2.2.51-15.el7.x86_64.rpm", - "checksum": "sha256:1370de73e8c66a91af841521ca143c72a704df1c54ee9b452b2354a54de7b9b4" - }, - { - "name": "audit-libs", - "epoch": 0, - "version": "2.8.5", - "release": "4.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/audit-libs-2.8.5-4.el7.x86_64.rpm", - "checksum": "sha256:2f8d6d29f7f4b3e655bf00ffb0cb4be1ca46c042977e60dbc435ef999f76d323" - }, - { - "name": "basesystem", - "epoch": 0, - "version": "10.0", - "release": "7.el7", - "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/basesystem-10.0-7.el7.noarch.rpm", - "checksum": "sha256:133df1ee1de627d3e07fcf15fe903696f94b051cf28dc0090178f5d1ec956057" - }, - { - "name": "bash", - "epoch": 0, - "version": "4.2.46", - "release": "34.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/bash-4.2.46-34.el7.x86_64.rpm", - "checksum": "sha256:164930af843a056c1ad18627fc4364d1f931d79145060aa47165d4e1edc6f2a4" - }, - { - "name": "binutils", - "epoch": 0, - "version": "2.27", - "release": "44.base.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/binutils-2.27-44.base.el7.x86_64.rpm", - "checksum": "sha256:09823f3edb9eb138b587366dcc29b54445bafeb5221664e4119254bd0cd0440a" - }, - { - "name": "boost-iostreams", - "epoch": 0, - "version": "1.53.0", - "release": "28.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/boost-iostreams-1.53.0-28.el7.x86_64.rpm", - "checksum": "sha256:85fa0e5f90907e690d09657d67d2b018572bf1431797d0d95a51fcea49700647" - }, - { - "name": "boost-random", + "name": "boost-random", "epoch": 0, "version": "1.53.0", "release": "28.el7", @@ -7925,6 +5172,15 @@ } ], "packages": [ + { + "name": "NetworkManager", + "epoch": 1, + "version": "1.18.8", + "release": "1.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/NetworkManager-1.18.8-1.el7.x86_64.rpm", + "checksum": "sha256:cc4b75e1ce83af2dbad9604e70bcf40e7f20ad8918a08f8b82f6d5e69efd9655" + }, { "name": "NetworkManager-config-server", "epoch": 1, @@ -7934,6 +5190,33 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/NetworkManager-config-server-1.18.8-1.el7.noarch.rpm", "checksum": "sha256:9ae89ba6e5533df2ee1af8cab3ed8fd6be99a432eff3519783095a37cd710a66" }, + { + "name": "NetworkManager-libnm", + "epoch": 1, + "version": "1.18.8", + "release": "1.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/NetworkManager-libnm-1.18.8-1.el7.x86_64.rpm", + "checksum": "sha256:cab023377a79bf3dc9317c1281abf4099aaccc0c95e69032fe2e563023a802f0" + }, + { + "name": "NetworkManager-team", + "epoch": 1, + "version": "1.18.8", + "release": "1.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/NetworkManager-team-1.18.8-1.el7.x86_64.rpm", + "checksum": "sha256:fca63e69026cd824dbe1d0ba051894e2bb63b3277d5a01c42fda7accc909b6a9" + }, + { + "name": "NetworkManager-tui", + "epoch": 1, + "version": "1.18.8", + "release": "1.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/NetworkManager-tui-1.18.8-1.el7.x86_64.rpm", + "checksum": "sha256:bfb092807d02f35824f86087b5baf279d92e3c2290d94bc00078b6ea0ec97c22" + }, { "name": "Red_Hat_Enterprise_Linux-Release_Notes-7-en-US", "epoch": 0, @@ -7944,13 +5227,49 @@ "checksum": "sha256:3b7e15c04916e85c82a35b0c30f3134692d032f3c5184f9bd558b87ee742117c" }, { - "name": "acl", + "name": "acl", + "epoch": 0, + "version": "2.2.51", + "release": "15.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/acl-2.2.51-15.el7.x86_64.rpm", + "checksum": "sha256:1370de73e8c66a91af841521ca143c72a704df1c54ee9b452b2354a54de7b9b4" + }, + { + "name": "aic94xx-firmware", + "epoch": 0, + "version": "30", + "release": "6.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/aic94xx-firmware-30-6.el7.noarch.rpm", + "checksum": "sha256:978c60b716fd39216dede943a6149f2673a6277b534f5310190dd765e5b0010c" + }, + { + "name": "alsa-firmware", + "epoch": 0, + "version": "1.0.28", + "release": "2.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/alsa-firmware-1.0.28-2.el7.noarch.rpm", + "checksum": "sha256:07aa5c8a348915ae684375cb75ab5e4d8c38bde2a90083126fe81c0ec7650db0" + }, + { + "name": "alsa-lib", + "epoch": 0, + "version": "1.1.8", + "release": "1.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/alsa-lib-1.1.8-1.el7.x86_64.rpm", + "checksum": "sha256:e70333dc0e327dd19cd56dd2ad8251ba42920b88ee38718ba99fa1d0f9b06913" + }, + { + "name": "alsa-tools-firmware", "epoch": 0, - "version": "2.2.51", - "release": "15.el7", + "version": "1.1.0", + "release": "1.el7", "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/acl-2.2.51-15.el7.x86_64.rpm", - "checksum": "sha256:1370de73e8c66a91af841521ca143c72a704df1c54ee9b452b2354a54de7b9b4" + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/alsa-tools-firmware-1.1.0-1.el7.x86_64.rpm", + "checksum": "sha256:005d3c65516a8021aac3e640d498a5fafe7f86eb7848009aed399a42730aa79f" }, { "name": "audit", @@ -8024,6 +5343,24 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/binutils-2.27-44.base.el7.x86_64.rpm", "checksum": "sha256:09823f3edb9eb138b587366dcc29b54445bafeb5221664e4119254bd0cd0440a" }, + { + "name": "biosdevname", + "epoch": 0, + "version": "0.7.3", + "release": "2.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/biosdevname-0.7.3-2.el7.x86_64.rpm", + "checksum": "sha256:838e27cadbb77a140e9c26664d37cd22d38f22500b8e9b587405e926bbb7c18f" + }, + { + "name": "bluez", + "epoch": 0, + "version": "5.44", + "release": "7.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/bluez-5.44-7.el7.x86_64.rpm", + "checksum": "sha256:86fa352092d56520903a819fc02fb0bc7396ef86df9b89f7b6689dc492ba392d" + }, { "name": "btrfs-progs", "epoch": 0, @@ -8069,6 +5406,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/chkconfig-1.7.6-1.el7.x86_64.rpm", "checksum": "sha256:8517730ba35d7d4f47df5adc20d9c317ce16055da214576b60ceed86dcaadedc" }, + { + "name": "chrony", + "epoch": 0, + "version": "3.4", + "release": "1.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/chrony-3.4-1.el7.x86_64.rpm", + "checksum": "sha256:c4703397f0a79f8f9f47549f3c535ef7c650bc169b5fbe67dfa5699f2ae91e18" + }, { "name": "cloud-init", "epoch": 0, @@ -8231,6 +5577,24 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-1.02.170-6.el7.x86_64.rpm", "checksum": "sha256:f5edbf09fbd69fd4985682a6bb2fdb8732d11c90f6f75977e77c225f846f6bc5" }, + { + "name": "device-mapper-event", + "epoch": 7, + "version": "1.02.170", + "release": "6.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-event-1.02.170-6.el7.x86_64.rpm", + "checksum": "sha256:bc12d9d6875e2120680179861221139e3a34833a918300a1def89ff75c18e4a5" + }, + { + "name": "device-mapper-event-libs", + "epoch": 7, + "version": "1.02.170", + "release": "6.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-event-libs-1.02.170-6.el7.x86_64.rpm", + "checksum": "sha256:ab40914102cb36464420c18710524a41f32df9e7762ead4879de09986c3f85ad" + }, { "name": "device-mapper-libs", "epoch": 7, @@ -8240,6 +5604,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-libs-1.02.170-6.el7.x86_64.rpm", "checksum": "sha256:ceda9d24ef213658d34af8c53f891be32959398f7aa85b9bd4557a9ae9f797b9" }, + { + "name": "device-mapper-persistent-data", + "epoch": 0, + "version": "0.8.5", + "release": "3.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-persistent-data-0.8.5-3.el7.x86_64.rpm", + "checksum": "sha256:178e4b4ccf193c065e54056bb1c6b997ae9bdd7a72415e92006146f7614a6a81" + }, { "name": "dhclient", "epoch": 12, @@ -8303,6 +5676,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dracut-config-generic-033-572.el7.x86_64.rpm", "checksum": "sha256:83417516af90dbff01c37715535ecbf349cdb6cf2a39a7addd1544c8fb939803" }, + { + "name": "dracut-config-rescue", + "epoch": 0, + "version": "033", + "release": "572.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dracut-config-rescue-033-572.el7.x86_64.rpm", + "checksum": "sha256:027e16fd46bc2ecbfdcc42f4426d80406b83db0582b1e908c058231299dc7614" + }, { "name": "dracut-network", "epoch": 0, @@ -8492,6 +5874,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/freetype-2.8-14.el7.x86_64.rpm", "checksum": "sha256:a3b5d4d9fed6506e43ac4de247a62fc13c0494ccfd618f854c99cefc1cfd8de5" }, + { + "name": "fxload", + "epoch": 0, + "version": "2002_04_11", + "release": "16.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/fxload-2002_04_11-16.el7.x86_64.rpm", + "checksum": "sha256:d029559bf7ec180b3c1d698cbc2d3f4d7988cc9f17ec40ae62e4da90c4816d35" + }, { "name": "gawk", "epoch": 0, @@ -8741,62 +6132,233 @@ "version": "3.0.13", "release": "1.el7", "arch": "noarch", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/insights-client-3.0.13-1.el7.noarch.rpm", - "checksum": "sha256:0d2a47225e982af09c27b97e8ce24dce5cd3e45b3ce2550e47982ef94d19eb7d" + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/insights-client-3.0.13-1.el7.noarch.rpm", + "checksum": "sha256:0d2a47225e982af09c27b97e8ce24dce5cd3e45b3ce2550e47982ef94d19eb7d" + }, + { + "name": "iproute", + "epoch": 0, + "version": "4.11.0", + "release": "30.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iproute-4.11.0-30.el7.x86_64.rpm", + "checksum": "sha256:a9a0f1078682a2e7b85967c4402672648e05802d2eccdae48dab33b47521adbc" + }, + { + "name": "iprutils", + "epoch": 0, + "version": "2.4.17.1", + "release": "3.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iprutils-2.4.17.1-3.el7.x86_64.rpm", + "checksum": "sha256:c5137a9d3b9aac4dba1262800fa480bbc979a62227ad31f0d837618cdf4377ee" + }, + { + "name": "ipset", + "epoch": 0, + "version": "7.1", + "release": "1.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ipset-7.1-1.el7.x86_64.rpm", + "checksum": "sha256:7af4e177936381d8a3d26db6dc66d8be32f80b4eefe4f0a2f43e4b938c148ac0" + }, + { + "name": "ipset-libs", + "epoch": 0, + "version": "7.1", + "release": "1.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ipset-libs-7.1-1.el7.x86_64.rpm", + "checksum": "sha256:0bb2ac8f0d7a970cd1c318d9b810ba9c0f9540bd0d62d391ec47b5da9415fd2d" + }, + { + "name": "iptables", + "epoch": 0, + "version": "1.4.21", + "release": "35.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iptables-1.4.21-35.el7.x86_64.rpm", + "checksum": "sha256:ee91f2840155b3fbafe9059d4e3465ed12bee73cac15667f2dee4c5f9a52cf87" + }, + { + "name": "iputils", + "epoch": 0, + "version": "20160308", + "release": "10.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iputils-20160308-10.el7.x86_64.rpm", + "checksum": "sha256:92f5006e55ebf5dc518ad9e7498506063f0b6c889a925565117aa3fb550cd89c" + }, + { + "name": "irqbalance", + "epoch": 3, + "version": "1.0.7", + "release": "12.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/irqbalance-1.0.7-12.el7.x86_64.rpm", + "checksum": "sha256:c829e5532ab00017d914bff2ecf419ac68d57689bfb8662741bc9dde1dae8cef" + }, + { + "name": "ivtv-firmware", + "epoch": 2, + "version": "20080701", + "release": "26.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ivtv-firmware-20080701-26.el7.noarch.rpm", + "checksum": "sha256:d69952b6417c422f416fe3baddd49dec88a26cd826749961ee24b6721977a2ce" + }, + { + "name": "iwl100-firmware", + "epoch": 0, + "version": "39.31.5.1", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl100-firmware-39.31.5.1-79.el7.noarch.rpm", + "checksum": "sha256:12d3f2ca7449af3e3a3cff8be6b024cd1106987f49a7be16a84fa9bb39f2dde9" + }, + { + "name": "iwl1000-firmware", + "epoch": 1, + "version": "39.31.5.1", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl1000-firmware-39.31.5.1-79.el7.noarch.rpm", + "checksum": "sha256:7d15ad33bec7d5bdc64074edaecff6019f590069b5375de7640c7df7e8e3776d" + }, + { + "name": "iwl105-firmware", + "epoch": 0, + "version": "18.168.6.1", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl105-firmware-18.168.6.1-79.el7.noarch.rpm", + "checksum": "sha256:97dfbf353c370ee92b04a856a883255217528af0cfcbc9f234531efe71c043e6" + }, + { + "name": "iwl135-firmware", + "epoch": 0, + "version": "18.168.6.1", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl135-firmware-18.168.6.1-79.el7.noarch.rpm", + "checksum": "sha256:11ac559bb43266411c847e259a1bb111ee67b4fdc09c3d9dbf6e91094f815e0f" + }, + { + "name": "iwl2000-firmware", + "epoch": 0, + "version": "18.168.6.1", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl2000-firmware-18.168.6.1-79.el7.noarch.rpm", + "checksum": "sha256:12b098f5666193520fc84a092ce438a39f8c3ff53f7a7c4eee55e6515b49618c" + }, + { + "name": "iwl2030-firmware", + "epoch": 0, + "version": "18.168.6.1", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl2030-firmware-18.168.6.1-79.el7.noarch.rpm", + "checksum": "sha256:f4e8763f1a42799dbcbada6f3c7f7f0943c89d9f5369bb750ea067a6e7a5ce4b" + }, + { + "name": "iwl3160-firmware", + "epoch": 0, + "version": "25.30.13.0", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl3160-firmware-25.30.13.0-79.el7.noarch.rpm", + "checksum": "sha256:7e3edabd3ad60028285e194934644e087602c2440a672dc8c05996afb044ece4" + }, + { + "name": "iwl3945-firmware", + "epoch": 0, + "version": "15.32.2.9", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl3945-firmware-15.32.2.9-79.el7.noarch.rpm", + "checksum": "sha256:aced7b9842dab221f2ca286c7532c9342e81fff0df3f09c4f265ec3fa83d4ece" + }, + { + "name": "iwl4965-firmware", + "epoch": 0, + "version": "228.61.2.24", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl4965-firmware-228.61.2.24-79.el7.noarch.rpm", + "checksum": "sha256:0a6d71d0c1c1d14f2a6885734232dbe2a06ca6a958a9b81f06cef008e58769c8" + }, + { + "name": "iwl5000-firmware", + "epoch": 0, + "version": "8.83.5.1_1", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl5000-firmware-8.83.5.1_1-79.el7.noarch.rpm", + "checksum": "sha256:3da6456472355dc70e19cd3b5109a73b8f5c019bb7f24a6b17d7150314f07244" + }, + { + "name": "iwl5150-firmware", + "epoch": 0, + "version": "8.24.2.2", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl5150-firmware-8.24.2.2-79.el7.noarch.rpm", + "checksum": "sha256:66149f8d65c73e297a392cf33a8c40e570ae8b16667c29d7ce967adade27eb7a" }, { - "name": "iproute", + "name": "iwl6000-firmware", "epoch": 0, - "version": "4.11.0", - "release": "30.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iproute-4.11.0-30.el7.x86_64.rpm", - "checksum": "sha256:a9a0f1078682a2e7b85967c4402672648e05802d2eccdae48dab33b47521adbc" + "version": "9.221.4.1", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl6000-firmware-9.221.4.1-79.el7.noarch.rpm", + "checksum": "sha256:a37d2eeb9810427888dfe2eea1712441e0bb91e74f93d2166a8978a29f82ca98" }, { - "name": "ipset", + "name": "iwl6000g2a-firmware", "epoch": 0, - "version": "7.1", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ipset-7.1-1.el7.x86_64.rpm", - "checksum": "sha256:7af4e177936381d8a3d26db6dc66d8be32f80b4eefe4f0a2f43e4b938c148ac0" + "version": "18.168.6.1", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl6000g2a-firmware-18.168.6.1-79.el7.noarch.rpm", + "checksum": "sha256:d866a841fa8afa3b5f4210f172d4eb78aafaa13b0de26ccbea708779fb746b14" }, { - "name": "ipset-libs", + "name": "iwl6000g2b-firmware", "epoch": 0, - "version": "7.1", - "release": "1.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ipset-libs-7.1-1.el7.x86_64.rpm", - "checksum": "sha256:0bb2ac8f0d7a970cd1c318d9b810ba9c0f9540bd0d62d391ec47b5da9415fd2d" + "version": "18.168.6.1", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl6000g2b-firmware-18.168.6.1-79.el7.noarch.rpm", + "checksum": "sha256:a3dc70cc6472c7eb9d1216acc144a6dceb48bdb69955f01b8585cd80ffdd538a" }, { - "name": "iptables", + "name": "iwl6050-firmware", "epoch": 0, - "version": "1.4.21", - "release": "35.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iptables-1.4.21-35.el7.x86_64.rpm", - "checksum": "sha256:ee91f2840155b3fbafe9059d4e3465ed12bee73cac15667f2dee4c5f9a52cf87" + "version": "41.28.5.1", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl6050-firmware-41.28.5.1-79.el7.noarch.rpm", + "checksum": "sha256:0b4110cf94f7f793dbabb7a1a616087455ab316ec74ad5204abb0fd2f211ee58" }, { - "name": "iputils", + "name": "iwl7260-firmware", "epoch": 0, - "version": "20160308", - "release": "10.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iputils-20160308-10.el7.x86_64.rpm", - "checksum": "sha256:92f5006e55ebf5dc518ad9e7498506063f0b6c889a925565117aa3fb550cd89c" + "version": "25.30.13.0", + "release": "79.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/iwl7260-firmware-25.30.13.0-79.el7.noarch.rpm", + "checksum": "sha256:33fba59c069f63b29ac955363d97683c582178f5e314d594c452b8a630a59170" }, { - "name": "irqbalance", - "epoch": 3, - "version": "1.0.7", - "release": "12.el7", + "name": "jansson", + "epoch": 0, + "version": "2.10", + "release": "1.el7", "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/irqbalance-1.0.7-12.el7.x86_64.rpm", - "checksum": "sha256:c829e5532ab00017d914bff2ecf419ac68d57689bfb8662741bc9dde1dae8cef" + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/jansson-2.10-1.el7.x86_64.rpm", + "checksum": "sha256:58ce6f65f4b61dfcb190deac65fca0cc210abfdae65b54a88ee5f61c61e3e47e" }, { "name": "json-c", @@ -8942,6 +6504,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libacl-2.2.51-15.el7.x86_64.rpm", "checksum": "sha256:2a9bc37a1274ef0fd28a594bc83334b868bee0c87f19f5b413c8c81e2a43dddd" }, + { + "name": "libaio", + "epoch": 0, + "version": "0.3.109", + "release": "13.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libaio-0.3.109-13.el7.x86_64.rpm", + "checksum": "sha256:bff924265c10c3e75cd5fadaf2e23910829a6e9f5482d4e43fb7c15e41eb48a0" + }, { "name": "libassuan", "epoch": 0, @@ -9041,6 +6612,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libcurl-7.29.0-59.el7.x86_64.rpm", "checksum": "sha256:a5ca0ac5ee32aa9c2ba4a02e37fb6cdb7d65df0a7df1a6b795c294b3ed6e242d" }, + { + "name": "libdaemon", + "epoch": 0, + "version": "0.14", + "release": "7.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libdaemon-0.14-7.el7.x86_64.rpm", + "checksum": "sha256:827757b21e2a88b67e7991f003dd30afd778ee94d966d1d91619b05ba4f801fe" + }, { "name": "libdb", "epoch": 0, @@ -9059,6 +6639,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libdb-utils-5.3.21-25.el7.x86_64.rpm", "checksum": "sha256:a6bd2f5457433ca2c45146aa547eec6642870bebb3e96ef75bed4d73fb246f32" }, + { + "name": "libdrm", + "epoch": 0, + "version": "2.4.97", + "release": "2.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libdrm-2.4.97-2.el7.x86_64.rpm", + "checksum": "sha256:bb7b02048bc98c2f62e62ce67f36eb54cfcbf53f763ea0cd557053d20b2a2682" + }, { "name": "libedit", "epoch": 0, @@ -9149,6 +6738,24 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libgudev1-219-78.el7.x86_64.rpm", "checksum": "sha256:9bfc868c97a1998e18e7ff32657478d895e87a2d1d919ffeca60a4e9dc5cec43" }, + { + "name": "libical", + "epoch": 0, + "version": "3.0.3", + "release": "2.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libical-3.0.3-2.el7.x86_64.rpm", + "checksum": "sha256:72e259b72e9345c09d6d06056fd93f8ea31c10cd69e78c95899f44a8777a04b5" + }, + { + "name": "libicu", + "epoch": 0, + "version": "50.2", + "release": "4.el7_7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libicu-50.2-4.el7_7.x86_64.rpm", + "checksum": "sha256:9b8a185b88e6d414b5d744aabd5817950d112a8f351bff3c2a01b1ab2b766b1e" + }, { "name": "libidn", "epoch": 0, @@ -9185,6 +6792,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libmount-2.23.2-65.el7.x86_64.rpm", "checksum": "sha256:9908abc99788aa3e371c54a89d7236e9edd66ff7e8bc9b9f2cf4732ca86b4785" }, + { + "name": "libndp", + "epoch": 0, + "version": "1.2", + "release": "9.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libndp-1.2-9.el7.x86_64.rpm", + "checksum": "sha256:7567202eb027a1efb739092a6204307d735db326cf92a2c979201e36d841a284" + }, { "name": "libnetfilter_conntrack", "epoch": 0, @@ -9221,6 +6837,24 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libnl-1.1.4-3.el7.x86_64.rpm", "checksum": "sha256:d7ee2c5b5fda494b492a8c9e04b0ec06b24521d9debea706e0a3af8c716d9ea2" }, + { + "name": "libnl3", + "epoch": 0, + "version": "3.2.28", + "release": "4.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libnl3-3.2.28-4.el7.x86_64.rpm", + "checksum": "sha256:2e56f3449308538a955393ca85e4908d9022885fa34894cb365669b9d38de282" + }, + { + "name": "libnl3-cli", + "epoch": 0, + "version": "3.2.28", + "release": "4.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libnl3-cli-3.2.28-4.el7.x86_64.rpm", + "checksum": "sha256:535aec9847767995152b43de3f8323e53c7c36decf894ca6e426742fb1507322" + }, { "name": "libpath_utils", "epoch": 0, @@ -9239,6 +6873,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libpcap-1.5.3-12.el7.x86_64.rpm", "checksum": "sha256:6bc289b6f664cebfb07703f279f28a2f69482c83f4b3718eb07e8028deb2a5fe" }, + { + "name": "libpciaccess", + "epoch": 0, + "version": "0.14", + "release": "1.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libpciaccess-0.14-1.el7.x86_64.rpm", + "checksum": "sha256:aeb22ef9ac260054a3641602a021740b6d0985cbddc60bc00ce2b3279017ca1c" + }, { "name": "libpipeline", "epoch": 0, @@ -9275,6 +6918,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libref_array-0.1.5-32.el7.x86_64.rpm", "checksum": "sha256:68e8132e5eda6b553ccbad7287dad2e8ab116eec95477002c84fcd9e1d7272ab" }, + { + "name": "libseccomp", + "epoch": 0, + "version": "2.3.1", + "release": "4.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libseccomp-2.3.1-4.el7.x86_64.rpm", + "checksum": "sha256:da67098eeba3936506e2fcd15e5332d4afffe37e31b97f9170bea8ce9ceafd76" + }, { "name": "libselinux", "epoch": 0, @@ -9383,6 +7035,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libtasn1-4.10-1.el7.x86_64.rpm", "checksum": "sha256:0522ab1034c4202c3ad9ff36807e55814ac366a4aac27a034b30b522cd4aeca9" }, + { + "name": "libteam", + "epoch": 0, + "version": "1.29", + "release": "3.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libteam-1.29-3.el7.x86_64.rpm", + "checksum": "sha256:93503e6622050a007698e4649903b26f7c76b207461c5e97c9215437a33b031f" + }, { "name": "libtirpc", "epoch": 0, @@ -9509,6 +7170,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lshw-B.02.18-17.el7.x86_64.rpm", "checksum": "sha256:1e34f348448890f16458dff676697b311e4bd3ff4ac463b643b32edad7106d3b" }, + { + "name": "lsscsi", + "epoch": 0, + "version": "0.27", + "release": "6.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lsscsi-0.27-6.el7.x86_64.rpm", + "checksum": "sha256:ea6c84fe12b97fb5511ffee78b31a8ffb0444fd41da21932503568df14a95e98" + }, { "name": "lua", "epoch": 0, @@ -9518,6 +7188,24 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lua-5.1.4-15.el7.x86_64.rpm", "checksum": "sha256:f2ee3238762ee4b1917cb7ed5d5e064dbae4d1804bdb65bd4bf6c56b785f8836" }, + { + "name": "lvm2", + "epoch": 7, + "version": "2.02.187", + "release": "6.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lvm2-2.02.187-6.el7.x86_64.rpm", + "checksum": "sha256:8eab91b478d945b5992f5676754d1ca0f124bcee584de99e74bef3ed62a4a859" + }, + { + "name": "lvm2-libs", + "epoch": 7, + "version": "2.02.187", + "release": "6.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lvm2-libs-2.02.187-6.el7.x86_64.rpm", + "checksum": "sha256:1a9ca0f47677eab3e6ce4e98823cc29d2968d058b365d8c65f724f2c067ed14d" + }, { "name": "lz4", "epoch": 0, @@ -9887,6 +7575,33 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pkgconfig-0.27.1-4.el7.x86_64.rpm", "checksum": "sha256:b043d16e3d62f62e7589e93dfc0cebee5753d8f8ea225c0682e1fbeea5f1985a" }, + { + "name": "plymouth", + "epoch": 0, + "version": "0.8.9", + "release": "0.34.20140113.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/plymouth-0.8.9-0.34.20140113.el7.x86_64.rpm", + "checksum": "sha256:4dc9a401c2514336e46adc87f5d05244ca743eb08bf6bcab1443a9eba6b81970" + }, + { + "name": "plymouth-core-libs", + "epoch": 0, + "version": "0.8.9", + "release": "0.34.20140113.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/plymouth-core-libs-0.8.9-0.34.20140113.el7.x86_64.rpm", + "checksum": "sha256:77a55f2182769815d41519b53ca15b54aa09cbe48249cd91487a091e81fdd7c2" + }, + { + "name": "plymouth-scripts", + "epoch": 0, + "version": "0.8.9", + "release": "0.34.20140113.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/plymouth-scripts-0.8.9-0.34.20140113.el7.x86_64.rpm", + "checksum": "sha256:19f7ca6bf9d8e762c376d0d8b52e2982e900a3d3e5fe7d3f095d1b27f4ab95aa" + }, { "name": "policycoreutils", "epoch": 0, @@ -10373,6 +8088,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/readline-6.2-11.el7.x86_64.rpm", "checksum": "sha256:d196a525d02f95d83eaa9a25a10f7d08c15c4cad7cb9aeac15c9fbae8bbb164c" }, + { + "name": "redhat-logos", + "epoch": 0, + "version": "70.7.0", + "release": "1.el7", + "arch": "noarch", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/redhat-logos-70.7.0-1.el7.noarch.rpm", + "checksum": "sha256:2293799f84ccf36c681066a3aa0f7fe713b913e589c105713ecbb98e86966cc7" + }, { "name": "redhat-release-eula", "epoch": 0, @@ -10715,6 +8439,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/tcpdump-4.9.2-4.el7_7.1.x86_64.rpm", "checksum": "sha256:09728df5b04e03f212a1a8be620b5ea3c97515c50e73cb079ec936ee174ba61d" }, + { + "name": "teamd", + "epoch": 0, + "version": "1.29", + "release": "3.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/teamd-1.29-3.el7.x86_64.rpm", + "checksum": "sha256:5487de1bac24442383d789e48ba61456ec1b28095b481ca87a2bd5a2a67b6c43" + }, { "name": "tuned", "epoch": 0, @@ -10787,6 +8520,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/which-2.20-7.el7.x86_64.rpm", "checksum": "sha256:06f674513dc3838eb76593777aa0a514eef44c85886ceb8b87779e69a9d00939" }, + { + "name": "wpa_supplicant", + "epoch": 1, + "version": "2.6", + "release": "12.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/wpa_supplicant-2.6-12.el7.x86_64.rpm", + "checksum": "sha256:a61dcf3c31bc66497c86d007870305008e2ab6d11fc6a570af179afa19bfcbc2" + }, { "name": "xdg-utils", "epoch": 0, From cfcbceb47aa74742156b4cca08dc32986a17d980 Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Wed, 18 Jan 2023 23:58:54 +0100 Subject: [PATCH 02/16] distro/rhel7: update distribution implementation Update the implementation of the distro.Distro interface to match the one in RHEL 8, 9, and Fedora. The main change is that the runner is a runner.Runner and not a string. The runner name is now rhel79 (changed from rhel7). This is functionally equivalent based on osbuild's runner version fallback logic. --- internal/distro/rhel7/azure.go | 2 +- internal/distro/rhel7/distro.go | 5 +++-- internal/distro/rhel7/qcow2.go | 2 +- test/data/manifests/rhel_7-x86_64-azure_rhui-boot.json | 2 +- test/data/manifests/rhel_7-x86_64-qcow2-boot.json | 2 +- test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json | 2 +- 6 files changed, 8 insertions(+), 7 deletions(-) diff --git a/internal/distro/rhel7/azure.go b/internal/distro/rhel7/azure.go index 628f4e46d1..1b829f2a5b 100644 --- a/internal/distro/rhel7/azure.go +++ b/internal/distro/rhel7/azure.go @@ -179,7 +179,7 @@ var azureRhuiBasePartitionTables = distro.BasePartitionTableMap{ func vhdPipelines(compress bool) pipelinesFunc { return func(t *imageType, customizations *blueprint.Customizations, options distro.ImageOptions, repos []rpmmd.RepoConfig, packageSetSpecs map[string][]rpmmd.PackageSpec, rng *rand.Rand) ([]osbuild.Pipeline, error) { pipelines := make([]osbuild.Pipeline, 0) - pipelines = append(pipelines, *buildPipeline(repos, packageSetSpecs[buildPkgsKey], t.arch.distro.runner)) + pipelines = append(pipelines, *buildPipeline(repos, packageSetSpecs[buildPkgsKey], t.arch.distro.runner.String())) partitionTable, err := t.getPartitionTable(customizations.GetFilesystems(), options, rng) if err != nil { diff --git a/internal/distro/rhel7/distro.go b/internal/distro/rhel7/distro.go index 3b0b7f40a8..0bf42255c2 100644 --- a/internal/distro/rhel7/distro.go +++ b/internal/distro/rhel7/distro.go @@ -15,6 +15,7 @@ import ( "github.com/osbuild/osbuild-composer/internal/distro" "github.com/osbuild/osbuild-composer/internal/osbuild" "github.com/osbuild/osbuild-composer/internal/rpmmd" + "github.com/osbuild/osbuild-composer/internal/runner" ) const ( @@ -61,7 +62,7 @@ var distroMap = map[string]distribution{ releaseVersion: "7", modulePlatformID: "platform:el7", vendor: "redhat", - runner: "org.osbuild.rhel7", + runner: &runner.RHEL{Major: uint64(7), Minor: uint64(9)}, defaultImageConfig: defaultDistroImageConfig, }, } @@ -75,7 +76,7 @@ type distribution struct { releaseVersion string modulePlatformID string vendor string - runner string + runner runner.Runner arches map[string]distro.Arch defaultImageConfig *distro.ImageConfig } diff --git a/internal/distro/rhel7/qcow2.go b/internal/distro/rhel7/qcow2.go index 37a6fb3887..4ec016ae90 100644 --- a/internal/distro/rhel7/qcow2.go +++ b/internal/distro/rhel7/qcow2.go @@ -69,7 +69,7 @@ func qcow2CommonPackageSet(t *imageType) rpmmd.PackageSet { func qcow2Pipelines(t *imageType, customizations *blueprint.Customizations, options distro.ImageOptions, repos []rpmmd.RepoConfig, packageSetSpecs map[string][]rpmmd.PackageSpec, rng *rand.Rand) ([]osbuild.Pipeline, error) { pipelines := make([]osbuild.Pipeline, 0) - pipelines = append(pipelines, *buildPipeline(repos, packageSetSpecs[buildPkgsKey], t.arch.distro.runner)) + pipelines = append(pipelines, *buildPipeline(repos, packageSetSpecs[buildPkgsKey], t.arch.distro.runner.String())) partitionTable, err := t.getPartitionTable(customizations.GetFilesystems(), options, rng) if err != nil { diff --git a/test/data/manifests/rhel_7-x86_64-azure_rhui-boot.json b/test/data/manifests/rhel_7-x86_64-azure_rhui-boot.json index e8d88ef8ea..240433cf83 100644 --- a/test/data/manifests/rhel_7-x86_64-azure_rhui-boot.json +++ b/test/data/manifests/rhel_7-x86_64-azure_rhui-boot.json @@ -40,7 +40,7 @@ "pipelines": [ { "name": "build", - "runner": "org.osbuild.rhel7", + "runner": "org.osbuild.rhel79", "stages": [ { "type": "org.osbuild.rpm", diff --git a/test/data/manifests/rhel_7-x86_64-qcow2-boot.json b/test/data/manifests/rhel_7-x86_64-qcow2-boot.json index 14a9cd3004..52d216f8e1 100644 --- a/test/data/manifests/rhel_7-x86_64-qcow2-boot.json +++ b/test/data/manifests/rhel_7-x86_64-qcow2-boot.json @@ -51,7 +51,7 @@ "pipelines": [ { "name": "build", - "runner": "org.osbuild.rhel7", + "runner": "org.osbuild.rhel79", "stages": [ { "type": "org.osbuild.rpm", diff --git a/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json index 192953ee37..c2b9cf88ef 100644 --- a/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json @@ -121,7 +121,7 @@ "pipelines": [ { "name": "build", - "runner": "org.osbuild.rhel7", + "runner": "org.osbuild.rhel79", "stages": [ { "type": "org.osbuild.rpm", From 84044e462c0cdb4434a30ffcbce5e02b0c532549 Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Thu, 19 Jan 2023 21:04:19 +0100 Subject: [PATCH 03/16] distro/rhel7: and add platforms to image types --- internal/distro/rhel7/distro.go | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/internal/distro/rhel7/distro.go b/internal/distro/rhel7/distro.go index 0bf42255c2..c19b9bff8f 100644 --- a/internal/distro/rhel7/distro.go +++ b/internal/distro/rhel7/distro.go @@ -14,6 +14,7 @@ import ( "github.com/osbuild/osbuild-composer/internal/disk" "github.com/osbuild/osbuild-composer/internal/distro" "github.com/osbuild/osbuild-composer/internal/osbuild" + "github.com/osbuild/osbuild-composer/internal/platform" "github.com/osbuild/osbuild-composer/internal/rpmmd" "github.com/osbuild/osbuild-composer/internal/runner" ) @@ -174,13 +175,14 @@ func (a *architecture) GetImageType(name string) (distro.ImageType, error) { return t, nil } -func (a *architecture) addImageTypes(imageTypes ...imageType) { +func (a *architecture) addImageTypes(platform platform.Platform, imageTypes ...imageType) { if a.imageTypes == nil { a.imageTypes = map[string]distro.ImageType{} } for idx := range imageTypes { it := imageTypes[idx] it.arch = a + it.platform = platform a.imageTypes[it.name] = &it for _, alias := range it.nameAliases { if a.imageTypeAliases == nil { @@ -205,6 +207,7 @@ type packageSetFunc func(t *imageType) rpmmd.PackageSet type imageType struct { arch *architecture + platform platform.Platform name string nameAliases []string filename string @@ -465,7 +468,25 @@ func newDistro(distroName string) distro.Distro { } x86_64.addImageTypes( + &platform.X86{ + BIOS: true, + UEFIVendor: rd.vendor, + BasePlatform: platform.BasePlatform{ + ImageFormat: platform.FORMAT_QCOW2, + QCOW2Compat: "0.10", + }, + }, qcow2ImgType, + ) + + x86_64.addImageTypes( + &platform.X86{ + BIOS: true, + UEFIVendor: rd.vendor, + BasePlatform: platform.BasePlatform{ + ImageFormat: platform.FORMAT_VHD, + }, + }, azureRhuiImgType, ) From 74252e2bb6418c1ecca08f1b9dcfbdd9934c47ee Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Mon, 23 Jan 2023 20:10:04 +0100 Subject: [PATCH 04/16] runner: add platform-python only for RHEL 8+ No platform-python for RHEL 7. --- internal/runner/rhel.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/internal/runner/rhel.go b/internal/runner/rhel.go index 7dcb5ca444..8b921a2114 100644 --- a/internal/runner/rhel.go +++ b/internal/runner/rhel.go @@ -13,14 +13,15 @@ func (r *RHEL) String() string { func (p *RHEL) GetBuildPackages() []string { packages := []string{ - "glibc", // ldconfig - "platform-python", // osbuild + "glibc", // ldconfig } if p.Major >= 8 { packages = append(packages, - "systemd", // systemd-tmpfiles and systemd-sysusers + "systemd", // systemd-tmpfiles and systemd-sysusers + "platform-python", // osbuild ) } + if p.Major < 9 { packages = append(packages, // The RHEL 8 runner in osbuild runs with platform-python but From a18bae2612841e6ae9822a234ec0483f4ff059da Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Mon, 23 Jan 2023 20:12:58 +0100 Subject: [PATCH 05/16] distro/rhel7: update imageType implementation Add environment, compression, and image fields and define the imageFunc function type. --- internal/distro/rhel7/distro.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/internal/distro/rhel7/distro.go b/internal/distro/rhel7/distro.go index c19b9bff8f..16161a18e3 100644 --- a/internal/distro/rhel7/distro.go +++ b/internal/distro/rhel7/distro.go @@ -13,10 +13,13 @@ import ( "github.com/osbuild/osbuild-composer/internal/container" "github.com/osbuild/osbuild-composer/internal/disk" "github.com/osbuild/osbuild-composer/internal/distro" + "github.com/osbuild/osbuild-composer/internal/environment" + "github.com/osbuild/osbuild-composer/internal/image" "github.com/osbuild/osbuild-composer/internal/osbuild" "github.com/osbuild/osbuild-composer/internal/platform" "github.com/osbuild/osbuild-composer/internal/rpmmd" "github.com/osbuild/osbuild-composer/internal/runner" + "github.com/osbuild/osbuild-composer/internal/workload" ) const ( @@ -205,12 +208,16 @@ type pipelinesFunc func(t *imageType, customizations *blueprint.Customizations, type packageSetFunc func(t *imageType) rpmmd.PackageSet +type imageFunc func(workload workload.Workload, t *imageType, customizations *blueprint.Customizations, options distro.ImageOptions, packageSets map[string]rpmmd.PackageSet, containers []container.Spec, rng *rand.Rand) (image.ImageKind, error) + type imageType struct { arch *architecture platform platform.Platform + environment environment.Environment name string nameAliases []string filename string + compression string // TODO: remove from image definition and make it a transport option mimeType string packageSets map[string]packageSetFunc packageSetChains map[string][]string @@ -221,6 +228,7 @@ type imageType struct { payloadPipelines []string exports []string pipelines pipelinesFunc + image imageFunc // bootable image bootable bool From 9117e7a08ab1b7ad678f04928e15bae2473c5d46 Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Mon, 23 Jan 2023 20:16:59 +0100 Subject: [PATCH 06/16] distro/rhel7: add osCustomizations() and liveImage() Copied osCustomizations() and liveImage() functions from RHEL 8 and remove unneeded customizations and options. --- internal/distro/rhel7/images.go | 194 ++++++++++++++++++++++++++++++++ 1 file changed, 194 insertions(+) create mode 100644 internal/distro/rhel7/images.go diff --git a/internal/distro/rhel7/images.go b/internal/distro/rhel7/images.go new file mode 100644 index 0000000000..6434801545 --- /dev/null +++ b/internal/distro/rhel7/images.go @@ -0,0 +1,194 @@ +package rhel7 + +import ( + "math/rand" + + "github.com/osbuild/osbuild-composer/internal/blueprint" + "github.com/osbuild/osbuild-composer/internal/container" + "github.com/osbuild/osbuild-composer/internal/distro" + "github.com/osbuild/osbuild-composer/internal/image" + "github.com/osbuild/osbuild-composer/internal/manifest" + "github.com/osbuild/osbuild-composer/internal/osbuild" + "github.com/osbuild/osbuild-composer/internal/platform" + "github.com/osbuild/osbuild-composer/internal/rpmmd" + "github.com/osbuild/osbuild-composer/internal/users" + "github.com/osbuild/osbuild-composer/internal/workload" +) + +func osCustomizations( + t *imageType, + osPackageSet rpmmd.PackageSet, + options distro.ImageOptions, + containers []container.Spec, + c *blueprint.Customizations, +) manifest.OSCustomizations { + + imageConfig := t.getDefaultImageConfig() + + osc := manifest.OSCustomizations{} + + if t.bootable { + osc.KernelName = c.GetKernel().Name + + var kernelOptions []string + if t.kernelOptions != "" { + kernelOptions = append(kernelOptions, t.kernelOptions) + } + if bpKernel := c.GetKernel(); bpKernel.Append != "" { + kernelOptions = append(kernelOptions, bpKernel.Append) + } + osc.KernelOptionsAppend = kernelOptions + if t.platform.GetArch() != platform.ARCH_S390X { + osc.KernelOptionsBootloader = true + } + } + + osc.ExtraBasePackages = osPackageSet.Include + osc.ExcludeBasePackages = osPackageSet.Exclude + osc.ExtraBaseRepos = osPackageSet.Repositories + + osc.Containers = containers + + osc.GPGKeyFiles = imageConfig.GPGKeyFiles + if imageConfig.ExcludeDocs != nil { + osc.ExcludeDocs = *imageConfig.ExcludeDocs + } + + // don't put users and groups in the payload of an installer + // add them via kickstart instead + osc.Groups = users.GroupsFromBP(c.GetGroups()) + osc.Users = users.UsersFromBP(c.GetUsers()) + + osc.EnabledServices = imageConfig.EnabledServices + osc.DisabledServices = imageConfig.DisabledServices + if imageConfig.DefaultTarget != nil { + osc.DefaultTarget = *imageConfig.DefaultTarget + } + + osc.Firewall = imageConfig.Firewall + if fw := c.GetFirewall(); fw != nil { + options := osbuild.FirewallStageOptions{ + Ports: fw.Ports, + } + + if fw.Services != nil { + options.EnabledServices = fw.Services.Enabled + options.DisabledServices = fw.Services.Disabled + } + if fw.Zones != nil { + for _, z := range fw.Zones { + options.Zones = append(options.Zones, osbuild.FirewallZone{ + Name: *z.Name, + Sources: z.Sources, + }) + } + } + osc.Firewall = &options + } + + language, keyboard := c.GetPrimaryLocale() + if language != nil { + osc.Language = *language + } else if imageConfig.Locale != nil { + osc.Language = *imageConfig.Locale + } + if keyboard != nil { + osc.Keyboard = keyboard + } else if imageConfig.Keyboard != nil { + osc.Keyboard = &imageConfig.Keyboard.Keymap + if imageConfig.Keyboard.X11Keymap != nil { + osc.X11KeymapLayouts = imageConfig.Keyboard.X11Keymap.Layouts + } + } + + if hostname := c.GetHostname(); hostname != nil { + osc.Hostname = *hostname + } + + timezone, ntpServers := c.GetTimezoneSettings() + if timezone != nil { + osc.Timezone = *timezone + } else if imageConfig.Timezone != nil { + osc.Timezone = *imageConfig.Timezone + } + + if len(ntpServers) > 0 { + for _, server := range ntpServers { + osc.NTPServers = append(osc.NTPServers, osbuild.ChronyConfigServer{Hostname: server}) + } + } else if imageConfig.TimeSynchronization != nil { + osc.NTPServers = imageConfig.TimeSynchronization.Servers + osc.LeapSecTZ = imageConfig.TimeSynchronization.LeapsecTz + } + + // Relabel the tree, unless the `NoSElinux` flag is explicitly set to `true` + if imageConfig.NoSElinux == nil || imageConfig.NoSElinux != nil && !*imageConfig.NoSElinux { + osc.SElinux = "targeted" + } + + if oscapConfig := c.GetOpenSCAP(); oscapConfig != nil { + osc.OpenSCAPConfig = osbuild.NewOscapRemediationStageOptions( + osbuild.OscapConfig{ + Datastream: oscapConfig.DataStream, + ProfileID: oscapConfig.ProfileID, + }, + ) + } + + if t.arch.distro.isRHEL() && options.Facts != nil { + osc.FactAPIType = options.Facts.ApiType + } + + osc.Grub2Config = imageConfig.Grub2Config + osc.Sysconfig = imageConfig.Sysconfig + osc.SystemdLogind = imageConfig.SystemdLogind + osc.CloudInit = imageConfig.CloudInit + osc.Modprobe = imageConfig.Modprobe + osc.DracutConf = imageConfig.DracutConf + osc.SystemdUnit = imageConfig.SystemdUnit + osc.Authselect = imageConfig.Authselect + osc.SELinuxConfig = imageConfig.SELinuxConfig + osc.Tuned = imageConfig.Tuned + osc.Tmpfilesd = imageConfig.Tmpfilesd + osc.PamLimitsConf = imageConfig.PamLimitsConf + osc.Sysctld = imageConfig.Sysctld + osc.DNFConfig = imageConfig.DNFConfig + osc.DNFAutomaticConfig = imageConfig.DNFAutomaticConfig + osc.YUMRepos = imageConfig.YUMRepos + osc.SshdConfig = imageConfig.SshdConfig + osc.AuthConfig = imageConfig.Authconfig + osc.PwQuality = imageConfig.PwQuality + osc.RHSMConfig = imageConfig.RHSMConfig + osc.Subscription = options.Subscription + osc.WAAgentConfig = imageConfig.WAAgentConfig + osc.UdevRules = imageConfig.UdevRules + osc.GCPGuestAgentConfig = imageConfig.GCPGuestAgentConfig + + return osc +} + +func liveImage(workload workload.Workload, + t *imageType, + customizations *blueprint.Customizations, + options distro.ImageOptions, + packageSets map[string]rpmmd.PackageSet, + containers []container.Spec, + rng *rand.Rand) (image.ImageKind, error) { + + img := image.NewLiveImage() + img.Platform = t.platform + img.OSCustomizations = osCustomizations(t, packageSets[osPkgsKey], options, containers, customizations) + img.Environment = t.environment + img.Workload = workload + img.Compression = t.compression + // TODO: move generation into LiveImage + pt, err := t.getPartitionTable(customizations.GetFilesystems(), options, rng) + if err != nil { + return nil, err + } + img.PartitionTable = pt + + img.Filename = t.Filename() + + return img, nil +} From 51fb833b07c2bb1b5f0e75b03f6c5fea24a15d18 Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Mon, 23 Jan 2023 20:29:35 +0100 Subject: [PATCH 07/16] distro/rhel7: move azure image type definition to top of file Moved the Azure image type definition to the top of the file for consistency with the other image type files. Separated the default image config struct from the base image type definition to make it easier to read. --- internal/distro/rhel7/azure.go | 412 +++++++++++++++++---------------- 1 file changed, 207 insertions(+), 205 deletions(-) diff --git a/internal/distro/rhel7/azure.go b/internal/distro/rhel7/azure.go index 1b829f2a5b..41d42a546f 100644 --- a/internal/distro/rhel7/azure.go +++ b/internal/distro/rhel7/azure.go @@ -11,6 +11,213 @@ import ( "github.com/osbuild/osbuild-composer/internal/rpmmd" ) +var azureRhuiImgType = imageType{ + name: "azure-rhui", + filename: "disk.vhd.xz", + mimeType: "application/xz", + packageSets: map[string]packageSetFunc{ + buildPkgsKey: distroBuildPackageSet, + osPkgsKey: azureRhuiCommonPackageSet, + }, + packageSetChains: map[string][]string{ + osPkgsKey: {osPkgsKey, blueprintPkgsKey}, + }, + defaultImageConfig: azureDefaultImgConfig, + kernelOptions: "ro crashkernel=auto console=tty1 console=ttyS0 earlyprintk=ttyS0 rootdelay=300 scsi_mod.use_blk_mq=y", + bootable: true, + defaultSize: 64 * common.GibiByte, + pipelines: vhdPipelines(true), + buildPipelines: []string{"build"}, + payloadPipelines: []string{"os", "image", "vpc", "archive"}, + exports: []string{"archive"}, + basePartitionTables: azureRhuiBasePartitionTables, +} + +var azureDefaultImgConfig = &distro.ImageConfig{ + Timezone: common.ToPtr("Etc/UTC"), + Locale: common.ToPtr("en_US.UTF-8"), + GPGKeyFiles: []string{ + "/etc/pki/rpm-gpg/RPM-GPG-KEY-microsoft-azure-release", + "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release", + }, + Authconfig: &osbuild.AuthconfigStageOptions{}, + Sysconfig: []*osbuild.SysconfigStageOptions{ + { + Kernel: &osbuild.SysconfigKernelOptions{ + UpdateDefault: true, + DefaultKernel: "kernel-core", + }, + Network: &osbuild.SysconfigNetworkOptions{ + Networking: true, + NoZeroConf: true, + }, + }, + }, + EnabledServices: []string{ + "cloud-config", + "cloud-final", + "cloud-init-local", + "cloud-init", + "firewalld", + "NetworkManager", + "sshd", + "waagent", + }, + SshdConfig: &osbuild.SshdConfigStageOptions{ + Config: osbuild.SshdConfigConfig{ + ClientAliveInterval: common.ToPtr(180), + }, + }, + Modprobe: []*osbuild.ModprobeStageOptions{ + { + Filename: "blacklist-amdgpu.conf", + Commands: osbuild.ModprobeConfigCmdList{ + osbuild.NewModprobeConfigCmdBlacklist("amdgpu"), + }, + }, + { + Filename: "blacklist-intel-cstate.conf", + Commands: osbuild.ModprobeConfigCmdList{ + osbuild.NewModprobeConfigCmdBlacklist("intel_cstate"), + }, + }, + { + Filename: "blacklist-floppy.conf", + Commands: osbuild.ModprobeConfigCmdList{ + osbuild.NewModprobeConfigCmdBlacklist("floppy"), + }, + }, + { + Filename: "blacklist-nouveau.conf", + Commands: osbuild.ModprobeConfigCmdList{ + osbuild.NewModprobeConfigCmdBlacklist("nouveau"), + osbuild.NewModprobeConfigCmdBlacklist("lbm-nouveau"), + }, + }, + { + Filename: "blacklist-skylake-edac.conf", + Commands: osbuild.ModprobeConfigCmdList{ + osbuild.NewModprobeConfigCmdBlacklist("skx_edac"), + }, + }, + }, + CloudInit: []*osbuild.CloudInitStageOptions{ + { + Filename: "06_logging_override.cfg", + Config: osbuild.CloudInitConfigFile{ + Output: &osbuild.CloudInitConfigOutput{ + All: common.ToPtr("| tee -a /var/log/cloud-init-output.log"), + }, + }, + }, + { + Filename: "10-azure-kvp.cfg", + Config: osbuild.CloudInitConfigFile{ + Reporting: &osbuild.CloudInitConfigReporting{ + Logging: &osbuild.CloudInitConfigReportingHandlers{ + Type: "log", + }, + Telemetry: &osbuild.CloudInitConfigReportingHandlers{ + Type: "hyperv", + }, + }, + }, + }, + { + Filename: "91-azure_datasource.cfg", + Config: osbuild.CloudInitConfigFile{ + Datasource: &osbuild.CloudInitConfigDatasource{ + Azure: &osbuild.CloudInitConfigDatasourceAzure{ + ApplyNetworkConfig: false, + }, + }, + DatasourceList: []string{ + "Azure", + }, + }, + }, + }, + PwQuality: &osbuild.PwqualityConfStageOptions{ + Config: osbuild.PwqualityConfConfig{ + Minlen: common.ToPtr(6), + Minclass: common.ToPtr(3), + Dcredit: common.ToPtr(0), + Ucredit: common.ToPtr(0), + Lcredit: common.ToPtr(0), + Ocredit: common.ToPtr(0), + }, + }, + WAAgentConfig: &osbuild.WAAgentConfStageOptions{ + Config: osbuild.WAAgentConfig{ + RDFormat: common.ToPtr(false), + RDEnableSwap: common.ToPtr(false), + }, + }, + RHSMConfig: map[distro.RHSMSubscriptionStatus]*osbuild.RHSMStageOptions{ + distro.RHSMConfigNoSubscription: { + YumPlugins: &osbuild.RHSMStageOptionsDnfPlugins{ + SubscriptionManager: &osbuild.RHSMStageOptionsDnfPlugin{ + Enabled: false, + }, + }, + SubMan: &osbuild.RHSMStageOptionsSubMan{ + Rhsmcertd: &osbuild.SubManConfigRHSMCERTDSection{ + AutoRegistration: common.ToPtr(true), + }, + Rhsm: &osbuild.SubManConfigRHSMSection{ + ManageRepos: common.ToPtr(false), + }, + }, + }, + distro.RHSMConfigWithSubscription: { + SubMan: &osbuild.RHSMStageOptionsSubMan{ + Rhsmcertd: &osbuild.SubManConfigRHSMCERTDSection{ + AutoRegistration: common.ToPtr(true), + }, + // do not disable the redhat.repo management if the user + // explicitly request the system to be subscribed + }, + }, + }, + Grub2Config: &osbuild.GRUB2Config{ + TerminalInput: []string{"serial", "console"}, + TerminalOutput: []string{"serial", "console"}, + Serial: "serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1", + Timeout: 10, + }, + UdevRules: &osbuild.UdevRulesStageOptions{ + Filename: "/etc/udev/rules.d/68-azure-sriov-nm-unmanaged.rules", + Rules: osbuild.UdevRules{ + osbuild.UdevRuleComment{ + Comment: []string{ + "Accelerated Networking on Azure exposes a new SRIOV interface to the VM.", + "This interface is transparently bonded to the synthetic interface,", + "so NetworkManager should just ignore any SRIOV interfaces.", + }, + }, + osbuild.NewUdevRule( + []osbuild.UdevKV{ + {K: "SUBSYSTEM", O: "==", V: "net"}, + {K: "DRIVERS", O: "==", V: "hv_pci"}, + {K: "ACTION", O: "==", V: "add"}, + {K: "ENV", A: "NM_UNMANAGED", O: "=", V: "1"}, + }, + ), + }, + }, + YumConfig: &osbuild.YumConfigStageOptions{ + Config: &osbuild.YumConfigConfig{ + HttpCaching: common.ToPtr("packages"), + }, + Plugins: &osbuild.YumConfigPlugins{ + Langpacks: &osbuild.YumConfigPluginsLangpacks{ + Locales: []string{"en_US.UTF-8"}, + }, + }, + }, + DefaultTarget: common.ToPtr("multi-user.target"), +} + func azureRhuiCommonPackageSet(t *imageType) rpmmd.PackageSet { ps := rpmmd.PackageSet{ Include: []string{ @@ -215,208 +422,3 @@ func vhdPipelines(compress bool) pipelinesFunc { return pipelines, nil } } - -var azureRhuiImgType = imageType{ - name: "azure-rhui", - filename: "disk.vhd.xz", - mimeType: "application/xz", - packageSets: map[string]packageSetFunc{ - buildPkgsKey: distroBuildPackageSet, - osPkgsKey: azureRhuiCommonPackageSet, - }, - packageSetChains: map[string][]string{ - osPkgsKey: {osPkgsKey, blueprintPkgsKey}, - }, - defaultImageConfig: &distro.ImageConfig{ - Timezone: common.ToPtr("Etc/UTC"), - Locale: common.ToPtr("en_US.UTF-8"), - GPGKeyFiles: []string{ - "/etc/pki/rpm-gpg/RPM-GPG-KEY-microsoft-azure-release", - "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release", - }, - Authconfig: &osbuild.AuthconfigStageOptions{}, - Sysconfig: []*osbuild.SysconfigStageOptions{ - { - Kernel: &osbuild.SysconfigKernelOptions{ - UpdateDefault: true, - DefaultKernel: "kernel-core", - }, - Network: &osbuild.SysconfigNetworkOptions{ - Networking: true, - NoZeroConf: true, - }, - }, - }, - EnabledServices: []string{ - "cloud-config", - "cloud-final", - "cloud-init-local", - "cloud-init", - "firewalld", - "NetworkManager", - "sshd", - "waagent", - }, - SshdConfig: &osbuild.SshdConfigStageOptions{ - Config: osbuild.SshdConfigConfig{ - ClientAliveInterval: common.ToPtr(180), - }, - }, - Modprobe: []*osbuild.ModprobeStageOptions{ - { - Filename: "blacklist-amdgpu.conf", - Commands: osbuild.ModprobeConfigCmdList{ - osbuild.NewModprobeConfigCmdBlacklist("amdgpu"), - }, - }, - { - Filename: "blacklist-intel-cstate.conf", - Commands: osbuild.ModprobeConfigCmdList{ - osbuild.NewModprobeConfigCmdBlacklist("intel_cstate"), - }, - }, - { - Filename: "blacklist-floppy.conf", - Commands: osbuild.ModprobeConfigCmdList{ - osbuild.NewModprobeConfigCmdBlacklist("floppy"), - }, - }, - { - Filename: "blacklist-nouveau.conf", - Commands: osbuild.ModprobeConfigCmdList{ - osbuild.NewModprobeConfigCmdBlacklist("nouveau"), - osbuild.NewModprobeConfigCmdBlacklist("lbm-nouveau"), - }, - }, - { - Filename: "blacklist-skylake-edac.conf", - Commands: osbuild.ModprobeConfigCmdList{ - osbuild.NewModprobeConfigCmdBlacklist("skx_edac"), - }, - }, - }, - CloudInit: []*osbuild.CloudInitStageOptions{ - { - Filename: "06_logging_override.cfg", - Config: osbuild.CloudInitConfigFile{ - Output: &osbuild.CloudInitConfigOutput{ - All: common.ToPtr("| tee -a /var/log/cloud-init-output.log"), - }, - }, - }, - { - Filename: "10-azure-kvp.cfg", - Config: osbuild.CloudInitConfigFile{ - Reporting: &osbuild.CloudInitConfigReporting{ - Logging: &osbuild.CloudInitConfigReportingHandlers{ - Type: "log", - }, - Telemetry: &osbuild.CloudInitConfigReportingHandlers{ - Type: "hyperv", - }, - }, - }, - }, - { - Filename: "91-azure_datasource.cfg", - Config: osbuild.CloudInitConfigFile{ - Datasource: &osbuild.CloudInitConfigDatasource{ - Azure: &osbuild.CloudInitConfigDatasourceAzure{ - ApplyNetworkConfig: false, - }, - }, - DatasourceList: []string{ - "Azure", - }, - }, - }, - }, - PwQuality: &osbuild.PwqualityConfStageOptions{ - Config: osbuild.PwqualityConfConfig{ - Minlen: common.ToPtr(6), - Minclass: common.ToPtr(3), - Dcredit: common.ToPtr(0), - Ucredit: common.ToPtr(0), - Lcredit: common.ToPtr(0), - Ocredit: common.ToPtr(0), - }, - }, - WAAgentConfig: &osbuild.WAAgentConfStageOptions{ - Config: osbuild.WAAgentConfig{ - RDFormat: common.ToPtr(false), - RDEnableSwap: common.ToPtr(false), - }, - }, - RHSMConfig: map[distro.RHSMSubscriptionStatus]*osbuild.RHSMStageOptions{ - distro.RHSMConfigNoSubscription: { - YumPlugins: &osbuild.RHSMStageOptionsDnfPlugins{ - SubscriptionManager: &osbuild.RHSMStageOptionsDnfPlugin{ - Enabled: false, - }, - }, - SubMan: &osbuild.RHSMStageOptionsSubMan{ - Rhsmcertd: &osbuild.SubManConfigRHSMCERTDSection{ - AutoRegistration: common.ToPtr(true), - }, - Rhsm: &osbuild.SubManConfigRHSMSection{ - ManageRepos: common.ToPtr(false), - }, - }, - }, - distro.RHSMConfigWithSubscription: { - SubMan: &osbuild.RHSMStageOptionsSubMan{ - Rhsmcertd: &osbuild.SubManConfigRHSMCERTDSection{ - AutoRegistration: common.ToPtr(true), - }, - // do not disable the redhat.repo management if the user - // explicitly request the system to be subscribed - }, - }, - }, - Grub2Config: &osbuild.GRUB2Config{ - TerminalInput: []string{"serial", "console"}, - TerminalOutput: []string{"serial", "console"}, - Serial: "serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1", - Timeout: 10, - }, - UdevRules: &osbuild.UdevRulesStageOptions{ - Filename: "/etc/udev/rules.d/68-azure-sriov-nm-unmanaged.rules", - Rules: osbuild.UdevRules{ - osbuild.UdevRuleComment{ - Comment: []string{ - "Accelerated Networking on Azure exposes a new SRIOV interface to the VM.", - "This interface is transparently bonded to the synthetic interface,", - "so NetworkManager should just ignore any SRIOV interfaces.", - }, - }, - osbuild.NewUdevRule( - []osbuild.UdevKV{ - {K: "SUBSYSTEM", O: "==", V: "net"}, - {K: "DRIVERS", O: "==", V: "hv_pci"}, - {K: "ACTION", O: "==", V: "add"}, - {K: "ENV", A: "NM_UNMANAGED", O: "=", V: "1"}, - }, - ), - }, - }, - YumConfig: &osbuild.YumConfigStageOptions{ - Config: &osbuild.YumConfigConfig{ - HttpCaching: common.ToPtr("packages"), - }, - Plugins: &osbuild.YumConfigPlugins{ - Langpacks: &osbuild.YumConfigPluginsLangpacks{ - Locales: []string{"en_US.UTF-8"}, - }, - }, - }, - DefaultTarget: common.ToPtr("multi-user.target"), - }, - kernelOptions: "ro crashkernel=auto console=tty1 console=ttyS0 earlyprintk=ttyS0 rootdelay=300 scsi_mod.use_blk_mq=y", - bootable: true, - defaultSize: 64 * common.GibiByte, - pipelines: vhdPipelines(true), - buildPipelines: []string{"build"}, - payloadPipelines: []string{"os", "image", "vpc", "archive"}, - exports: []string{"archive"}, - basePartitionTables: azureRhuiBasePartitionTables, -} From 4b55bee4adaa49e792f815d49bc89191bef32cc4 Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Mon, 23 Jan 2023 20:32:09 +0100 Subject: [PATCH 08/16] distro/rhel7: move qcow2 image type definition to top of file Moved the qcow2 image type definition to the top of the file for consistency with the other image type files. Separated the default image config struct from the base image type definition to make it easier to read. --- internal/distro/rhel7/qcow2.go | 121 ++++++++++++++++----------------- 1 file changed, 60 insertions(+), 61 deletions(-) diff --git a/internal/distro/rhel7/qcow2.go b/internal/distro/rhel7/qcow2.go index 4ec016ae90..6ee43a0ea9 100644 --- a/internal/distro/rhel7/qcow2.go +++ b/internal/distro/rhel7/qcow2.go @@ -10,6 +10,66 @@ import ( "github.com/osbuild/osbuild-composer/internal/rpmmd" ) +var qcow2ImgType = imageType{ + name: "qcow2", + filename: "disk.qcow2", + mimeType: "application/x-qemu-disk", + kernelOptions: "console=tty0 console=ttyS0,115200n8 no_timer_check net.ifnames=0 crashkernel=auto", + packageSets: map[string]packageSetFunc{ + buildPkgsKey: distroBuildPackageSet, + osPkgsKey: qcow2CommonPackageSet, + }, + defaultImageConfig: qcow2DefaultImgConfig, + bootable: true, + defaultSize: 10 * common.GibiByte, + pipelines: qcow2Pipelines, + buildPipelines: []string{"build"}, + payloadPipelines: []string{"os", "image", "qcow2"}, + exports: []string{"qcow2"}, + basePartitionTables: defaultBasePartitionTables, +} + +var qcow2DefaultImgConfig = &distro.ImageConfig{ + DefaultTarget: common.ToPtr("multi-user.target"), + Sysconfig: []*osbuild.SysconfigStageOptions{ + { + Kernel: &osbuild.SysconfigKernelOptions{ + UpdateDefault: true, + DefaultKernel: "kernel", + }, + Network: &osbuild.SysconfigNetworkOptions{ + Networking: true, + NoZeroConf: true, + }, + NetworkScripts: &osbuild.NetworkScriptsOptions{ + IfcfgFiles: map[string]osbuild.IfcfgFile{ + "eth0": { + Device: "eth0", + Bootproto: osbuild.IfcfgBootprotoDHCP, + OnBoot: common.ToPtr(true), + Type: osbuild.IfcfgTypeEthernet, + UserCtl: common.ToPtr(true), + PeerDNS: common.ToPtr(true), + IPv6Init: common.ToPtr(false), + }, + }, + }, + }, + }, + RHSMConfig: map[distro.RHSMSubscriptionStatus]*osbuild.RHSMStageOptions{ + distro.RHSMConfigNoSubscription: { + YumPlugins: &osbuild.RHSMStageOptionsDnfPlugins{ + ProductID: &osbuild.RHSMStageOptionsDnfPlugin{ + Enabled: false, + }, + SubscriptionManager: &osbuild.RHSMStageOptionsDnfPlugin{ + Enabled: false, + }, + }, + }, + }, +} + func qcow2CommonPackageSet(t *imageType) rpmmd.PackageSet { ps := rpmmd.PackageSet{ Include: []string{ @@ -92,64 +152,3 @@ func qcow2Pipelines(t *imageType, customizations *blueprint.Customizations, opti return pipelines, nil } - -var qcow2ImgType = imageType{ - name: "qcow2", - filename: "disk.qcow2", - mimeType: "application/x-qemu-disk", - kernelOptions: "console=tty0 console=ttyS0,115200n8 no_timer_check net.ifnames=0 crashkernel=auto", - packageSets: map[string]packageSetFunc{ - buildPkgsKey: distroBuildPackageSet, - osPkgsKey: qcow2CommonPackageSet, - }, - packageSetChains: map[string][]string{ - osPkgsKey: {osPkgsKey, blueprintPkgsKey}, - }, - defaultImageConfig: &distro.ImageConfig{ - DefaultTarget: common.ToPtr("multi-user.target"), - Sysconfig: []*osbuild.SysconfigStageOptions{ - { - Kernel: &osbuild.SysconfigKernelOptions{ - UpdateDefault: true, - DefaultKernel: "kernel", - }, - Network: &osbuild.SysconfigNetworkOptions{ - Networking: true, - NoZeroConf: true, - }, - NetworkScripts: &osbuild.NetworkScriptsOptions{ - IfcfgFiles: map[string]osbuild.IfcfgFile{ - "eth0": { - Device: "eth0", - Bootproto: osbuild.IfcfgBootprotoDHCP, - OnBoot: common.ToPtr(true), - Type: osbuild.IfcfgTypeEthernet, - UserCtl: common.ToPtr(true), - PeerDNS: common.ToPtr(true), - IPv6Init: common.ToPtr(false), - }, - }, - }, - }, - }, - RHSMConfig: map[distro.RHSMSubscriptionStatus]*osbuild.RHSMStageOptions{ - distro.RHSMConfigNoSubscription: { - YumPlugins: &osbuild.RHSMStageOptionsDnfPlugins{ - ProductID: &osbuild.RHSMStageOptionsDnfPlugin{ - Enabled: false, - }, - SubscriptionManager: &osbuild.RHSMStageOptionsDnfPlugin{ - Enabled: false, - }, - }, - }, - }, - }, - bootable: true, - defaultSize: 10 * common.GibiByte, - pipelines: qcow2Pipelines, - buildPipelines: []string{"build"}, - payloadPipelines: []string{"os", "image", "qcow2"}, - exports: []string{"qcow2"}, - basePartitionTables: defaultBasePartitionTables, -} From a9c28c7d35707316ea2ea381250e4aaec0901c24 Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Mon, 23 Jan 2023 20:47:33 +0100 Subject: [PATCH 09/16] distro/rhel7: update image types to new definitions - Replace Manifest() and PackageSets() imageType methods with (adapted) copies from RHEL 8. - Replace pipeline functions with liveImage image function. - Specify xz compression for Azure RHUI. - Add similar package name overrides as we did in RHEL 8. For RHEL 7, we need to modify the capitalisation of python3-pyyaml. --- internal/distro/rhel7/azure.go | 16 +-- internal/distro/rhel7/distro.go | 207 +++++++++++++++++++++----------- internal/distro/rhel7/qcow2.go | 5 +- 3 files changed, 144 insertions(+), 84 deletions(-) diff --git a/internal/distro/rhel7/azure.go b/internal/distro/rhel7/azure.go index 41d42a546f..37fd70eaef 100644 --- a/internal/distro/rhel7/azure.go +++ b/internal/distro/rhel7/azure.go @@ -12,12 +12,12 @@ import ( ) var azureRhuiImgType = imageType{ - name: "azure-rhui", - filename: "disk.vhd.xz", - mimeType: "application/xz", + name: "azure-rhui", + filename: "disk.vhd.xz", + mimeType: "application/xz", + compression: "xz", packageSets: map[string]packageSetFunc{ - buildPkgsKey: distroBuildPackageSet, - osPkgsKey: azureRhuiCommonPackageSet, + osPkgsKey: azureRhuiCommonPackageSet, }, packageSetChains: map[string][]string{ osPkgsKey: {osPkgsKey, blueprintPkgsKey}, @@ -26,10 +26,10 @@ var azureRhuiImgType = imageType{ kernelOptions: "ro crashkernel=auto console=tty1 console=ttyS0 earlyprintk=ttyS0 rootdelay=300 scsi_mod.use_blk_mq=y", bootable: true, defaultSize: 64 * common.GibiByte, - pipelines: vhdPipelines(true), + image: liveImage, buildPipelines: []string{"build"}, - payloadPipelines: []string{"os", "image", "vpc", "archive"}, - exports: []string{"archive"}, + payloadPipelines: []string{"os", "image", "vpc", "xz"}, + exports: []string{"xz"}, basePartitionTables: azureRhuiBasePartitionTables, } diff --git a/internal/distro/rhel7/distro.go b/internal/distro/rhel7/distro.go index 16161a18e3..c9985475f0 100644 --- a/internal/distro/rhel7/distro.go +++ b/internal/distro/rhel7/distro.go @@ -1,7 +1,6 @@ package rhel7 import ( - "encoding/json" "errors" "fmt" "math/rand" @@ -15,11 +14,13 @@ import ( "github.com/osbuild/osbuild-composer/internal/distro" "github.com/osbuild/osbuild-composer/internal/environment" "github.com/osbuild/osbuild-composer/internal/image" + "github.com/osbuild/osbuild-composer/internal/manifest" "github.com/osbuild/osbuild-composer/internal/osbuild" "github.com/osbuild/osbuild-composer/internal/platform" "github.com/osbuild/osbuild-composer/internal/rpmmd" "github.com/osbuild/osbuild-composer/internal/runner" "github.com/osbuild/osbuild-composer/internal/workload" + "github.com/sirupsen/logrus" ) const ( @@ -275,61 +276,6 @@ func (t *imageType) getPackages(name string) rpmmd.PackageSet { return getter(t) } -func (t *imageType) PackageSets(bp blueprint.Blueprint, options distro.ImageOptions, repos []rpmmd.RepoConfig) map[string][]rpmmd.PackageSet { - // merge package sets that appear in the image type with the package sets - // of the same name from the distro and arch - mergedSets := make(map[string]rpmmd.PackageSet) - - imageSets := t.packageSets - - for name := range imageSets { - mergedSets[name] = t.getPackages(name) - } - - if _, hasPackages := imageSets[osPkgsKey]; !hasPackages { - // should this be possible?? - mergedSets[osPkgsKey] = rpmmd.PackageSet{} - } - - // every image type must define a 'build' package set - if _, hasBuild := imageSets[buildPkgsKey]; !hasBuild { - panic(fmt.Sprintf("'%s' image type has no '%s' package set defined", t.name, buildPkgsKey)) - } - - // blueprint packages - bpPackages := bp.GetPackages() - timezone, _ := bp.Customizations.GetTimezoneSettings() - if timezone != nil { - bpPackages = append(bpPackages, "chrony") - } - - // if we have file system customization that will need to a new mount point - // the layout is converted to LVM so we need to corresponding packages - archName := t.arch.Name() - pt := t.basePartitionTables[archName] - haveNewMountpoint := false - - if fs := bp.Customizations.GetFilesystems(); fs != nil { - for i := 0; !haveNewMountpoint && i < len(fs); i++ { - haveNewMountpoint = !pt.ContainsMountpoint(fs[i].Mountpoint) - } - } - - if haveNewMountpoint { - bpPackages = append(bpPackages, "lvm2") - } - - // depsolve bp packages separately - // bp packages aren't restricted by exclude lists - mergedSets[blueprintPkgsKey] = rpmmd.PackageSet{Include: bpPackages} - kernel := bp.Customizations.GetKernel().Name - - // add bp kernel to main OS package set to avoid duplicate kernels - mergedSets[osPkgsKey] = mergedSets[osPkgsKey].Append(rpmmd.PackageSet{Include: []string{kernel}}) - - return distro.MakePackageSetChains(t, mergedSets, repos) -} - func (t *imageType) BuildPipelines() []string { return t.buildPipelines } @@ -401,15 +347,28 @@ func (t *imageType) PartitionType() string { return basePartitionTable.Type } -func (t *imageType) Manifest(customizations *blueprint.Customizations, +func (t *imageType) initializeManifest(bp *blueprint.Blueprint, options distro.ImageOptions, repos []rpmmd.RepoConfig, - packageSpecSets map[string][]rpmmd.PackageSpec, + packageSets map[string]rpmmd.PackageSet, containers []container.Spec, - seed int64) (distro.Manifest, error) { + seed int64) (*manifest.Manifest, error) { - if err := t.checkOptions(customizations, options, containers); err != nil { - return distro.Manifest{}, err + if err := t.checkOptions(bp.Customizations, options, containers); err != nil { + return nil, err + } + + // TODO: let image types specify valid workloads, rather than + // always assume Custom. + w := &workload.Custom{ + BaseWorkload: workload.BaseWorkload{ + Repos: packageSets[blueprintPkgsKey].Repositories, + }, + Packages: bp.GetPackagesEx(false), + } + if services := bp.Customizations.GetServices(); services != nil { + w.Services = services.Enabled + w.DisabledServices = services.Disabled } source := rand.NewSource(seed) @@ -417,24 +376,126 @@ func (t *imageType) Manifest(customizations *blueprint.Customizations, /* #nosec G404 */ rng := rand.New(source) - pipelines, err := t.pipelines(t, customizations, options, repos, packageSpecSets, rng) + if t.image == nil { + return nil, nil + } + img, err := t.image(w, t, bp.Customizations, options, packageSets, containers, rng) + if err != nil { + return nil, err + } + manifest := manifest.New() + _, err = img.InstantiateManifest(&manifest, repos, t.arch.distro.runner, rng) + if err != nil { + return nil, err + } + return &manifest, err +} + +func (t *imageType) Manifest(customizations *blueprint.Customizations, + options distro.ImageOptions, + repos []rpmmd.RepoConfig, + packageSets map[string][]rpmmd.PackageSpec, + containers []container.Spec, + seed int64) (distro.Manifest, error) { + + bp := &blueprint.Blueprint{Name: "empty blueprint"} + err := bp.Initialize() + if err != nil { + panic("could not initialize empty blueprint: " + err.Error()) + } + bp.Customizations = customizations + + manifest, err := t.initializeManifest(bp, options, repos, nil, containers, seed) if err != nil { return distro.Manifest{}, err } - // flatten spec sets for sources - allPackageSpecs := make([]rpmmd.PackageSpec, 0) - for _, specs := range packageSpecSets { - allPackageSpecs = append(allPackageSpecs, specs...) + return manifest.Serialize(packageSets) +} + +func (t *imageType) PackageSets(bp blueprint.Blueprint, options distro.ImageOptions, repos []rpmmd.RepoConfig) map[string][]rpmmd.PackageSet { + // merge package sets that appear in the image type with the package sets + // of the same name from the distro and arch + packageSets := make(map[string]rpmmd.PackageSet) + + for name, getter := range t.packageSets { + packageSets[name] = getter(t) + } + + // amend with repository information + globalRepos := make([]rpmmd.RepoConfig, 0) + for _, repo := range repos { + if len(repo.PackageSets) > 0 { + // only apply the repo to the listed package sets + for _, psName := range repo.PackageSets { + ps := packageSets[psName] + ps.Repositories = append(ps.Repositories, repo) + packageSets[psName] = ps + } + } else { + // no package sets were listed, so apply the repo + // to all package sets + globalRepos = append(globalRepos, repo) + } } - return json.Marshal( - osbuild.Manifest{ - Version: "2", - Pipelines: pipelines, - Sources: osbuild.GenSources(allPackageSpecs, nil, nil, containers), - }, - ) + // Similar to above, for edge-commit and edge-container, we need to set an + // ImageRef in order to properly initialize the manifest and package + // selection. + options.OSTree.ImageRef = t.OSTreeRef() + + // create a temporary container spec array with the info from the blueprint + // to initialize the manifest + containers := make([]container.Spec, len(bp.Containers)) + for idx := range bp.Containers { + containers[idx] = container.Spec{ + Source: bp.Containers[idx].Source, + TLSVerify: bp.Containers[idx].TLSVerify, + LocalName: bp.Containers[idx].Name, + } + } + + // create a manifest object and instantiate it with the computed packageSetChains + manifest, err := t.initializeManifest(&bp, options, globalRepos, packageSets, containers, 0) + if err != nil { + // TODO: handle manifest initialization errors more gracefully, we + // refuse to initialize manifests with invalid config. + logrus.Errorf("Initializing the manifest failed for %s (%s/%s): %v", t.Name(), t.arch.distro.Name(), t.arch.Name(), err) + return nil + } + return overridePackageNamesInSets(manifest.GetPackageSetChains()) +} + +// Runs overridePackageNames() on each package set's Include and Exclude list +// and replaces package names. +func overridePackageNamesInSets(chains map[string][]rpmmd.PackageSet) map[string][]rpmmd.PackageSet { + pkgSetChains := make(map[string][]rpmmd.PackageSet) + for name, chain := range chains { + cc := make([]rpmmd.PackageSet, len(chain)) + for idx := range chain { + cc[idx] = rpmmd.PackageSet{ + Include: overridePackageNames(chain[idx].Include), + Exclude: overridePackageNames(chain[idx].Exclude), + Repositories: chain[idx].Repositories, + } + } + pkgSetChains[name] = cc + } + return pkgSetChains +} + +// Resolve packages to their distro-specific name. This function is a temporary +// workaround to the issue of having packages specified outside of distros (in +// internal/manifest/os.go), which should be distro agnostic. In the future, +// this should be handled more generally. +func overridePackageNames(packages []string) []string { + for idx := range packages { + switch packages[idx] { + case "python3-pyyaml": + packages[idx] = "python3-PyYAML" + } + } + return packages } // checkOptions checks the validity and compatibility of options and customizations for the image type. diff --git a/internal/distro/rhel7/qcow2.go b/internal/distro/rhel7/qcow2.go index 6ee43a0ea9..541a3f7c40 100644 --- a/internal/distro/rhel7/qcow2.go +++ b/internal/distro/rhel7/qcow2.go @@ -16,13 +16,12 @@ var qcow2ImgType = imageType{ mimeType: "application/x-qemu-disk", kernelOptions: "console=tty0 console=ttyS0,115200n8 no_timer_check net.ifnames=0 crashkernel=auto", packageSets: map[string]packageSetFunc{ - buildPkgsKey: distroBuildPackageSet, - osPkgsKey: qcow2CommonPackageSet, + osPkgsKey: qcow2CommonPackageSet, }, defaultImageConfig: qcow2DefaultImgConfig, bootable: true, defaultSize: 10 * common.GibiByte, - pipelines: qcow2Pipelines, + image: liveImage, buildPipelines: []string{"build"}, payloadPipelines: []string{"os", "image", "qcow2"}, exports: []string{"qcow2"}, From 13044d8c044ae534b001bef16d235b82a08d1b0c Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Mon, 23 Jan 2023 21:02:38 +0100 Subject: [PATCH 10/16] distro/rhel7: delete unused functions, types, and constants --- internal/distro/rhel7/azure.go | 43 --- internal/distro/rhel7/distro.go | 15 -- internal/distro/rhel7/package_sets.go | 44 --- internal/distro/rhel7/pipelines.go | 359 ------------------------- internal/distro/rhel7/qcow2.go | 29 -- internal/distro/rhel7/stage_options.go | 80 ------ 6 files changed, 570 deletions(-) delete mode 100644 internal/distro/rhel7/pipelines.go delete mode 100644 internal/distro/rhel7/stage_options.go diff --git a/internal/distro/rhel7/azure.go b/internal/distro/rhel7/azure.go index 37fd70eaef..f776cf061c 100644 --- a/internal/distro/rhel7/azure.go +++ b/internal/distro/rhel7/azure.go @@ -1,9 +1,6 @@ package rhel7 import ( - "math/rand" - - "github.com/osbuild/osbuild-composer/internal/blueprint" "github.com/osbuild/osbuild-composer/internal/common" "github.com/osbuild/osbuild-composer/internal/disk" "github.com/osbuild/osbuild-composer/internal/distro" @@ -382,43 +379,3 @@ var azureRhuiBasePartitionTables = distro.BasePartitionTableMap{ }, }, } - -func vhdPipelines(compress bool) pipelinesFunc { - return func(t *imageType, customizations *blueprint.Customizations, options distro.ImageOptions, repos []rpmmd.RepoConfig, packageSetSpecs map[string][]rpmmd.PackageSpec, rng *rand.Rand) ([]osbuild.Pipeline, error) { - pipelines := make([]osbuild.Pipeline, 0) - pipelines = append(pipelines, *buildPipeline(repos, packageSetSpecs[buildPkgsKey], t.arch.distro.runner.String())) - - partitionTable, err := t.getPartitionTable(customizations.GetFilesystems(), options, rng) - if err != nil { - return nil, err - } - - treePipeline, err := osPipeline(t, repos, packageSetSpecs[osPkgsKey], customizations, options, partitionTable) - if err != nil { - return nil, err - } - pipelines = append(pipelines, *treePipeline) - - diskfile := "disk.img" - kernelVer := rpmmd.GetVerStrFromPackageSpecListPanic(packageSetSpecs[osPkgsKey], customizations.GetKernel().Name) - imagePipeline := liveImagePipeline(treePipeline.Name, diskfile, partitionTable, t.arch, kernelVer) - pipelines = append(pipelines, *imagePipeline) - - var qemufile string - if compress { - qemufile = "disk.vhd" - } else { - qemufile = t.filename - } - - qemuPipeline := qemuPipeline(imagePipeline.Name, diskfile, qemufile, osbuild.QEMUFormatVPC, osbuild.VPCOptions{ForceSize: common.ToPtr(false)}) - pipelines = append(pipelines, *qemuPipeline) - - if compress { - lastPipeline := pipelines[len(pipelines)-1] - pipelines = append(pipelines, *xzArchivePipeline(lastPipeline.Name, qemufile, t.Filename())) - } - - return pipelines, nil - } -} diff --git a/internal/distro/rhel7/distro.go b/internal/distro/rhel7/distro.go index c9985475f0..19be4cbd71 100644 --- a/internal/distro/rhel7/distro.go +++ b/internal/distro/rhel7/distro.go @@ -26,9 +26,6 @@ import ( const ( // package set names - // build package set name - buildPkgsKey = "build" - // main/common os image package set name osPkgsKey = "packages" @@ -205,8 +202,6 @@ func (a *architecture) Distro() distro.Distro { } // --- Image Type --- -type pipelinesFunc func(t *imageType, customizations *blueprint.Customizations, options distro.ImageOptions, repos []rpmmd.RepoConfig, packageSetSpecs map[string][]rpmmd.PackageSpec, rng *rand.Rand) ([]osbuild.Pipeline, error) - type packageSetFunc func(t *imageType) rpmmd.PackageSet type imageFunc func(workload workload.Workload, t *imageType, customizations *blueprint.Customizations, options distro.ImageOptions, packageSets map[string]rpmmd.PackageSet, containers []container.Spec, rng *rand.Rand) (image.ImageKind, error) @@ -228,7 +223,6 @@ type imageType struct { buildPipelines []string payloadPipelines []string exports []string - pipelines pipelinesFunc image imageFunc // bootable image @@ -267,15 +261,6 @@ func (t *imageType) Size(size uint64) uint64 { return size } -func (t *imageType) getPackages(name string) rpmmd.PackageSet { - getter := t.packageSets[name] - if getter == nil { - return rpmmd.PackageSet{} - } - - return getter(t) -} - func (t *imageType) BuildPipelines() []string { return t.buildPipelines } diff --git a/internal/distro/rhel7/package_sets.go b/internal/distro/rhel7/package_sets.go index 3cef77906f..00c576ce65 100644 --- a/internal/distro/rhel7/package_sets.go +++ b/internal/distro/rhel7/package_sets.go @@ -7,50 +7,6 @@ import ( "github.com/osbuild/osbuild-composer/internal/rpmmd" ) -// BUILD PACKAGE SETS - -// distro-wide build package set -func distroBuildPackageSet(t *imageType) rpmmd.PackageSet { - ps := rpmmd.PackageSet{ - Include: []string{ - "dosfstools", - "e2fsprogs", - "gdisk", - "lvm2", - "parted", - "policycoreutils", - "python3", - "python3-iniparse", - "python3-PyYAML", - "qemu-img", - "rpm", - "selinux-policy-targeted", - "systemd", - "tar", - "util-linux", - "xfsprogs", - "xz", - }, - } - - switch t.arch.Name() { - - case distro.X86_64ArchName: - ps = ps.Append(x8664BuildPackageSet(t)) - } - - return ps -} - -// x86_64 build package set -func x8664BuildPackageSet(t *imageType) rpmmd.PackageSet { - return rpmmd.PackageSet{ - Include: []string{ - "grub2-pc", - }, - } -} - // BOOT PACKAGE SETS func bootPackageSet(t *imageType) rpmmd.PackageSet { diff --git a/internal/distro/rhel7/pipelines.go b/internal/distro/rhel7/pipelines.go deleted file mode 100644 index 07de17ae43..0000000000 --- a/internal/distro/rhel7/pipelines.go +++ /dev/null @@ -1,359 +0,0 @@ -package rhel7 - -import ( - "fmt" - - "github.com/osbuild/osbuild-composer/internal/blueprint" - "github.com/osbuild/osbuild-composer/internal/disk" - "github.com/osbuild/osbuild-composer/internal/distro" - "github.com/osbuild/osbuild-composer/internal/osbuild" - "github.com/osbuild/osbuild-composer/internal/rpmmd" - "github.com/osbuild/osbuild-composer/internal/users" -) - -func buildPipeline(repos []rpmmd.RepoConfig, buildPackageSpecs []rpmmd.PackageSpec, runner string) *osbuild.Pipeline { - p := new(osbuild.Pipeline) - p.Name = "build" - p.Runner = runner - p.AddStage(osbuild.NewRPMStage(rpmStageOptions(repos), osbuild.NewRpmStageSourceFilesInputs(buildPackageSpecs))) - p.AddStage(osbuild.NewSELinuxStage(selinuxStageOptions(true))) - return p -} - -func prependKernelCmdlineStage(pipeline *osbuild.Pipeline, t *imageType, pt *disk.PartitionTable) *osbuild.Pipeline { - if t.arch.name == distro.S390xArchName { - rootFs := pt.FindMountable("/") - if rootFs == nil { - panic("s390x image must have a root filesystem, this is a programming error") - } - kernelStage := osbuild.NewKernelCmdlineStage(osbuild.NewKernelCmdlineStageOptions(rootFs.GetFSSpec().UUID, t.kernelOptions)) - pipeline.Stages = append([]*osbuild.Stage{kernelStage}, pipeline.Stages...) - } - return pipeline -} - -func osPipeline(t *imageType, - repos []rpmmd.RepoConfig, - packages []rpmmd.PackageSpec, - c *blueprint.Customizations, - options distro.ImageOptions, - pt *disk.PartitionTable) (*osbuild.Pipeline, error) { - - imageConfig := t.getDefaultImageConfig() - p := new(osbuild.Pipeline) - - p.Name = "os" - p.Build = "name:build" - - rpmOptions := osbuild.NewRPMStageOptions(repos) - rpmOptions.GPGKeysFromTree = imageConfig.GPGKeyFiles - - if imageConfig.ExcludeDocs != nil && *imageConfig.ExcludeDocs { - if rpmOptions.Exclude == nil { - rpmOptions.Exclude = &osbuild.Exclude{} - } - rpmOptions.Exclude.Docs = true - } - p.AddStage(osbuild.NewRPMStage(rpmOptions, osbuild.NewRpmStageSourceFilesInputs(packages))) - - // Difference to RHEL8, 9 pipelines: no BLS stage - - language, keyboard := c.GetPrimaryLocale() - if language != nil { - p.AddStage(osbuild.NewLocaleStage(&osbuild.LocaleStageOptions{Language: *language})) - } else if imageConfig.Locale != nil { - p.AddStage(osbuild.NewLocaleStage(&osbuild.LocaleStageOptions{Language: *imageConfig.Locale})) - } - if keyboard != nil { - p.AddStage(osbuild.NewKeymapStage(&osbuild.KeymapStageOptions{Keymap: *keyboard})) - } else if imageConfig.Keyboard != nil { - p.AddStage(osbuild.NewKeymapStage(imageConfig.Keyboard)) - } - - if hostname := c.GetHostname(); hostname != nil { - p.AddStage(osbuild.NewHostnameStage(&osbuild.HostnameStageOptions{Hostname: *hostname})) - } - - timezone, ntpServers := c.GetTimezoneSettings() - if timezone != nil { - p.AddStage(osbuild.NewTimezoneStage(&osbuild.TimezoneStageOptions{Zone: *timezone})) - } else if imageConfig.Timezone != nil { - p.AddStage(osbuild.NewTimezoneStage(&osbuild.TimezoneStageOptions{Zone: *imageConfig.Timezone})) - } - - if len(ntpServers) > 0 { - servers := make([]osbuild.ChronyConfigServer, len(ntpServers)) - for idx, server := range ntpServers { - servers[idx] = osbuild.ChronyConfigServer{Hostname: server} - } - p.AddStage(osbuild.NewChronyStage(&osbuild.ChronyStageOptions{Servers: servers})) - } else if imageConfig.TimeSynchronization != nil { - p.AddStage(osbuild.NewChronyStage(imageConfig.TimeSynchronization)) - } - - if groups := c.GetGroups(); len(groups) > 0 { - p.AddStage(osbuild.NewGroupsStage(osbuild.NewGroupsStageOptions(users.GroupsFromBP(groups)))) - } - - if userOptions, err := osbuild.NewUsersStageOptions(users.UsersFromBP(c.GetUsers()), false); err != nil { - return nil, err - } else if userOptions != nil { - p.AddStage(osbuild.NewUsersStage(userOptions)) - } - - if services := c.GetServices(); services != nil || imageConfig.EnabledServices != nil || - imageConfig.DisabledServices != nil || imageConfig.DefaultTarget != nil { - defaultTarget := "" - if imageConfig.DefaultTarget != nil { - defaultTarget = *imageConfig.DefaultTarget - } - p.AddStage(osbuild.NewSystemdStage(systemdStageOptions( - imageConfig.EnabledServices, - imageConfig.DisabledServices, - services, - defaultTarget, - ))) - } - - var fwStageOptions *osbuild.FirewallStageOptions - if firewallCustomization := c.GetFirewall(); firewallCustomization != nil { - fwStageOptions = firewallStageOptions(firewallCustomization) - } - if firewallConfig := imageConfig.Firewall; firewallConfig != nil { - // merge the user-provided firewall config with the default one - if fwStageOptions != nil { - fwStageOptions = &osbuild.FirewallStageOptions{ - // Prefer the firewall ports and services settings provided - // via BP customization. - Ports: fwStageOptions.Ports, - EnabledServices: fwStageOptions.EnabledServices, - DisabledServices: fwStageOptions.DisabledServices, - // Default zone can not be set using BP customizations, therefore - // default to the one provided in the default image configuration. - DefaultZone: firewallConfig.DefaultZone, - } - } else { - fwStageOptions = firewallConfig - } - } - if fwStageOptions != nil { - p.AddStage(osbuild.NewFirewallStage(fwStageOptions)) - } - - for _, sysconfigConfig := range imageConfig.Sysconfig { - p.AddStage(osbuild.NewSysconfigStage(sysconfigConfig)) - } - - if t.arch.distro.isRHEL() { - if options.Subscription != nil { - commands := []string{ - fmt.Sprintf("/usr/sbin/subscription-manager register --org=%s --activationkey=%s --serverurl %s --baseurl %s", options.Subscription.Organization, options.Subscription.ActivationKey, options.Subscription.ServerUrl, options.Subscription.BaseUrl), - } - if options.Subscription.Insights { - commands = append(commands, "/usr/bin/insights-client --register") - } - p.AddStage(osbuild.NewFirstBootStage(&osbuild.FirstBootStageOptions{ - Commands: commands, - WaitForNetwork: true, - })) - - if rhsmConfig, exists := imageConfig.RHSMConfig[distro.RHSMConfigWithSubscription]; exists { - p.AddStage(osbuild.NewRHSMStage(rhsmConfig)) - } - } else { - if rhsmConfig, exists := imageConfig.RHSMConfig[distro.RHSMConfigNoSubscription]; exists { - p.AddStage(osbuild.NewRHSMStage(rhsmConfig)) - } - } - } - - for _, systemdLogindConfig := range imageConfig.SystemdLogind { - p.AddStage(osbuild.NewSystemdLogindStage(systemdLogindConfig)) - } - - for _, cloudInitConfig := range imageConfig.CloudInit { - p.AddStage(osbuild.NewCloudInitStage(cloudInitConfig)) - } - - for _, modprobeConfig := range imageConfig.Modprobe { - p.AddStage(osbuild.NewModprobeStage(modprobeConfig)) - } - - for _, dracutConfConfig := range imageConfig.DracutConf { - p.AddStage(osbuild.NewDracutConfStage(dracutConfConfig)) - } - - for _, systemdUnitConfig := range imageConfig.SystemdUnit { - p.AddStage(osbuild.NewSystemdUnitStage(systemdUnitConfig)) - } - - if authselectConfig := imageConfig.Authselect; authselectConfig != nil { - p.AddStage(osbuild.NewAuthselectStage(authselectConfig)) - } - - if seLinuxConfig := imageConfig.SELinuxConfig; seLinuxConfig != nil { - p.AddStage(osbuild.NewSELinuxConfigStage(seLinuxConfig)) - } - - if tunedConfig := imageConfig.Tuned; tunedConfig != nil { - p.AddStage(osbuild.NewTunedStage(tunedConfig)) - } - - for _, tmpfilesdConfig := range imageConfig.Tmpfilesd { - p.AddStage(osbuild.NewTmpfilesdStage(tmpfilesdConfig)) - } - - for _, pamLimitsConfConfig := range imageConfig.PamLimitsConf { - p.AddStage(osbuild.NewPamLimitsConfStage(pamLimitsConfConfig)) - } - - for _, sysctldConfig := range imageConfig.Sysctld { - p.AddStage(osbuild.NewSysctldStage(sysctldConfig)) - } - - for _, dnfConfig := range imageConfig.DNFConfig { - p.AddStage(osbuild.NewDNFConfigStage(dnfConfig)) - } - - if sshdConfig := imageConfig.SshdConfig; sshdConfig != nil { - p.AddStage((osbuild.NewSshdConfigStage(sshdConfig))) - } - - if authConfig := imageConfig.Authconfig; authConfig != nil { - p.AddStage(osbuild.NewAuthconfigStage(authConfig)) - } - - if pwQuality := imageConfig.PwQuality; pwQuality != nil { - p.AddStage(osbuild.NewPwqualityConfStage(pwQuality)) - } - - if waConfig := imageConfig.WAAgentConfig; waConfig != nil { - p.AddStage(osbuild.NewWAAgentConfStage(waConfig)) - } - - if yumConfig := imageConfig.YumConfig; yumConfig != nil { - p.AddStage(osbuild.NewYumConfigStage(yumConfig)) - } - - for _, yumRepo := range imageConfig.YUMRepos { - p.AddStage(osbuild.NewYumReposStage(yumRepo)) - } - - if udevRules := imageConfig.UdevRules; udevRules != nil { - p.AddStage(osbuild.NewUdevRulesStage(udevRules)) - } - - if pt != nil { - - kernelOptions := osbuild.GenImageKernelOptions(pt) - if t.kernelOptions != "" { - kernelOptions = append(kernelOptions, t.kernelOptions) - } - if bpKernel := c.GetKernel(); bpKernel.Append != "" { - kernelOptions = append(kernelOptions, bpKernel.Append) - } - - p.AddStage(osbuild.NewFSTabStage(osbuild.NewFSTabStageOptions(pt))) - kernelVer := rpmmd.GetVerStrFromPackageSpecListPanic(packages, c.GetKernel().Name) - - var bootloader *osbuild.Stage - if t.arch.name == distro.S390xArchName { - p = prependKernelCmdlineStage(p, t, pt) - bootloader = osbuild.NewZiplStage(new(osbuild.ZiplStageOptions)) - } else { - product := osbuild.GRUB2Product{ - Name: t.arch.distro.product, - Version: t.arch.distro.osVersion, - Nick: t.arch.distro.nick, - } - - ver, _ := rpmmd.GetVerStrFromPackageSpecList(packages, "dracut-config-rescue") - haveRescue := ver != "" - - id := "76a22bf4-f153-4541-b6c7-0332c0dfaeac" - entries := osbuild.MakeGrub2MenuEntries(id, kernelVer, product, haveRescue) - - var vendor string // whether to boot via uefi, and if so the vendor - var legacy string // whether to boot via legacy, and if so the platform - - bt := t.getBootType() - - if bt == distro.HybridBootType || bt == distro.LegacyBootType { - legacy = t.arch.legacy - } - - if bt == distro.HybridBootType || bt == distro.UEFIBootType { - vendor = t.arch.distro.vendor - } - - // we rely on stage option validation to detect invalid boot configurations - options := osbuild.NewGrub2LegacyStageOptions( - imageConfig.Grub2Config, - pt, - kernelOptions, - legacy, - vendor, - entries, - ) - bootloader = osbuild.NewGrub2LegacyStage(options) - } - - p.AddStage(bootloader) - } - - // Relabel the tree, unless the `NoSElinux` flag is explicitly set to `true` - if imageConfig.NoSElinux == nil || imageConfig.NoSElinux != nil && !*imageConfig.NoSElinux { - p.AddStage(osbuild.NewSELinuxStage(selinuxStageOptions(false))) - } - - return p, nil -} - -func liveImagePipeline(inputPipelineName string, outputFilename string, pt *disk.PartitionTable, arch *architecture, kernelVer string) *osbuild.Pipeline { - p := new(osbuild.Pipeline) - p.Name = "image" - p.Build = "name:build" - - for _, stage := range osbuild.GenImagePrepareStages(pt, outputFilename, osbuild.PTSgdisk) { - p.AddStage(stage) - } - - inputName := "root-tree" - copyOptions, copyDevices, copyMounts := osbuild.GenCopyFSTreeOptions(inputName, inputPipelineName, outputFilename, pt) - copyInputs := osbuild.NewPipelineTreeInputs(inputName, inputPipelineName) - p.AddStage(osbuild.NewCopyStage(copyOptions, copyInputs, copyDevices, copyMounts)) - - for _, stage := range osbuild.GenImageFinishStages(pt, outputFilename) { - p.AddStage(stage) - } - - loopback := osbuild.NewLoopbackDevice(&osbuild.LoopbackDeviceOptions{Filename: outputFilename}) - p.AddStage(bootloaderInstStage(outputFilename, pt, arch, kernelVer, copyDevices, copyMounts, loopback)) - return p -} - -func qemuPipeline(inputPipelineName, inputFilename, outputFilename string, format osbuild.QEMUFormat, formatOptions osbuild.QEMUFormatOptions) *osbuild.Pipeline { - p := new(osbuild.Pipeline) - p.Name = string(format) - p.Build = "name:build" - - qemuStage := osbuild.NewQEMUStage( - osbuild.NewQEMUStageOptions(outputFilename, format, formatOptions), - osbuild.NewQemuStagePipelineFilesInputs(inputPipelineName, inputFilename), - ) - p.AddStage(qemuStage) - return p -} - -func xzArchivePipeline(inputPipelineName, inputFilename, outputFilename string) *osbuild.Pipeline { - p := new(osbuild.Pipeline) - p.Name = "archive" - p.Build = "name:build" - - p.AddStage(osbuild.NewXzStage( - osbuild.NewXzStageOptions(outputFilename), - osbuild.NewFilesInputs(osbuild.NewFilesInputReferencesPipeline(inputPipelineName, inputFilename)), - )) - - return p -} diff --git a/internal/distro/rhel7/qcow2.go b/internal/distro/rhel7/qcow2.go index 541a3f7c40..e5a33cb01a 100644 --- a/internal/distro/rhel7/qcow2.go +++ b/internal/distro/rhel7/qcow2.go @@ -1,9 +1,6 @@ package rhel7 import ( - "math/rand" - - "github.com/osbuild/osbuild-composer/internal/blueprint" "github.com/osbuild/osbuild-composer/internal/common" "github.com/osbuild/osbuild-composer/internal/distro" "github.com/osbuild/osbuild-composer/internal/osbuild" @@ -125,29 +122,3 @@ func qcow2CommonPackageSet(t *imageType) rpmmd.PackageSet { return ps } - -func qcow2Pipelines(t *imageType, customizations *blueprint.Customizations, options distro.ImageOptions, repos []rpmmd.RepoConfig, packageSetSpecs map[string][]rpmmd.PackageSpec, rng *rand.Rand) ([]osbuild.Pipeline, error) { - pipelines := make([]osbuild.Pipeline, 0) - pipelines = append(pipelines, *buildPipeline(repos, packageSetSpecs[buildPkgsKey], t.arch.distro.runner.String())) - - partitionTable, err := t.getPartitionTable(customizations.GetFilesystems(), options, rng) - if err != nil { - return nil, err - } - - treePipeline, err := osPipeline(t, repos, packageSetSpecs[osPkgsKey], customizations, options, partitionTable) - if err != nil { - return nil, err - } - pipelines = append(pipelines, *treePipeline) - - diskfile := "disk.img" - kernelVer := rpmmd.GetVerStrFromPackageSpecListPanic(packageSetSpecs[osPkgsKey], customizations.GetKernel().Name) - imagePipeline := liveImagePipeline(treePipeline.Name, diskfile, partitionTable, t.arch, kernelVer) - pipelines = append(pipelines, *imagePipeline) - - qemuPipeline := qemuPipeline(imagePipeline.Name, diskfile, t.filename, osbuild.QEMUFormatQCOW2, osbuild.QCOW2Options{Compat: "0.10"}) - pipelines = append(pipelines, *qemuPipeline) - - return pipelines, nil -} diff --git a/internal/distro/rhel7/stage_options.go b/internal/distro/rhel7/stage_options.go deleted file mode 100644 index 6871ac6965..0000000000 --- a/internal/distro/rhel7/stage_options.go +++ /dev/null @@ -1,80 +0,0 @@ -package rhel7 - -import ( - "github.com/osbuild/osbuild-composer/internal/blueprint" - "github.com/osbuild/osbuild-composer/internal/common" - "github.com/osbuild/osbuild-composer/internal/disk" - "github.com/osbuild/osbuild-composer/internal/distro" - "github.com/osbuild/osbuild-composer/internal/osbuild" - "github.com/osbuild/osbuild-composer/internal/rpmmd" -) - -func bootloaderInstStage(filename string, pt *disk.PartitionTable, arch *architecture, kernelVer string, devices *osbuild.Devices, mounts *osbuild.Mounts, disk *osbuild.Device) *osbuild.Stage { - platform := arch.legacy - if platform != "" { - return osbuild.NewGrub2InstStage(osbuild.NewGrub2InstStageOption(filename, pt, platform)) - } - - if arch.name == distro.S390xArchName { - return osbuild.NewZiplInstStage(osbuild.NewZiplInstStageOptions(kernelVer, pt), disk, devices, mounts) - } - - return nil -} - -func rpmStageOptions(repos []rpmmd.RepoConfig) *osbuild.RPMStageOptions { - var gpgKeys []string - for _, repo := range repos { - if repo.GPGKey == "" { - continue - } - gpgKeys = append(gpgKeys, repo.GPGKey) - } - - return &osbuild.RPMStageOptions{ - GPGKeys: gpgKeys, - } -} - -// selinuxStageOptions returns the options for the org.osbuild.selinux stage. -// Setting the argument to 'true' relabels the '/usr/bin/cp' and '/usr/bin/tar' -// binaries with 'install_exec_t'. This should be set in the build root. -func selinuxStageOptions(labelcp bool) *osbuild.SELinuxStageOptions { - options := &osbuild.SELinuxStageOptions{ - FileContexts: "etc/selinux/targeted/contexts/files/file_contexts", - } - if labelcp { - options.Labels = map[string]string{ - "/usr/bin/cp": "system_u:object_r:install_exec_t:s0", - "/usr/bin/tar": "system_u:object_r:install_exec_t:s0", - } - } else { - options.ForceAutorelabel = common.ToPtr(true) - } - return options -} - -func firewallStageOptions(firewall *blueprint.FirewallCustomization) *osbuild.FirewallStageOptions { - options := osbuild.FirewallStageOptions{ - Ports: firewall.Ports, - } - - if firewall.Services != nil { - options.EnabledServices = firewall.Services.Enabled - options.DisabledServices = firewall.Services.Disabled - } - - return &options -} - -func systemdStageOptions(enabledServices, disabledServices []string, s *blueprint.ServicesCustomization, target string) *osbuild.SystemdStageOptions { - if s != nil { - enabledServices = append(enabledServices, s.Enabled...) - disabledServices = append(disabledServices, s.Disabled...) - } - return &osbuild.SystemdStageOptions{ - EnabledServices: enabledServices, - DisabledServices: disabledServices, - DefaultTarget: target, - } -} From a21df5d143272cf02cd7354c941c7d1213358f9e Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Mon, 23 Jan 2023 23:09:41 +0100 Subject: [PATCH 11/16] manifest: make the partition tool for raw images configurable Add the partition tool as an option on the Raw pipeline. Set it to the old value (sfdisk) by default. Expose the option up through the liveImage image kind so that the distribution can set it if needed. For RHEL 7, set it to sgdisk. --- internal/distro/rhel7/images.go | 2 ++ internal/image/live.go | 5 ++++- internal/manifest/raw.go | 10 ++++++++-- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/internal/distro/rhel7/images.go b/internal/distro/rhel7/images.go index 6434801545..46028f354a 100644 --- a/internal/distro/rhel7/images.go +++ b/internal/distro/rhel7/images.go @@ -181,6 +181,8 @@ func liveImage(workload workload.Workload, img.Environment = t.environment img.Workload = workload img.Compression = t.compression + img.PartTool = osbuild.PTSgdisk // all RHEL 7 images should use sgdisk + // TODO: move generation into LiveImage pt, err := t.getPartitionTable(customizations.GetFilesystems(), options, rng) if err != nil { diff --git a/internal/image/live.go b/internal/image/live.go index a2ab866042..0dec72754e 100644 --- a/internal/image/live.go +++ b/internal/image/live.go @@ -25,11 +25,13 @@ type LiveImage struct { Workload workload.Workload Filename string Compression string + PartTool osbuild.PartTool } func NewLiveImage() *LiveImage { return &LiveImage{ - Base: NewBase("live-image"), + Base: NewBase("live-image"), + PartTool: osbuild.PTSfdisk, } } @@ -47,6 +49,7 @@ func (img *LiveImage) InstantiateManifest(m *manifest.Manifest, osPipeline.Workload = img.Workload imagePipeline := manifest.NewRawImage(m, buildPipeline, osPipeline) + imagePipeline.PartTool = img.PartTool var artifact *artifact.Artifact var artifactPipeline manifest.Pipeline diff --git a/internal/manifest/raw.go b/internal/manifest/raw.go index 3f18e42d9a..cee829bc8c 100644 --- a/internal/manifest/raw.go +++ b/internal/manifest/raw.go @@ -12,6 +12,7 @@ type RawImage struct { Base treePipeline *OS Filename string + PartTool osbuild.PartTool } func NewRawImage(m *Manifest, @@ -26,12 +27,17 @@ func NewRawImage(m *Manifest, if treePipeline.Base.manifest != m { panic("tree pipeline from different manifest") } + p.PartTool = osbuild.PTSfdisk // default; can be changed after initialisation m.addPipeline(p) return p } func (p *RawImage) getBuildPackages() []string { - return p.treePipeline.getBuildPackages() + pkgs := p.treePipeline.getBuildPackages() + if p.PartTool == osbuild.PTSgdisk { + pkgs = append(pkgs, "gdisk") + } + return pkgs } func (p *RawImage) serialize() osbuild.Pipeline { @@ -42,7 +48,7 @@ func (p *RawImage) serialize() osbuild.Pipeline { panic("no partition table in live image") } - for _, stage := range osbuild.GenImagePrepareStages(pt, p.Filename, osbuild.PTSfdisk) { + for _, stage := range osbuild.GenImagePrepareStages(pt, p.Filename, p.PartTool) { pipeline.AddStage(stage) } From 14da6e2f1b6f9707e9e6839ea8680468523344e9 Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Mon, 23 Jan 2023 23:45:18 +0100 Subject: [PATCH 12/16] manifest: add support for selecting grub2.legacy Older OS versions (RHEL 7) with older versions of grub2 don't support BLS entries. Setting NoBLS to true configures the bootloader with traditional menu entries through the grub2.legacy osbuild stage. This requires specifying extra information for the OS to the pipeline: version, product, and nick. --- internal/distro/rhel7/images.go | 4 ++ internal/image/live.go | 9 ++++ internal/manifest/os.go | 81 +++++++++++++++++++++++---------- 3 files changed, 69 insertions(+), 25 deletions(-) diff --git a/internal/distro/rhel7/images.go b/internal/distro/rhel7/images.go index 46028f354a..f3295096a8 100644 --- a/internal/distro/rhel7/images.go +++ b/internal/distro/rhel7/images.go @@ -182,6 +182,10 @@ func liveImage(workload workload.Workload, img.Workload = workload img.Compression = t.compression img.PartTool = osbuild.PTSgdisk // all RHEL 7 images should use sgdisk + img.NoBLS = true // RHEL 7 grub does not support BLS + img.OSProduct = t.arch.distro.product + img.OSVersion = t.arch.distro.osVersion + img.OSNick = t.arch.distro.nick // TODO: move generation into LiveImage pt, err := t.getPartitionTable(customizations.GetFilesystems(), options, rng) diff --git a/internal/image/live.go b/internal/image/live.go index 0dec72754e..bb4843278c 100644 --- a/internal/image/live.go +++ b/internal/image/live.go @@ -26,6 +26,11 @@ type LiveImage struct { Filename string Compression string PartTool osbuild.PartTool + + NoBLS bool + OSProduct string + OSVersion string + OSNick string } func NewLiveImage() *LiveImage { @@ -47,6 +52,10 @@ func (img *LiveImage) InstantiateManifest(m *manifest.Manifest, osPipeline.OSCustomizations = img.OSCustomizations osPipeline.Environment = img.Environment osPipeline.Workload = img.Workload + osPipeline.NoBLS = img.NoBLS + osPipeline.OSProduct = img.OSProduct + osPipeline.OSVersion = img.OSVersion + osPipeline.OSNick = img.OSNick imagePipeline := manifest.NewRawImage(m, buildPipeline, osPipeline) imagePipeline.PartTool = img.PartTool diff --git a/internal/manifest/os.go b/internal/manifest/os.go index f36c824c95..0088968dec 100644 --- a/internal/manifest/os.go +++ b/internal/manifest/os.go @@ -130,6 +130,13 @@ type OS struct { packageSpecs []rpmmd.PackageSpec platform platform.Platform kernelVer string + + // NoBLS configures the image bootloader with traditional menu entries + // instead of BLS. Required for legacy systems like RHEL 7. + NoBLS bool + OSProduct string + OSVersion string + OSNick string } // NewOS creates a new OS pipeline. build is the build pipeline to use for @@ -287,11 +294,13 @@ func (p *OS) serialize() osbuild.Pipeline { } pipeline.AddStage(osbuild.NewRPMStage(rpmOptions, osbuild.NewRpmStageSourceFilesInputs(p.packageSpecs))) - // If the /boot is on a separate partition, the prefix for the BLS stage must be "" - if p.PartitionTable == nil || p.PartitionTable.FindMountable("/boot") == nil { - pipeline.AddStage(osbuild.NewFixBLSStage(&osbuild.FixBLSStageOptions{})) - } else { - pipeline.AddStage(osbuild.NewFixBLSStage(&osbuild.FixBLSStageOptions{Prefix: common.ToPtr("")})) + if !p.NoBLS { + // If the /boot is on a separate partition, the prefix for the BLS stage must be "" + if p.PartitionTable == nil || p.PartitionTable.FindMountable("/boot") == nil { + pipeline.AddStage(osbuild.NewFixBLSStage(&osbuild.FixBLSStageOptions{})) + } else { + pipeline.AddStage(osbuild.NewFixBLSStage(&osbuild.FixBLSStageOptions{Prefix: common.ToPtr("")})) + } } if len(p.Containers) > 0 { @@ -507,30 +516,52 @@ func (p *OS) serialize() osbuild.Pipeline { case platform.ARCH_S390X: bootloader = osbuild.NewZiplStage(new(osbuild.ZiplStageOptions)) default: - var options *osbuild.GRUB2StageOptions - options = osbuild.NewGrub2StageOptionsUnified(pt, - p.kernelVer, - p.platform.GetUEFIVendor() != "", - p.platform.GetBIOSPlatform(), - p.platform.GetUEFIVendor(), false) - if cfg := p.Grub2Config; cfg != nil { - // TODO: don't store Grub2Config in OSPipeline, making the overrides unnecessary - // grub2.Config.Default is owned and set by `NewGrub2StageOptionsUnified` - // and thus we need to preserve it - if options.Config != nil { - cfg.Default = options.Config.Default + if p.NoBLS { + // BLS entries not supported: use grub2.legacy + id := "76a22bf4-f153-4541-b6c7-0332c0dfaeac" + product := osbuild.GRUB2Product{ + Name: p.OSProduct, + Version: p.OSVersion, + Nick: p.OSNick, } - options.Config = cfg - } - if p.KernelOptionsBootloader { - options.WriteCmdLine = nil - if options.UEFI != nil { - options.UEFI.Unified = false + rescueVer, _ := rpmmd.GetVerStrFromPackageSpecList(p.packageSpecs, "dracut-config-rescue") + hasRescue := rescueVer != "" + bootloader = osbuild.NewGrub2LegacyStage( + osbuild.NewGrub2LegacyStageOptions( + p.Grub2Config, + p.PartitionTable, + kernelOptions, + p.platform.GetBIOSPlatform(), + p.platform.GetUEFIVendor(), + osbuild.MakeGrub2MenuEntries(id, p.kernelVer, product, hasRescue), + ), + ) + } else { + options := osbuild.NewGrub2StageOptionsUnified(pt, + p.kernelVer, + p.platform.GetUEFIVendor() != "", + p.platform.GetBIOSPlatform(), + p.platform.GetUEFIVendor(), false) + if cfg := p.Grub2Config; cfg != nil { + // TODO: don't store Grub2Config in OSPipeline, making the overrides unnecessary + // grub2.Config.Default is owned and set by `NewGrub2StageOptionsUnified` + // and thus we need to preserve it + if options.Config != nil { + cfg.Default = options.Config.Default + } + + options.Config = cfg + } + if p.KernelOptionsBootloader { + options.WriteCmdLine = nil + if options.UEFI != nil { + options.UEFI.Unified = false + } + options.KernelOptions = strings.Join(kernelOptions, " ") } - options.KernelOptions = strings.Join(kernelOptions, " ") + bootloader = osbuild.NewGRUB2Stage(options) } - bootloader = osbuild.NewGRUB2Stage(options) } pipeline.AddStage(bootloader) From b4049d1d68b8a0d4778bdb8c5fbd38b3c0f3a583 Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Tue, 24 Jan 2023 18:34:39 +0100 Subject: [PATCH 13/16] manifest: support specifying force_size for VPC The RHEL 7 vpc subformat in qemu does not support force_size so we need to be able to disable it. The parameter in all parts is defined as a pointer because the default value is 'true'. Not specifying it will keep the option in the osbuild stage as 'nil', falling back to 'true' in osbuild. --- internal/distro/rhel7/images.go | 6 ++++-- internal/image/live.go | 2 ++ internal/manifest/vpc.go | 6 +++++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/internal/distro/rhel7/images.go b/internal/distro/rhel7/images.go index f3295096a8..89a4d7c088 100644 --- a/internal/distro/rhel7/images.go +++ b/internal/distro/rhel7/images.go @@ -4,6 +4,7 @@ import ( "math/rand" "github.com/osbuild/osbuild-composer/internal/blueprint" + "github.com/osbuild/osbuild-composer/internal/common" "github.com/osbuild/osbuild-composer/internal/container" "github.com/osbuild/osbuild-composer/internal/distro" "github.com/osbuild/osbuild-composer/internal/image" @@ -181,8 +182,9 @@ func liveImage(workload workload.Workload, img.Environment = t.environment img.Workload = workload img.Compression = t.compression - img.PartTool = osbuild.PTSgdisk // all RHEL 7 images should use sgdisk - img.NoBLS = true // RHEL 7 grub does not support BLS + img.PartTool = osbuild.PTSgdisk // all RHEL 7 images should use sgdisk + img.ForceSize = common.ToPtr(false) // RHEL 7 qemu vpc subformat does not support force_size + img.NoBLS = true // RHEL 7 grub does not support BLS img.OSProduct = t.arch.distro.product img.OSVersion = t.arch.distro.osVersion img.OSNick = t.arch.distro.nick diff --git a/internal/image/live.go b/internal/image/live.go index bb4843278c..cb6899b015 100644 --- a/internal/image/live.go +++ b/internal/image/live.go @@ -25,6 +25,7 @@ type LiveImage struct { Workload workload.Workload Filename string Compression string + ForceSize *bool PartTool osbuild.PartTool NoBLS bool @@ -82,6 +83,7 @@ func (img *LiveImage) InstantiateManifest(m *manifest.Manifest, if img.Compression == "" { vpcPipeline.Filename = img.Filename } + vpcPipeline.ForceSize = img.ForceSize artifactPipeline = vpcPipeline artifact = vpcPipeline.Export() case platform.FORMAT_VMDK: diff --git a/internal/manifest/vpc.go b/internal/manifest/vpc.go index a89a725018..a86966bf6e 100644 --- a/internal/manifest/vpc.go +++ b/internal/manifest/vpc.go @@ -10,6 +10,8 @@ type VPC struct { Base Filename string + ForceSize *bool + imgPipeline *RawImage } @@ -35,8 +37,10 @@ func NewVPC(m *Manifest, func (p *VPC) serialize() osbuild.Pipeline { pipeline := p.Base.serialize() + formatOptions := osbuild.VPCOptions{ForceSize: p.ForceSize} + pipeline.AddStage(osbuild.NewQEMUStage( - osbuild.NewQEMUStageOptions(p.Filename, osbuild.QEMUFormatVPC, nil), + osbuild.NewQEMUStageOptions(p.Filename, osbuild.QEMUFormatVPC, formatOptions), osbuild.NewQemuStagePipelineFilesInputs(p.imgPipeline.Name(), p.imgPipeline.Filename), )) From 9668f398b5c2601159dd16c290140821c0f1b618 Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Tue, 24 Jan 2023 19:02:29 +0100 Subject: [PATCH 14/16] manifest: support force-relabel for SELinux in image config The RHEL 7 images need to enable the force_autorelabel option for the SELinux stage in osbuild. This option should almost never be used but it was added specifically for RHEL 7. With the rewrite to the new definitions and the sharing of pipeline code between all distros, we need to add support to all stages of the pipeline generation to be able to enable it. --- internal/distro/image_config.go | 4 ++++ internal/distro/rhel7/azure.go | 3 ++- internal/distro/rhel7/images.go | 1 + internal/distro/rhel7/qcow2.go | 3 ++- internal/manifest/os.go | 5 ++++- 5 files changed, 13 insertions(+), 3 deletions(-) diff --git a/internal/distro/image_config.go b/internal/distro/image_config.go index f558c43cd5..5d0d4956f6 100644 --- a/internal/distro/image_config.go +++ b/internal/distro/image_config.go @@ -31,6 +31,10 @@ type ImageConfig struct { // Disable SELinux labelling NoSElinux *bool + // Do not use. Forces auto-relabelling on first boot. + // See https://github.com/osbuild/osbuild/commit/52cb27631b587c1df177cd17625c5b473e1e85d2 + SELinuxForceRelabel *bool + // Disable documentation ExcludeDocs *bool diff --git a/internal/distro/rhel7/azure.go b/internal/distro/rhel7/azure.go index f776cf061c..24e8bba4c2 100644 --- a/internal/distro/rhel7/azure.go +++ b/internal/distro/rhel7/azure.go @@ -37,7 +37,8 @@ var azureDefaultImgConfig = &distro.ImageConfig{ "/etc/pki/rpm-gpg/RPM-GPG-KEY-microsoft-azure-release", "/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release", }, - Authconfig: &osbuild.AuthconfigStageOptions{}, + SELinuxForceRelabel: common.ToPtr(true), + Authconfig: &osbuild.AuthconfigStageOptions{}, Sysconfig: []*osbuild.SysconfigStageOptions{ { Kernel: &osbuild.SysconfigKernelOptions{ diff --git a/internal/distro/rhel7/images.go b/internal/distro/rhel7/images.go index 89a4d7c088..d5730affde 100644 --- a/internal/distro/rhel7/images.go +++ b/internal/distro/rhel7/images.go @@ -125,6 +125,7 @@ func osCustomizations( // Relabel the tree, unless the `NoSElinux` flag is explicitly set to `true` if imageConfig.NoSElinux == nil || imageConfig.NoSElinux != nil && !*imageConfig.NoSElinux { osc.SElinux = "targeted" + osc.SELinuxForceRelabel = imageConfig.SELinuxForceRelabel } if oscapConfig := c.GetOpenSCAP(); oscapConfig != nil { diff --git a/internal/distro/rhel7/qcow2.go b/internal/distro/rhel7/qcow2.go index e5a33cb01a..7cfcab9baf 100644 --- a/internal/distro/rhel7/qcow2.go +++ b/internal/distro/rhel7/qcow2.go @@ -26,7 +26,8 @@ var qcow2ImgType = imageType{ } var qcow2DefaultImgConfig = &distro.ImageConfig{ - DefaultTarget: common.ToPtr("multi-user.target"), + DefaultTarget: common.ToPtr("multi-user.target"), + SELinuxForceRelabel: common.ToPtr(true), Sysconfig: []*osbuild.SysconfigStageOptions{ { Kernel: &osbuild.SysconfigKernelOptions{ diff --git a/internal/manifest/os.go b/internal/manifest/os.go index 0088968dec..70d2723610 100644 --- a/internal/manifest/os.go +++ b/internal/manifest/os.go @@ -71,6 +71,8 @@ type OSCustomizations struct { // selected profile SElinux string + SELinuxForceRelabel *bool + // Do not install documentation ExcludeDocs bool @@ -593,7 +595,8 @@ func (p *OS) serialize() osbuild.Pipeline { if p.SElinux != "" { pipeline.AddStage(osbuild.NewSELinuxStage(&osbuild.SELinuxStageOptions{ - FileContexts: fmt.Sprintf("etc/selinux/%s/contexts/files/file_contexts", p.SElinux), + FileContexts: fmt.Sprintf("etc/selinux/%s/contexts/files/file_contexts", p.SElinux), + ForceAutorelabel: p.SELinuxForceRelabel, })) } From 7c76baeedc2d21af3f6cf7dd39c82c5761f9a0b7 Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Tue, 24 Jan 2023 19:16:01 +0100 Subject: [PATCH 15/16] manifest: include yumconfig options in OS customizations YUMConfig is supported in ImageConfig for RHEL 7. We now copy the options over to OSCustomizations and create the stage when necessary. --- internal/distro/rhel7/images.go | 1 + internal/manifest/os.go | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/internal/distro/rhel7/images.go b/internal/distro/rhel7/images.go index d5730affde..4238a32ada 100644 --- a/internal/distro/rhel7/images.go +++ b/internal/distro/rhel7/images.go @@ -157,6 +157,7 @@ func osCustomizations( osc.DNFConfig = imageConfig.DNFConfig osc.DNFAutomaticConfig = imageConfig.DNFAutomaticConfig osc.YUMRepos = imageConfig.YUMRepos + osc.YUMConfig = imageConfig.YumConfig osc.SshdConfig = imageConfig.SshdConfig osc.AuthConfig = imageConfig.Authconfig osc.PwQuality = imageConfig.PwQuality diff --git a/internal/manifest/os.go b/internal/manifest/os.go index 70d2723610..4fad5f0f04 100644 --- a/internal/manifest/os.go +++ b/internal/manifest/os.go @@ -95,6 +95,7 @@ type OSCustomizations struct { Sysctld []*osbuild.SysctldStageOptions DNFConfig []*osbuild.DNFConfigStageOptions DNFAutomaticConfig *osbuild.DNFAutomaticConfigStageOptions + YUMConfig *osbuild.YumConfigStageOptions YUMRepos []*osbuild.YumReposStageOptions SshdConfig *osbuild.SshdConfigStageOptions GCPGuestAgentConfig *osbuild.GcpGuestAgentConfigOptions @@ -459,6 +460,10 @@ func (p *OS) serialize() osbuild.Pipeline { pipeline.AddStage(osbuild.NewYumReposStage(yumRepo)) } + if p.YUMConfig != nil { + pipeline.AddStage(osbuild.NewYumConfigStage(p.YUMConfig)) + } + if p.GCPGuestAgentConfig != nil { pipeline.AddStage(osbuild.NewGcpGuestAgentConfigStage(p.GCPGuestAgentConfig)) } From 3af99aa8e29b507fbb13cd2a9543ac20b5a76c1f Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Tue, 24 Jan 2023 19:34:10 +0100 Subject: [PATCH 16/16] test: update RHEL 7 manifests Changes: - Removed unnecessary packages from build roots. Build packages are added on-demand. - Some stages changed order in the OS pipeline for azure-rhui. This will have no functional effect. - RHSM Facts stage added to all RHEL 7 manifests. This wont be used since RHEL 7 is not built in the cloud service. The RHSM fact is added by the test case generator to all image types to test that the option is working properly. - Azure archive pipeline renamed to xz like in all the other rewritten image types that use the xz pipeline. - Azure image filename before archiving has changed from 'disk.vhd' to 'image.vhd'. Again, this will have no functional effect because the name of the final artifact is unchanged (disk.vhd.xz). --- .../rhel_7-x86_64-azure_rhui-boot.json | 126 +++++-------- .../manifests/rhel_7-x86_64-qcow2-boot.json | 172 +++--------------- .../rhel_7-x86_64-qcow2_customize-boot.json | 97 +++------- 3 files changed, 85 insertions(+), 310 deletions(-) diff --git a/test/data/manifests/rhel_7-x86_64-azure_rhui-boot.json b/test/data/manifests/rhel_7-x86_64-azure_rhui-boot.json index 240433cf83..b77fbb5d05 100644 --- a/test/data/manifests/rhel_7-x86_64-azure_rhui-boot.json +++ b/test/data/manifests/rhel_7-x86_64-azure_rhui-boot.json @@ -136,12 +136,6 @@ { "id": "sha256:23e53944df86ed0b04fd39c8b0dd754e251c68179e44e2aa91b9e440b168df89" }, - { - "id": "sha256:d3a3a4872f45d3a37871fb374a1a0bb4b8c83190ac1711d13b74c363b50aabdf" - }, - { - "id": "sha256:740a1af1718166f8145bcbd75a12684abdb2351674c99ebbc849cbc08d4b38a0" - }, { "id": "sha256:e8828c8e13cb65e1ee5e302411a8abd0c476517e87d102398a9b9b112d993edf" }, @@ -340,9 +334,6 @@ { "id": "sha256:a0047e1ed0eb51fc41a74096559cfe67f1c01fa01cf668709ae54524db7cf414" }, - { - "id": "sha256:c094fe217ef92710bea79c4060c127e585a72bbf0cfba61697cbb488adcc8a7e" - }, { "id": "sha256:4a9ac18573b971d88bd2acefbcc6cfad01c986d04b4b88ed705ae019b6a653a3" }, @@ -439,9 +430,6 @@ { "id": "sha256:b0039bb73308f9af0562d7bfeb17d72d1e07a21f786eeed31e6470fb27476630" }, - { - "id": "sha256:222a97490d294758676db9ae9a0aca5684627a2750561aecf4d073f2849dd4bb" - }, { "id": "sha256:61d51059a91e227d71ce1ed0a787797b740dbb80cc5d4aab9812cd3248178713" }, @@ -2324,24 +2312,6 @@ } } }, - { - "type": "org.osbuild.rhsm", - "options": { - "yum-plugins": { - "subscription-manager": { - "enabled": false - } - }, - "subscription-manager": { - "rhsm": { - "manage_repos": false - }, - "rhsmcertd": { - "auto_registration": true - } - } - } - }, { "type": "org.osbuild.cloud-init", "options": { @@ -2449,6 +2419,21 @@ ] } }, + { + "type": "org.osbuild.yum.config", + "options": { + "config": { + "http_caching": "packages" + }, + "plugins": { + "langpacks": { + "locales": [ + "en_US.UTF-8" + ] + } + } + } + }, { "type": "org.osbuild.sshd.config", "options": { @@ -2475,26 +2460,29 @@ } }, { - "type": "org.osbuild.waagent.conf", + "type": "org.osbuild.rhsm", "options": { - "config": { - "ResourceDisk.Format": false, - "ResourceDisk.EnableSwap": false + "yum-plugins": { + "subscription-manager": { + "enabled": false + } + }, + "subscription-manager": { + "rhsm": { + "manage_repos": false + }, + "rhsmcertd": { + "auto_registration": true + } } } }, { - "type": "org.osbuild.yum.config", + "type": "org.osbuild.waagent.conf", "options": { "config": { - "http_caching": "packages" - }, - "plugins": { - "langpacks": { - "locales": [ - "en_US.UTF-8" - ] - } + "ResourceDisk.Format": false, + "ResourceDisk.EnableSwap": false } } }, @@ -2631,6 +2619,14 @@ } } }, + { + "type": "org.osbuild.rhsm.facts", + "options": { + "facts": { + "image-builder.osbuild-composer.api-type": "test-manifest" + } + } + }, { "type": "org.osbuild.selinux", "options": { @@ -3071,7 +3067,7 @@ } }, "options": { - "filename": "disk.vhd", + "filename": "image.vhd", "format": { "type": "vpc", "force_size": false @@ -3081,7 +3077,7 @@ ] }, { - "name": "archive", + "name": "xz", "build": "name:build", "stages": [ { @@ -3092,7 +3088,7 @@ "origin": "org.osbuild.pipeline", "references": { "name:vpc": { - "file": "disk.vhd" + "file": "image.vhd" } } } @@ -5111,24 +5107,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dracut-033-572.el7.x86_64.rpm", "checksum": "sha256:23e53944df86ed0b04fd39c8b0dd754e251c68179e44e2aa91b9e440b168df89" }, - { - "name": "e2fsprogs", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/e2fsprogs-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:d3a3a4872f45d3a37871fb374a1a0bb4b8c83190ac1711d13b74c363b50aabdf" - }, - { - "name": "e2fsprogs-libs", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/e2fsprogs-libs-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:740a1af1718166f8145bcbd75a12684abdb2351674c99ebbc849cbc08d4b38a0" - }, { "name": "elfutils-default-yama-scope", "epoch": 0, @@ -5723,15 +5701,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libsmartcols-2.23.2-65.el7.x86_64.rpm", "checksum": "sha256:a0047e1ed0eb51fc41a74096559cfe67f1c01fa01cf668709ae54524db7cf414" }, - { - "name": "libss", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libss-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:c094fe217ef92710bea79c4060c127e585a72bbf0cfba61697cbb488adcc8a7e" - }, { "name": "libssh2", "epoch": 0, @@ -6020,15 +5989,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pam-1.1.8-23.el7.x86_64.rpm", "checksum": "sha256:b0039bb73308f9af0562d7bfeb17d72d1e07a21f786eeed31e6470fb27476630" }, - { - "name": "parted", - "epoch": 0, - "version": "3.1", - "release": "32.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/parted-3.1-32.el7.x86_64.rpm", - "checksum": "sha256:222a97490d294758676db9ae9a0aca5684627a2750561aecf4d073f2849dd4bb" - }, { "name": "pcre", "epoch": 0, @@ -6390,7 +6350,7 @@ "checksum": "sha256:cfee456a0f3a2208ec1925cf1e699dd9ac9c5efb9ef4f27c5928670b57aa2bf1" } ], - "packages": [ + "os": [ { "name": "GeoIP", "epoch": 0, diff --git a/test/data/manifests/rhel_7-x86_64-qcow2-boot.json b/test/data/manifests/rhel_7-x86_64-qcow2-boot.json index 52d216f8e1..f311d139cf 100644 --- a/test/data/manifests/rhel_7-x86_64-qcow2-boot.json +++ b/test/data/manifests/rhel_7-x86_64-qcow2-boot.json @@ -126,18 +126,9 @@ { "id": "sha256:f5edbf09fbd69fd4985682a6bb2fdb8732d11c90f6f75977e77c225f846f6bc5" }, - { - "id": "sha256:bc12d9d6875e2120680179861221139e3a34833a918300a1def89ff75c18e4a5" - }, - { - "id": "sha256:ab40914102cb36464420c18710524a41f32df9e7762ead4879de09986c3f85ad" - }, { "id": "sha256:ceda9d24ef213658d34af8c53f891be32959398f7aa85b9bd4557a9ae9f797b9" }, - { - "id": "sha256:178e4b4ccf193c065e54056bb1c6b997ae9bdd7a72415e92006146f7614a6a81" - }, { "id": "sha256:644bb4bb0d549837d1a5f9d65e02835290b538f123605070cbf93291b11d2812" }, @@ -147,12 +138,6 @@ { "id": "sha256:23e53944df86ed0b04fd39c8b0dd754e251c68179e44e2aa91b9e440b168df89" }, - { - "id": "sha256:d3a3a4872f45d3a37871fb374a1a0bb4b8c83190ac1711d13b74c363b50aabdf" - }, - { - "id": "sha256:740a1af1718166f8145bcbd75a12684abdb2351674c99ebbc849cbc08d4b38a0" - }, { "id": "sha256:e8828c8e13cb65e1ee5e302411a8abd0c476517e87d102398a9b9b112d993edf" }, @@ -351,9 +336,6 @@ { "id": "sha256:a0047e1ed0eb51fc41a74096559cfe67f1c01fa01cf668709ae54524db7cf414" }, - { - "id": "sha256:c094fe217ef92710bea79c4060c127e585a72bbf0cfba61697cbb488adcc8a7e" - }, { "id": "sha256:4a9ac18573b971d88bd2acefbcc6cfad01c986d04b4b88ed705ae019b6a653a3" }, @@ -384,18 +366,9 @@ { "id": "sha256:dac2ae10dbb0a09a7e6bd341044dfab1e63d8773c9b7582cbf2d40937180f7b0" }, - { - "id": "sha256:c46ca66c5a9b51f2e06cf301934c564c4d8e67395a379965e913ce7c95531322" - }, { "id": "sha256:f2ee3238762ee4b1917cb7ed5d5e064dbae4d1804bdb65bd4bf6c56b785f8836" }, - { - "id": "sha256:8eab91b478d945b5992f5676754d1ca0f124bcee584de99e74bef3ed62a4a859" - }, - { - "id": "sha256:1a9ca0f47677eab3e6ce4e98823cc29d2968d058b365d8c65f724f2c067ed14d" - }, { "id": "sha256:547b7bb1b7791f9972f82f88c9931b9c754ad64a8113b733d6515b6edd1b970c" }, @@ -450,9 +423,6 @@ { "id": "sha256:b0039bb73308f9af0562d7bfeb17d72d1e07a21f786eeed31e6470fb27476630" }, - { - "id": "sha256:222a97490d294758676db9ae9a0aca5684627a2750561aecf4d073f2849dd4bb" - }, { "id": "sha256:61d51059a91e227d71ce1ed0a787797b740dbb80cc5d4aab9812cd3248178713" }, @@ -558,9 +528,6 @@ { "id": "sha256:c6d7e3e6d22005f0e302e209188081522cae87e8db86fbefb38815fb647e8f42" }, - { - "id": "sha256:7afc73e6beb4fbb8a7202348667fef0470d2be106d759cf47f58f8e7973db602" - }, { "id": "sha256:4dc62c6a37d1014f3461a8f0dcaf139e900291441ef87623243722294ecb7364" }, @@ -721,6 +688,9 @@ { "id": "sha256:dde04dcb5cd8be2e931c4abd93b72efb024f540a9f21e939ddea6af0da4d0b47" }, + { + "id": "sha256:dcb6f790fb97f15bd012fb20c1e5dde94921a5404299f9d45f49ee9d05d502e8" + }, { "id": "sha256:23e53944df86ed0b04fd39c8b0dd754e251c68179e44e2aa91b9e440b168df89" }, @@ -1750,6 +1720,14 @@ } } }, + { + "type": "org.osbuild.rhsm.facts", + "options": { + "facts": { + "image-builder.osbuild-composer.api-type": "test-manifest" + } + } + }, { "type": "org.osbuild.selinux", "options": { @@ -2079,9 +2057,6 @@ "sha256:164930af843a056c1ad18627fc4364d1f931d79145060aa47165d4e1edc6f2a4": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/bash-4.2.46-34.el7.x86_64.rpm" }, - "sha256:178e4b4ccf193c065e54056bb1c6b997ae9bdd7a72415e92006146f7614a6a81": { - "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-persistent-data-0.8.5-3.el7.x86_64.rpm" - }, "sha256:17a04e5cd7d2514904b203126a4273d63fe87a2871efa75ace5be72b992bd1e8": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libattr-2.4.46-13.el7.x86_64.rpm" }, @@ -2100,9 +2075,6 @@ "sha256:1a21af8faab93b4e4d828f4be9710abfc478a6c0b189bac4fb48ac1b6d638939": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/rhnsd-5.0.13-10.el7.x86_64.rpm" }, - "sha256:1a9ca0f47677eab3e6ce4e98823cc29d2968d058b365d8c65f724f2c067ed14d": { - "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lvm2-libs-2.02.187-6.el7.x86_64.rpm" - }, "sha256:1c351bfcc354aa61764725882cfe6ff36da092e7f10c70d3830bd596206af461": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/grub2-tools-minimal-2.02-0.87.el7.x86_64.rpm" }, @@ -2535,9 +2507,6 @@ "sha256:7af4e177936381d8a3d26db6dc66d8be32f80b4eefe4f0a2f43e4b938c148ac0": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ipset-7.1-1.el7.x86_64.rpm" }, - "sha256:7afc73e6beb4fbb8a7202348667fef0470d2be106d759cf47f58f8e7973db602": { - "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/PyYAML/3.12/12.el7eng/x86_64/python3-PyYAML-3.12-12.el7eng.x86_64.rpm" - }, "sha256:7b2639a5b7d320e69d88f09428c9aa377ac091675928cfffa50710e02911aff8": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ethtool-4.8-10.el7.x86_64.rpm" }, @@ -2598,9 +2567,6 @@ "sha256:8da1f1e2007d98f395befb666f18f9e26ab3009f638a566b985615b22e14fe13": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-perf-3.10.0-1160.el7.x86_64.rpm" }, - "sha256:8eab91b478d945b5992f5676754d1ca0f124bcee584de99e74bef3ed62a4a859": { - "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lvm2-2.02.187-6.el7.x86_64.rpm" - }, "sha256:9048a971753ff997aeebc363a7d07e4c4d9dfbf32bfc7698bc9ea0aacfc7bfae": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libstdc++-4.8.5-44.el7.x86_64.rpm" }, @@ -2742,9 +2708,6 @@ "sha256:aaf24de9d4bb53663cfd848dbf458ffd4b0a5e55321d07251cce24cf386d1982": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-slip-dbus-0.4.0-4.el7.noarch.rpm" }, - "sha256:ab40914102cb36464420c18710524a41f32df9e7762ead4879de09986c3f85ad": { - "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-event-libs-1.02.170-6.el7.x86_64.rpm" - }, "sha256:abab0980f49ec78b8a784bd20593f1d6aa6ec7f9a11575439542c47dc9524278": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libestr-0.1.9-2.el7.x86_64.rpm" }, @@ -2805,9 +2768,6 @@ "sha256:bb750fe8ff5ce9a7a6e56c681c63f000e8d973b3ab87740eb56cde9ce0721bb8": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/python-ipaddr-2.1.11-2.el7.noarch.rpm" }, - "sha256:bc12d9d6875e2120680179861221139e3a34833a918300a1def89ff75c18e4a5": { - "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-event-1.02.170-6.el7.x86_64.rpm" - }, "sha256:bd43d10fa68d2e908b7f628add47adcfc3185b1cec6785bc01301980321a053c": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/nfs-utils-1.3.0-0.68.el7.x86_64.rpm" }, @@ -3285,24 +3245,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-1.02.170-6.el7.x86_64.rpm", "checksum": "sha256:f5edbf09fbd69fd4985682a6bb2fdb8732d11c90f6f75977e77c225f846f6bc5" }, - { - "name": "device-mapper-event", - "epoch": 7, - "version": "1.02.170", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-event-1.02.170-6.el7.x86_64.rpm", - "checksum": "sha256:bc12d9d6875e2120680179861221139e3a34833a918300a1def89ff75c18e4a5" - }, - { - "name": "device-mapper-event-libs", - "epoch": 7, - "version": "1.02.170", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-event-libs-1.02.170-6.el7.x86_64.rpm", - "checksum": "sha256:ab40914102cb36464420c18710524a41f32df9e7762ead4879de09986c3f85ad" - }, { "name": "device-mapper-libs", "epoch": 7, @@ -3312,15 +3254,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-libs-1.02.170-6.el7.x86_64.rpm", "checksum": "sha256:ceda9d24ef213658d34af8c53f891be32959398f7aa85b9bd4557a9ae9f797b9" }, - { - "name": "device-mapper-persistent-data", - "epoch": 0, - "version": "0.8.5", - "release": "3.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/device-mapper-persistent-data-0.8.5-3.el7.x86_64.rpm", - "checksum": "sha256:178e4b4ccf193c065e54056bb1c6b997ae9bdd7a72415e92006146f7614a6a81" - }, { "name": "diffutils", "epoch": 0, @@ -3348,24 +3281,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dracut-033-572.el7.x86_64.rpm", "checksum": "sha256:23e53944df86ed0b04fd39c8b0dd754e251c68179e44e2aa91b9e440b168df89" }, - { - "name": "e2fsprogs", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/e2fsprogs-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:d3a3a4872f45d3a37871fb374a1a0bb4b8c83190ac1711d13b74c363b50aabdf" - }, - { - "name": "e2fsprogs-libs", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/e2fsprogs-libs-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:740a1af1718166f8145bcbd75a12684abdb2351674c99ebbc849cbc08d4b38a0" - }, { "name": "elfutils-default-yama-scope", "epoch": 0, @@ -3960,15 +3875,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libsmartcols-2.23.2-65.el7.x86_64.rpm", "checksum": "sha256:a0047e1ed0eb51fc41a74096559cfe67f1c01fa01cf668709ae54524db7cf414" }, - { - "name": "libss", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libss-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:c094fe217ef92710bea79c4060c127e585a72bbf0cfba61697cbb488adcc8a7e" - }, { "name": "libssh2", "epoch": 0, @@ -4059,15 +3965,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libxml2-2.9.1-6.el7.5.x86_64.rpm", "checksum": "sha256:dac2ae10dbb0a09a7e6bd341044dfab1e63d8773c9b7582cbf2d40937180f7b0" }, - { - "name": "libyaml", - "epoch": 0, - "version": "0.1.4", - "release": "11.el7_0", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libyaml-0.1.4-11.el7_0.x86_64.rpm", - "checksum": "sha256:c46ca66c5a9b51f2e06cf301934c564c4d8e67395a379965e913ce7c95531322" - }, { "name": "lua", "epoch": 0, @@ -4077,24 +3974,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lua-5.1.4-15.el7.x86_64.rpm", "checksum": "sha256:f2ee3238762ee4b1917cb7ed5d5e064dbae4d1804bdb65bd4bf6c56b785f8836" }, - { - "name": "lvm2", - "epoch": 7, - "version": "2.02.187", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lvm2-2.02.187-6.el7.x86_64.rpm", - "checksum": "sha256:8eab91b478d945b5992f5676754d1ca0f124bcee584de99e74bef3ed62a4a859" - }, - { - "name": "lvm2-libs", - "epoch": 7, - "version": "2.02.187", - "release": "6.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/lvm2-libs-2.02.187-6.el7.x86_64.rpm", - "checksum": "sha256:1a9ca0f47677eab3e6ce4e98823cc29d2968d058b365d8c65f724f2c067ed14d" - }, { "name": "lz4", "epoch": 0, @@ -4257,15 +4136,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pam-1.1.8-23.el7.x86_64.rpm", "checksum": "sha256:b0039bb73308f9af0562d7bfeb17d72d1e07a21f786eeed31e6470fb27476630" }, - { - "name": "parted", - "epoch": 0, - "version": "3.1", - "release": "32.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/parted-3.1-32.el7.x86_64.rpm", - "checksum": "sha256:222a97490d294758676db9ae9a0aca5684627a2750561aecf4d073f2849dd4bb" - }, { "name": "pcre", "epoch": 0, @@ -4581,15 +4451,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/hardlink/1.3/6.el7eng/x86_64/hardlink-1.3-6.el7eng.x86_64.rpm", "checksum": "sha256:c6d7e3e6d22005f0e302e209188081522cae87e8db86fbefb38815fb647e8f42" }, - { - "name": "python3-PyYAML", - "epoch": 0, - "version": "3.12", - "release": "12.el7eng", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/PyYAML/3.12/12.el7eng/x86_64/python3-PyYAML-3.12-12.el7eng.x86_64.rpm", - "checksum": "sha256:7afc73e6beb4fbb8a7202348667fef0470d2be106d759cf47f58f8e7973db602" - }, { "name": "python3-iniparse", "epoch": 0, @@ -4627,7 +4488,7 @@ "checksum": "sha256:cfee456a0f3a2208ec1925cf1e699dd9ac9c5efb9ef4f27c5928670b57aa2bf1" } ], - "packages": [ + "os": [ { "name": "NetworkManager-config-server", "epoch": 1, @@ -4988,6 +4849,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dmidecode-3.2-5.el7.x86_64.rpm", "checksum": "sha256:dde04dcb5cd8be2e931c4abd93b72efb024f540a9f21e939ddea6af0da4d0b47" }, + { + "name": "dosfstools", + "epoch": 0, + "version": "3.0.20", + "release": "10.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dosfstools-3.0.20-10.el7.x86_64.rpm", + "checksum": "sha256:dcb6f790fb97f15bd012fb20c1e5dde94921a5404299f9d45f49ee9d05d502e8" + }, { "name": "dracut", "epoch": 0, diff --git a/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json b/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json index c2b9cf88ef..40cdf54e0e 100644 --- a/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json +++ b/test/data/manifests/rhel_7-x86_64-qcow2_customize-boot.json @@ -217,12 +217,6 @@ { "id": "sha256:23e53944df86ed0b04fd39c8b0dd754e251c68179e44e2aa91b9e440b168df89" }, - { - "id": "sha256:d3a3a4872f45d3a37871fb374a1a0bb4b8c83190ac1711d13b74c363b50aabdf" - }, - { - "id": "sha256:740a1af1718166f8145bcbd75a12684abdb2351674c99ebbc849cbc08d4b38a0" - }, { "id": "sha256:e8828c8e13cb65e1ee5e302411a8abd0c476517e87d102398a9b9b112d993edf" }, @@ -421,9 +415,6 @@ { "id": "sha256:a0047e1ed0eb51fc41a74096559cfe67f1c01fa01cf668709ae54524db7cf414" }, - { - "id": "sha256:c094fe217ef92710bea79c4060c127e585a72bbf0cfba61697cbb488adcc8a7e" - }, { "id": "sha256:4a9ac18573b971d88bd2acefbcc6cfad01c986d04b4b88ed705ae019b6a653a3" }, @@ -454,9 +445,6 @@ { "id": "sha256:dac2ae10dbb0a09a7e6bd341044dfab1e63d8773c9b7582cbf2d40937180f7b0" }, - { - "id": "sha256:c46ca66c5a9b51f2e06cf301934c564c4d8e67395a379965e913ce7c95531322" - }, { "id": "sha256:f2ee3238762ee4b1917cb7ed5d5e064dbae4d1804bdb65bd4bf6c56b785f8836" }, @@ -520,9 +508,6 @@ { "id": "sha256:b0039bb73308f9af0562d7bfeb17d72d1e07a21f786eeed31e6470fb27476630" }, - { - "id": "sha256:222a97490d294758676db9ae9a0aca5684627a2750561aecf4d073f2849dd4bb" - }, { "id": "sha256:61d51059a91e227d71ce1ed0a787797b740dbb80cc5d4aab9812cd3248178713" }, @@ -628,9 +613,6 @@ { "id": "sha256:c6d7e3e6d22005f0e302e209188081522cae87e8db86fbefb38815fb647e8f42" }, - { - "id": "sha256:7afc73e6beb4fbb8a7202348667fef0470d2be106d759cf47f58f8e7973db602" - }, { "id": "sha256:4dc62c6a37d1014f3461a8f0dcaf139e900291441ef87623243722294ecb7364" }, @@ -833,6 +815,9 @@ { "id": "sha256:dde04dcb5cd8be2e931c4abd93b72efb024f540a9f21e939ddea6af0da4d0b47" }, + { + "id": "sha256:dcb6f790fb97f15bd012fb20c1e5dde94921a5404299f9d45f49ee9d05d502e8" + }, { "id": "sha256:23e53944df86ed0b04fd39c8b0dd754e251c68179e44e2aa91b9e440b168df89" }, @@ -2053,6 +2038,14 @@ } } }, + { + "type": "org.osbuild.rhsm.facts", + "options": { + "facts": { + "image-builder.osbuild-composer.api-type": "test-manifest" + } + } + }, { "type": "org.osbuild.selinux", "options": { @@ -2995,9 +2988,6 @@ "sha256:7af4e177936381d8a3d26db6dc66d8be32f80b4eefe4f0a2f43e4b938c148ac0": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ipset-7.1-1.el7.x86_64.rpm" }, - "sha256:7afc73e6beb4fbb8a7202348667fef0470d2be106d759cf47f58f8e7973db602": { - "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/PyYAML/3.12/12.el7eng/x86_64/python3-PyYAML-3.12-12.el7eng.x86_64.rpm" - }, "sha256:7b2639a5b7d320e69d88f09428c9aa377ac091675928cfffa50710e02911aff8": { "url": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/ethtool-4.8-10.el7.x86_64.rpm" }, @@ -3892,24 +3882,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dracut-033-572.el7.x86_64.rpm", "checksum": "sha256:23e53944df86ed0b04fd39c8b0dd754e251c68179e44e2aa91b9e440b168df89" }, - { - "name": "e2fsprogs", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/e2fsprogs-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:d3a3a4872f45d3a37871fb374a1a0bb4b8c83190ac1711d13b74c363b50aabdf" - }, - { - "name": "e2fsprogs-libs", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/e2fsprogs-libs-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:740a1af1718166f8145bcbd75a12684abdb2351674c99ebbc849cbc08d4b38a0" - }, { "name": "elfutils-default-yama-scope", "epoch": 0, @@ -4504,15 +4476,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libsmartcols-2.23.2-65.el7.x86_64.rpm", "checksum": "sha256:a0047e1ed0eb51fc41a74096559cfe67f1c01fa01cf668709ae54524db7cf414" }, - { - "name": "libss", - "epoch": 0, - "version": "1.42.9", - "release": "19.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libss-1.42.9-19.el7.x86_64.rpm", - "checksum": "sha256:c094fe217ef92710bea79c4060c127e585a72bbf0cfba61697cbb488adcc8a7e" - }, { "name": "libssh2", "epoch": 0, @@ -4603,15 +4566,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libxml2-2.9.1-6.el7.5.x86_64.rpm", "checksum": "sha256:dac2ae10dbb0a09a7e6bd341044dfab1e63d8773c9b7582cbf2d40937180f7b0" }, - { - "name": "libyaml", - "epoch": 0, - "version": "0.1.4", - "release": "11.el7_0", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/libyaml-0.1.4-11.el7_0.x86_64.rpm", - "checksum": "sha256:c46ca66c5a9b51f2e06cf301934c564c4d8e67395a379965e913ce7c95531322" - }, { "name": "lua", "epoch": 0, @@ -4801,15 +4755,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/pam-1.1.8-23.el7.x86_64.rpm", "checksum": "sha256:b0039bb73308f9af0562d7bfeb17d72d1e07a21f786eeed31e6470fb27476630" }, - { - "name": "parted", - "epoch": 0, - "version": "3.1", - "release": "32.el7", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/parted-3.1-32.el7.x86_64.rpm", - "checksum": "sha256:222a97490d294758676db9ae9a0aca5684627a2750561aecf4d073f2849dd4bb" - }, { "name": "pcre", "epoch": 0, @@ -5125,15 +5070,6 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/hardlink/1.3/6.el7eng/x86_64/hardlink-1.3-6.el7eng.x86_64.rpm", "checksum": "sha256:c6d7e3e6d22005f0e302e209188081522cae87e8db86fbefb38815fb647e8f42" }, - { - "name": "python3-PyYAML", - "epoch": 0, - "version": "3.12", - "release": "12.el7eng", - "arch": "x86_64", - "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-eng-rel-20220530/toplink/vol/rhel-7/packages/PyYAML/3.12/12.el7eng/x86_64/python3-PyYAML-3.12-12.el7eng.x86_64.rpm", - "checksum": "sha256:7afc73e6beb4fbb8a7202348667fef0470d2be106d759cf47f58f8e7973db602" - }, { "name": "python3-iniparse", "epoch": 0, @@ -5171,7 +5107,7 @@ "checksum": "sha256:cfee456a0f3a2208ec1925cf1e699dd9ac9c5efb9ef4f27c5928670b57aa2bf1" } ], - "packages": [ + "os": [ { "name": "NetworkManager", "epoch": 1, @@ -5658,6 +5594,15 @@ "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dmidecode-3.2-5.el7.x86_64.rpm", "checksum": "sha256:dde04dcb5cd8be2e931c4abd93b72efb024f540a9f21e939ddea6af0da4d0b47" }, + { + "name": "dosfstools", + "epoch": 0, + "version": "3.0.20", + "release": "10.el7", + "arch": "x86_64", + "remote_location": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el7/el7-x86_64-server-r7.9-20220530/Packages/dosfstools-3.0.20-10.el7.x86_64.rpm", + "checksum": "sha256:dcb6f790fb97f15bd012fb20c1e5dde94921a5404299f9d45f49ee9d05d502e8" + }, { "name": "dracut", "epoch": 0,