Repository: osbuild/osbuild-composer
Pull request #1183 (2021-01-27 21:50:48)

Return error if source name matches system repo         
This pull request includes:

- [ ] adequate testing for the new functionality or fixed issue
- [ ] adequate documentation informing people about the change

<!--
Thanks for proposing a change to osbuild-composer!

Please don't remove the above check list. These are things that each pull
request must have before it is merged. It helps maintainers to not forget
anything.

If the reason for ticking any of the boxes is ambiguous, please add a short
note explaining why.

For user-visible changes, "adequate documentation" is an entry describing the
change for users in docs/news. Please refer to docs/news/README.md for details.

In addition, if this pull request fixes a downstream issue, please refer to
test/README.md and add these additional items:

- [ ] 1st commit of any `rhbz#` related PR contains bug reproducer; CI reports FAIL or
- [ ] PR contains automated tests for new functionality and
- [ ] QE has approved reproducer/new tests and
- [ ] Subsequent commits provide bug fixes without modifying the reproducer; CI reports PASS and
- [ ] QE approves this PR; RHBZ status is set to `MODIFIED + Verified=Tested`
-->


ondrejbudai: The change looks good but one integration test needs adjusting.

Patch:
diff --git a/docs/news/unreleased/rhel84-differences-fixed.md b/docs/news/unreleased/rhel84-differences-fixed.md
index 3c3169bb6..d0141aa21 100644
--- a/docs/news/unreleased/rhel84-differences-fixed.md
+++ b/docs/news/unreleased/rhel84-differences-fixed.md
@@ -8,5 +8,11 @@ been made:
 The following packages have been added to our qcow2 image: oddjob, 
 oddjob-mkhomedir, psmisc, authselect-compat, rng-tools, dbxtool.
 
+The following packages have been removed from our qcow2 image: 
+dnf-plugin-spacewalk, fwupd, nss, and udisks2.
 
-The following services have been enabled: rngd.service, nfs-convert.service.
\ No newline at end of file
+The following services have been enabled: rngd.service, nfs-convert.service.
+
+The following services have been removed/disabled: mdmonitor.service, 
+udisks2.service, fwupd-refresh.timer, mdcheck_continue.timer, 
+mdcheck_start.timer, and mdmonitor-oneshot.timer.
\ No newline at end of file
diff --git a/internal/distro/rhel84/distro.go b/internal/distro/rhel84/distro.go
index 9fcb043a9..9dfc5e5a0 100644
--- a/internal/distro/rhel84/distro.go
+++ b/internal/distro/rhel84/distro.go
@@ -900,7 +900,6 @@ func New() distro.Distro {
 			"dbxtool",
 			"dhcp-client",
 			"dnf",
-			"dnf-plugin-spacewalk",
 			"dnf-utils",
 			"dosfstools",
 			"dracut-norescue",
@@ -927,10 +926,12 @@ func New() distro.Distro {
 			"alsa-lib",
 			"alsa-tools-firmware",
 			"biosdevname",
+			"dnf-plugin-spacewalk",
 			"dracut-config-rescue",
 			"fedora-release",
 			"fedora-repos",
 			"firewalld",
+			"fwupd",
 			"iprutils",
 			"ivtv-firmware",
 			"iwl100-firmware",
@@ -955,7 +956,9 @@ func New() distro.Distro {
 			"libertas-sd8686-firmware",
 			"libertas-sd8787-firmware",
 			"libertas-usb8388-firmware",
+			"nss",
 			"plymouth",
+			"udisks2",
 		},
 		enabledServices: []string{
 			"rngd.service",
diff --git a/internal/weldr/api.go b/internal/weldr/api.go
index cbbfd2062..166a86661 100644
--- a/internal/weldr/api.go
+++ b/internal/weldr/api.go
@@ -666,6 +666,19 @@ func (api *API) sourceNewHandler(writer http.ResponseWriter, request *http.Reque
 		return
 	}
 
+	// Is there an existing System Repo using this id?
+	for _, n := range api.systemRepoNames() {
+		if n == source.GetKey() {
+			// Users cannot replace system repos
+			errors := responseError{
+				ID:  "SystemSource",
+				Msg: fmt.Sprintf("%s is a system source, it cannot be changed.", source.GetKey()),
+			}
+			statusResponseError(writer, http.StatusBadRequest, errors)
+			return
+		}
+	}
+
 	api.store.PushSource(source.GetKey(), source.SourceConfig())
 
 	statusResponseOK(writer)


Test patch:
diff --git a/internal/client/source_test.go b/internal/client/source_test.go
index 8d26101ad..0040ae397 100644
--- a/internal/client/source_test.go
+++ b/internal/client/source_test.go
@@ -9,6 +9,7 @@
 package client
 
 import (
+	"fmt"
 	"strings"
 	"testing"
 
@@ -88,6 +89,73 @@ func TestPOSTInvalidJSONSourceV1(t *testing.T) {
 	require.False(t, resp.Status, "did not return an error")
 }
 
+// POST a JSON system source using V0 API
+func TestPOSTSystemJSONSourceV0(t *testing.T) {
+	sources_list, api, err := ListSourcesV0(testState.socket)
+	require.NoError(t, err, "GET source failed with a client error")
+	require.Nil(t, api, "ListSources failed: %#v", api)
+
+	// Cannot override system sources
+	source := `{
+		"name": "REPO-NAME",
+		"url": "file://REPO-PATH",
+		"type": "yum-baseurl",
+		"proxy": "https://proxy-url/",
+		"check_ssl": true,
+		"check_gpg": true,
+		"gpgkey_urls": ["https://url/path/to/gpg-key"]
+	}`
+
+	for _, repoName := range []string{"test-system-repo", "fedora", "baseos"} {
+		// skip repository names which are not present b/c this test can be
+		// executed both as a unit test and as an integration test
+		if !Include(sources_list, repoName) {
+			continue
+		}
+		useSource := strings.Replace(source, "REPO-NAME", repoName, 1)
+
+		resp, err := PostJSONSourceV0(testState.socket, useSource)
+		require.NoError(t, err, "POST source failed with a client error")
+		require.False(t, resp.Status, "did not return an error")
+		msg := fmt.Sprintf("%s is a system source, it cannot be changed.", repoName)
+		require.Equal(t, APIErrorMsg{ID: "SystemSource", Msg: msg}, resp.Errors[0])
+	}
+}
+
+// POST a JSON system source using V1 API
+func TestPOSTSystemJSONSourceV1(t *testing.T) {
+	sources_list, api, err := ListSourcesV1(testState.socket)
+	require.NoError(t, err, "GET source failed with a client error")
+	require.Nil(t, api, "ListSources failed: %#v", api)
+
+	// Cannot override system sources
+	source := `{
+        "id": "REPO-NAME",
+		"name": "json package system repo",
+		"url": "file://REPO-PATH",
+		"type": "yum-baseurl",
+		"proxy": "https://proxy-url/",
+		"check_ssl": true,
+		"check_gpg": true,
+		"gpgkey_urls": ["https://url/path/to/gpg-key"]
+	}`
+
+	for _, repoName := range []string{"test-system-repo", "fedora", "baseos"} {
+		// skip repository names which are not present b/c this test can be
+		// executed both as a unit test and as an integration test
+		if !Include(sources_list, repoName) {
+			continue
+		}
+		useSource := strings.Replace(source, "REPO-NAME", repoName, 1)
+
+		resp, err := PostJSONSourceV1(testState.socket, useSource)
+		require.NoError(t, err, "POST source failed with a client error")
+		require.False(t, resp.Status, "did not return an error")
+		msg := fmt.Sprintf("%s is a system source, it cannot be changed.", repoName)
+		require.Equal(t, APIErrorMsg{ID: "SystemSource", Msg: msg}, resp.Errors[0])
+	}
+}
+
 // POST a new TOML source using V0 API
 func TestPOSTTOMLSourceV0(t *testing.T) {
 	source := `
@@ -223,6 +291,71 @@ func TestPOSTWrongTOMLSourceV1(t *testing.T) {
 	require.False(t, resp.Status, "did not return an error")
 }
 
+// POST a TOML system source using V0 API
+func TestPOSTTOMLSystemSourceV0(t *testing.T) {
+	sources_list, api, err := ListSourcesV0(testState.socket)
+	require.NoError(t, err, "GET source failed with a client error")
+	require.Nil(t, api, "ListSources failed: %#v", api)
+
+	source := `
+		name = "REPO-NAME"
+		url = "file://REPO-PATH"
+		type = "yum-baseurl"
+		proxy = "https://proxy-url/"
+		check_ssl = true
+		check_gpg = true
+		gpgkey_urls = ["https://url/path/to/gpg-key"]
+	`
+	source = strings.Replace(source, "REPO-PATH", testState.repoDir, 1)
+	for _, repoName := range []string{"test-system-repo", "fedora", "baseos"} {
+		// skip repository names which are not present b/c this test can be
+		// executed both as a unit test and as an integration test
+		if !Include(sources_list, repoName) {
+			continue
+		}
+		useSource := strings.Replace(source, "REPO-NAME", repoName, 1)
+
+		resp, err := PostTOMLSourceV0(testState.socket, useSource)
+		require.NoError(t, err, "POST source failed with a client error")
+		require.False(t, resp.Status, "did not return an error")
+		msg := fmt.Sprintf("%s is a system source, it cannot be changed.", repoName)
+		require.Equal(t, APIErrorMsg{ID: "SystemSource", Msg: msg}, resp.Errors[0])
+	}
+}
+
+// POST a new TOML system source using V1 API
+func TestPOSTTOMLSystemSourceV1(t *testing.T) {
+	sources_list, api, err := ListSourcesV1(testState.socket)
+	require.NoError(t, err, "GET source failed with a client error")
+	require.Nil(t, api, "ListSources failed: %#v", api)
+
+	source := `
+		id = "REPO-NAME"
+		name = "toml package repo"
+		url = "file://REPO-PATH"
+		type = "yum-baseurl"
+		proxy = "https://proxy-url/"
+		check_ssl = true
+		check_gpg = true
+		gpgkey_urls = ["https://url/path/to/gpg-key"]
+	`
+	source = strings.Replace(source, "REPO-PATH", testState.repoDir, 1)
+	for _, repoName := range []string{"test-system-repo", "fedora", "baseos"} {
+		// skip repository names which are not present b/c this test can be
+		// executed both as a unit test and as an integration test
+		if !Include(sources_list, repoName) {
+			continue
+		}
+		useSource := strings.Replace(source, "REPO-NAME", repoName, 1)
+
+		resp, err := PostTOMLSourceV1(testState.socket, useSource)
+		require.NoError(t, err, "POST source failed with a client error")
+		require.False(t, resp.Status, "did not return an error")
+		msg := fmt.Sprintf("%s is a system source, it cannot be changed.", repoName)
+		require.Equal(t, APIErrorMsg{ID: "SystemSource", Msg: msg}, resp.Errors[0])
+	}
+}
+
 // list sources using the v0 API
 func TestListSourcesV0(t *testing.T) {
 	sources := []string{`{
diff --git a/internal/weldr/api_test.go b/internal/weldr/api_test.go
index 9f32dec3e..8af9c1fc8 100644
--- a/internal/weldr/api_test.go
+++ b/internal/weldr/api_test.go
@@ -925,6 +925,8 @@ func TestSourcesNew(t *testing.T) {
 		{"POST", "/api/v0/projects/source/new", `{"url": "https://download.opensuse.org/repositories/shells:/fish:/release:/3/Fedora_29/","type": "yum-baseurl","check_ssl": false,"check_gpg": false}`, http.StatusBadRequest, `{"errors": [{"id": "ProjectsError","msg": "Problem parsing POST body: 'name' field is missing from request"}],"status":false}`},
 		{"POST", "/api/v0/projects/source/new", `{"name": "fish", "type": "yum-baseurl","check_ssl": false,"check_gpg": false}`, http.StatusBadRequest, `{"errors": [{"id": "ProjectsError","msg": "Problem parsing POST body: 'url' field is missing from request"}],"status":false}`},
 		{"POST", "/api/v0/projects/source/new", `{"name": "fish", "url": "https://download.opensuse.org/repositories/shells:/fish:/release:/3/Fedora_29/","check_ssl": false,"check_gpg": false}`, http.StatusBadRequest, `{"errors": [{"id": "ProjectsError","msg": "Problem parsing POST body: 'type' field is missing from request"}],"status":false}`},
+		{"POST", "/api/v0/projects/source/new", `{"name": "test-id", "url": "https://download.opensuse.org/repositories/shells:/fish:/release:/3/Fedora_29/","type": "yum-baseurl","check_ssl": false,"check_gpg": false}`, http.StatusBadRequest, `{"errors": [{"id": "SystemSource","msg": "test-id is a system source, it cannot be changed."}],"status":false}`},
+		{"POST", "/api/v1/projects/source/new", `{"id": "test-id", "name": "test system repo", "url": "https://download.opensuse.org/repositories/shells:/fish:/release:/3/Fedora_29/","type": "yum-baseurl","check_ssl": false,"check_gpg": false}`, http.StatusBadRequest, `{"errors": [{"id": "SystemSource","msg": "test-id is a system source, it cannot be changed."}],"status":false}`},
 	}
 
 	tempdir, err := ioutil.TempDir("", "weldr-tests-")
diff --git a/test/data/manifests/rhel_84-x86_64-qcow2-boot.json b/test/data/manifests/rhel_84-x86_64-qcow2-boot.json
index 1617af0a0..df83a71e5 100644
--- a/test/data/manifests/rhel_84-x86_64-qcow2-boot.json
+++ b/test/data/manifests/rhel_84-x86_64-qcow2-boot.json
@@ -252,9 +252,6 @@
           "sha256:2cfcc3d6163dfaf7ce76998be992bd0b70dd7cbb838430cecf2aff04cd435d24": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/virt-what-1.18-6.el8.x86_64.rpm"
           },
-          "sha256:2e1d3cb29f87138b9f9c5415bf980443ae3ea4929426e79776557dc3c82b8e21": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-pyOpenSSL-18.0.0-1.el8.noarch.rpm"
-          },
           "sha256:2e8fd9d87a922b1441538318c401b1e4353b87a9e8000ca76b0cee681ec79c45": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libnghttp2-1.33.0-3.el8_2.1.x86_64.rpm"
           },
@@ -360,9 +357,6 @@
           "sha256:3e9dff1e55f3d4121bb4d85839f0e26a05bb95ed652abbe15535167528226414": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-pyserial-3.1.1-8.el8.noarch.rpm"
           },
-          "sha256:3edf7d29e530e6568416d4455e9fbaa511aba236c603da9928e689fae77b9874": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-netifaces-0.10.6-4.el8.x86_64.rpm"
-          },
           "sha256:3f71ec03af43ae8b36714efedb63dbc439259d8c7a321dd6788f74f92987d7c6": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/qemu-img-4.2.0-34.module+el8.3.0+7976+077be4ec.x86_64.rpm"
           },
@@ -618,9 +612,6 @@
           "sha256:703f78e932f243ccf2890039ab582176b829f4dfc302a4c9a4e48189eb3a0bd2": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/ca-certificates-2020.2.41-80.0.el8_2.noarch.rpm"
           },
-          "sha256:713ec69b972a8e88622b3fcd3b84fccdbd6c333b68b6c52151c2350edad2576a": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libgudev-232-4.el8.x86_64.rpm"
-          },
           "sha256:716bd3f5c05a71ed91a44747c2dac5a93679af31594850f25378970be15e931a": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/grub2-tools-extra-2.02-90.el8.x86_64.rpm"
           },
@@ -813,9 +804,6 @@
           "sha256:995a5401cd86404d14d08c0aeafeaa8da3f540b1806f9d0e233d75dec9e45c74": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/libmaxminddb-1.2.0-10.el8.x86_64.rpm"
           },
-          "sha256:9965cc9389159c9a0ca4e2f6257f756ed5cc77771bde1e27ed4013bbbc20558b": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch.rpm"
-          },
           "sha256:9a6eb680e8debcd0b97575a76e9cf0d0655ef7f875b362542e0d129f5e423419": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/python3-iniparse-0.4-31.el8.noarch.rpm"
           },
@@ -858,9 +846,6 @@
           "sha256:9fd289f7557c4d6be1fd3eaeea22c626432fddd1a97f9e5f804b6545cc53fcb9": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/python3-ply-3.9-8.el8.noarch.rpm"
           },
-          "sha256:a0f1dd76470a1ecde87526b1429f259033ef3cfd1d019fba0a781910d4d5b61a": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-rhnlib-2.8.6-8.module+el8.1.0+3455+3ddf2832.noarch.rpm"
-          },
           "sha256:a12d7736b18b1cb21ab10e3b42c303693904e4fa03b772a9a7c9ca8be84f6894": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libgcrypt-1.8.5-4.el8.x86_64.rpm"
           },
@@ -972,9 +957,6 @@
           "sha256:b446b1469bd535cf94e555525f40fa751b1343d89d589f3cff30ee2d7c38258e": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/hdparm-9.54-2.el8.x86_64.rpm"
           },
-          "sha256:b4e89276818abec218c909ca961db9bb2e09b1fc609ff280e6c05227143fa24d": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-newt-0.52.20-11.el8.x86_64.rpm"
-          },
           "sha256:b4fb3d8b0255a5ba9456b61e4f479f2f8355d171263508bbe869af677015fd97": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/policycoreutils-python-utils-2.9-9.el8.noarch.rpm"
           },
@@ -1023,9 +1005,6 @@
           "sha256:bdd6bd905c3b0275c373d8282af5d82ff6257c521d02781ba2094587886d20f9": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/kernel-tools-libs-4.18.0-240.4.el8.x86_64.rpm"
           },
-          "sha256:bed436b103161f7d8f61b617c84f3a7b5509f1d00c8425900a88c222b1331b31": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64.rpm"
-          },
           "sha256:bf05c810e12f5e5b86da335e372e9775c243b72e7fbd224714ef1590ab56b3dc": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/dbus-libs-1.12.8-11.el8.x86_64.rpm"
           },
@@ -1059,9 +1038,6 @@
           "sha256:c46ee71ba426e0964b2264bdf18fc4cff4d7815206c9e8a471bdf678e65c24b9": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libini_config-1.3.1-39.el8.x86_64.rpm"
           },
-          "sha256:c5429b045d9343c672da91167a72f2e10d65dd675322accaeee0b4cc18350362": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-hwdata-2.3.6-3.el8.noarch.rpm"
-          },
           "sha256:c5d0c9a5acc6c2de5e52b38701d6cad5cc37d22c1cb518ca8bcac79bddffaaba": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libappstream-glib-0.7.14-3.el8.x86_64.rpm"
           },
@@ -1170,9 +1146,6 @@
           "sha256:d7c7ba51c19e80dc07f72cfef5467279ab485c652e144cb790c8ce2471040ece": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/fontconfig-2.13.1-3.el8.x86_64.rpm"
           },
-          "sha256:d80219a299035688091aa230b1c9169143c00c141c4f1ad8e75d176d22cc1cd0": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64.rpm"
-          },
           "sha256:d84d9c2262e0ccdff46b3f6363c1a74ef870795947f716ada3d5ccf160d7b433": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/audit-libs-3.0-0.17.20191104git1c2f876.el8.x86_64.rpm"
           },
@@ -1209,9 +1182,6 @@
           "sha256:db8bc154626bdd906a1f50104031a5042bbe91db7f5a1473657795eedd4158c6": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/python3-setools-4.3.0-2.el8.x86_64.rpm"
           },
-          "sha256:dc07cc3536a601e2b7ca0e2823cd437f3a2e6d1d206a06612eee0515eee84b43": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch.rpm"
-          },
           "sha256:dd379385bd1d2e05f50c4795e5a0eff9030fdac0fd2579bb4b56233257672b27": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/dejavu-sans-mono-fonts-2.35-6.el8.noarch.rpm"
           },
@@ -2602,9 +2572,6 @@
               {
                 "checksum": "sha256:4bef8c6105544198bc4c5fecd21202bcf7823dda888cbe3fee888ee936c46bd9"
               },
-              {
-                "checksum": "sha256:713ec69b972a8e88622b3fcd3b84fccdbd6c333b68b6c52151c2350edad2576a"
-              },
               {
                 "checksum": "sha256:4a62975251933dcaff77fdbd7704e8a12bea0ecb6eaaae5ea5e552bedd6788ec"
               },
@@ -3313,9 +3280,6 @@
               {
                 "checksum": "sha256:664a883f3c7042eb91e0b66fc99c309a729011b4912e4af9397f4e25e1adae90"
               },
-              {
-                "checksum": "sha256:9965cc9389159c9a0ca4e2f6257f756ed5cc77771bde1e27ed4013bbbc20558b"
-              },
               {
                 "checksum": "sha256:19dba7cb30c3cb598886326df0ec1114c6e195a57c9ce3a8b78b83555e9e8648"
               },
@@ -3373,15 +3337,9 @@
               {
                 "checksum": "sha256:8caac6d04fc98a82d17af56a8faacd1e1a019112ba207388fb82ffdd6df54301"
               },
-              {
-                "checksum": "sha256:dc07cc3536a601e2b7ca0e2823cd437f3a2e6d1d206a06612eee0515eee84b43"
-              },
               {
                 "checksum": "sha256:4229196b5ea88c1133d5509a2ec326093a2c7ac5566ca4abb55c3d6fab47130a"
               },
-              {
-                "checksum": "sha256:c5429b045d9343c672da91167a72f2e10d65dd675322accaeee0b4cc18350362"
-              },
               {
                 "checksum": "sha256:0899ddc5a37434135f1f8402aafde3228db6bdbb71cb4e9401c1ed53524c3d64"
               },
@@ -3397,18 +3355,9 @@
               {
                 "checksum": "sha256:e868499743c399baa6463fa64a2534a7d32f8e1cca7b1b47ec00c60b34250bfe"
               },
-              {
-                "checksum": "sha256:3edf7d29e530e6568416d4455e9fbaa511aba236c603da9928e689fae77b9874"
-              },
-              {
-                "checksum": "sha256:b4e89276818abec218c909ca961db9bb2e09b1fc609ff280e6c05227143fa24d"
-              },
               {
                 "checksum": "sha256:076bdcf066fabe9c611ceee12665d735136ecd306ec4c1e608bb1e0a4704ae55"
               },
-              {
-                "checksum": "sha256:2e1d3cb29f87138b9f9c5415bf980443ae3ea4929426e79776557dc3c82b8e21"
-              },
               {
                 "checksum": "sha256:fd75c594f871a3353d326833e630ea1d28e5f446f796b836dc628f8c9c039f88"
               },
@@ -3418,12 +3367,6 @@
               {
                 "checksum": "sha256:ccfdbebdf0575395a80f2fa55e49c8358ca601fdbb0685f37e8c584226264eca"
               },
-              {
-                "checksum": "sha256:bed436b103161f7d8f61b617c84f3a7b5509f1d00c8425900a88c222b1331b31"
-              },
-              {
-                "checksum": "sha256:a0f1dd76470a1ecde87526b1429f259033ef3cfd1d019fba0a781910d4d5b61a"
-              },
               {
                 "checksum": "sha256:534bbf990d0f0537715561c818c2b68f10e6ba0cc1252a32a0696f1e22fde1e3"
               },
@@ -3433,9 +3376,6 @@
               {
                 "checksum": "sha256:c6d206d56b73ec65ae9d4e7e872d200b9d7064d7d7b544ec3d8f5237edd37d09"
               },
-              {
-                "checksum": "sha256:d80219a299035688091aa230b1c9169143c00c141c4f1ad8e75d176d22cc1cd0"
-              },
               {
                 "checksum": "sha256:5ef47eb6a042a13c902764907692c1068eb0f69153b47bc85792bef74bfa852b"
               },
@@ -7039,15 +6979,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libgpg-error-1.31-1.el8.x86_64.rpm",
         "checksum": "sha256:4bef8c6105544198bc4c5fecd21202bcf7823dda888cbe3fee888ee936c46bd9"
       },
-      {
-        "name": "libgudev",
-        "epoch": 0,
-        "version": "232",
-        "release": "4.el8",
-        "arch": "x86_64",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libgudev-232-4.el8.x86_64.rpm",
-        "checksum": "sha256:713ec69b972a8e88622b3fcd3b84fccdbd6c333b68b6c52151c2350edad2576a"
-      },
       {
         "name": "libidn2",
         "epoch": 0,
@@ -9172,15 +9103,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/cloud-utils-growpart-0.31-1.el8.noarch.rpm",
         "checksum": "sha256:664a883f3c7042eb91e0b66fc99c309a729011b4912e4af9397f4e25e1adae90"
       },
-      {
-        "name": "dnf-plugin-spacewalk",
-        "epoch": 0,
-        "version": "2.8.5",
-        "release": "11.module+el8.1.0+3455+3ddf2832",
-        "arch": "noarch",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch.rpm",
-        "checksum": "sha256:9965cc9389159c9a0ca4e2f6257f756ed5cc77771bde1e27ed4013bbbc20558b"
-      },
       {
         "name": "geolite2-city",
         "epoch": 0,
@@ -9352,15 +9274,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-cairo-1.16.3-6.el8.x86_64.rpm",
         "checksum": "sha256:8caac6d04fc98a82d17af56a8faacd1e1a019112ba207388fb82ffdd6df54301"
       },
-      {
-        "name": "python3-dnf-plugin-spacewalk",
-        "epoch": 0,
-        "version": "2.8.5",
-        "release": "11.module+el8.1.0+3455+3ddf2832",
-        "arch": "noarch",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch.rpm",
-        "checksum": "sha256:dc07cc3536a601e2b7ca0e2823cd437f3a2e6d1d206a06612eee0515eee84b43"
-      },
       {
         "name": "python3-gobject",
         "epoch": 0,
@@ -9370,15 +9283,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-gobject-3.28.3-2.el8.x86_64.rpm",
         "checksum": "sha256:4229196b5ea88c1133d5509a2ec326093a2c7ac5566ca4abb55c3d6fab47130a"
       },
-      {
-        "name": "python3-hwdata",
-        "epoch": 0,
-        "version": "2.3.6",
-        "release": "3.el8",
-        "arch": "noarch",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-hwdata-2.3.6-3.el8.noarch.rpm",
-        "checksum": "sha256:c5429b045d9343c672da91167a72f2e10d65dd675322accaeee0b4cc18350362"
-      },
       {
         "name": "python3-jinja2",
         "epoch": 0,
@@ -9424,24 +9328,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-markupsafe-0.23-19.el8.x86_64.rpm",
         "checksum": "sha256:e868499743c399baa6463fa64a2534a7d32f8e1cca7b1b47ec00c60b34250bfe"
       },
-      {
-        "name": "python3-netifaces",
-        "epoch": 0,
-        "version": "0.10.6",
-        "release": "4.el8",
-        "arch": "x86_64",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-netifaces-0.10.6-4.el8.x86_64.rpm",
-        "checksum": "sha256:3edf7d29e530e6568416d4455e9fbaa511aba236c603da9928e689fae77b9874"
-      },
-      {
-        "name": "python3-newt",
-        "epoch": 0,
-        "version": "0.52.20",
-        "release": "11.el8",
-        "arch": "x86_64",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-newt-0.52.20-11.el8.x86_64.rpm",
-        "checksum": "sha256:b4e89276818abec218c909ca961db9bb2e09b1fc609ff280e6c05227143fa24d"
-      },
       {
         "name": "python3-prettytable",
         "epoch": 0,
@@ -9451,15 +9337,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-prettytable-0.7.2-14.el8.noarch.rpm",
         "checksum": "sha256:076bdcf066fabe9c611ceee12665d735136ecd306ec4c1e608bb1e0a4704ae55"
       },
-      {
-        "name": "python3-pyOpenSSL",
-        "epoch": 0,
-        "version": "18.0.0",
-        "release": "1.el8",
-        "arch": "noarch",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-pyOpenSSL-18.0.0-1.el8.noarch.rpm",
-        "checksum": "sha256:2e1d3cb29f87138b9f9c5415bf980443ae3ea4929426e79776557dc3c82b8e21"
-      },
       {
         "name": "python3-pydbus",
         "epoch": 0,
@@ -9487,24 +9364,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-pytz-2017.2-9.el8.noarch.rpm",
         "checksum": "sha256:ccfdbebdf0575395a80f2fa55e49c8358ca601fdbb0685f37e8c584226264eca"
       },
-      {
-        "name": "python3-rhn-client-tools",
-        "epoch": 0,
-        "version": "2.8.16",
-        "release": "13.module+el8.1.0+3455+3ddf2832",
-        "arch": "x86_64",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64.rpm",
-        "checksum": "sha256:bed436b103161f7d8f61b617c84f3a7b5509f1d00c8425900a88c222b1331b31"
-      },
-      {
-        "name": "python3-rhnlib",
-        "epoch": 0,
-        "version": "2.8.6",
-        "release": "8.module+el8.1.0+3455+3ddf2832",
-        "arch": "noarch",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-rhnlib-2.8.6-8.module+el8.1.0+3455+3ddf2832.noarch.rpm",
-        "checksum": "sha256:a0f1dd76470a1ecde87526b1429f259033ef3cfd1d019fba0a781910d4d5b61a"
-      },
       {
         "name": "python3-systemd",
         "epoch": 0,
@@ -9532,15 +9391,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/qemu-guest-agent-4.2.0-34.module+el8.3.0+7976+077be4ec.x86_64.rpm",
         "checksum": "sha256:c6d206d56b73ec65ae9d4e7e872d200b9d7064d7d7b544ec3d8f5237edd37d09"
       },
-      {
-        "name": "rhn-client-tools",
-        "epoch": 0,
-        "version": "2.8.16",
-        "release": "13.module+el8.1.0+3455+3ddf2832",
-        "arch": "x86_64",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64.rpm",
-        "checksum": "sha256:d80219a299035688091aa230b1c9169143c00c141c4f1ad8e75d176d22cc1cd0"
-      },
       {
         "name": "rsyslog",
         "epoch": 0,
@@ -9779,7 +9629,6 @@
       "dmidecode-3.2-6.el8.x86_64",
       "dnf-4.2.23-4.el8.noarch",
       "dnf-data-4.2.23-4.el8.noarch",
-      "dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch",
       "dnf-plugin-subscription-manager-1.27.16-1.el8.x86_64",
       "dnf-plugins-core-4.0.17-5.el8.noarch",
       "dosfstools-4.1-6.el8.x86_64",
@@ -9906,7 +9755,6 @@
       "libgcrypt-1.8.5-4.el8.x86_64",
       "libgomp-8.4.1-1.el8.x86_64",
       "libgpg-error-1.31-1.el8.x86_64",
-      "libgudev-232-4.el8.x86_64",
       "libidn2-2.2.0-1.el8.x86_64",
       "libini_config-1.3.1-39.el8.x86_64",
       "libkcapi-1.2.0-2.el8.x86_64",
@@ -10046,14 +9894,12 @@
       "python3-decorator-4.2.1-2.el8.noarch",
       "python3-dmidecode-3.12.2-15.el8.x86_64",
       "python3-dnf-4.2.23-4.el8.noarch",
-      "python3-dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch",
       "python3-dnf-plugins-core-4.0.17-5.el8.noarch",
       "python3-ethtool-0.14-3.el8.x86_64",
       "python3-gobject-3.28.3-2.el8.x86_64",
       "python3-gobject-base-3.28.3-2.el8.x86_64",
       "python3-gpg-1.13.1-4.el8.x86_64",
       "python3-hawkey-0.48.0-5.el8.x86_64",
-      "python3-hwdata-2.3.6-3.el8.noarch",
       "python3-idna-2.5-5.el8.noarch",
       "python3-iniparse-0.4-31.el8.noarch",
       "python3-inotify-0.9.6-13.el8.noarch",
@@ -10072,15 +9918,12 @@
       "python3-linux-procfs-0.6.2-2.el8.noarch",
       "python3-magic-5.33-16.el8.noarch",
       "python3-markupsafe-0.23-19.el8.x86_64",
-      "python3-netifaces-0.10.6-4.el8.x86_64",
-      "python3-newt-0.52.20-11.el8.x86_64",
       "python3-oauthlib-2.1.0-1.el8.noarch",
       "python3-perf-4.18.0-240.4.el8.x86_64",
       "python3-pip-wheel-9.0.3-18.el8.noarch",
       "python3-ply-3.9-8.el8.noarch",
       "python3-policycoreutils-2.9-9.el8.noarch",
       "python3-prettytable-0.7.2-14.el8.noarch",
-      "python3-pyOpenSSL-18.0.0-1.el8.noarch",
       "python3-pycparser-2.14-14.el8.noarch",
       "python3-pydbus-0.6.0-5.el8.noarch",
       "python3-pyserial-3.1.1-8.el8.noarch",
@@ -10089,8 +9932,6 @@
       "python3-pyudev-0.21.0-7.el8.noarch",
       "python3-pyyaml-3.12-12.el8.x86_64",
       "python3-requests-2.20.0-2.1.el8_1.noarch",
-      "python3-rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64",
-      "python3-rhnlib-2.8.6-8.module+el8.1.0+3455+3ddf2832.noarch",
       "python3-rpm-4.14.3-4.el8.x86_64",
       "python3-schedutils-0.6-6.el8.x86_64",
       "python3-setools-4.3.0-2.el8.x86_64",
@@ -10110,7 +9951,6 @@
       "redhat-logos-81.1-1.el8.x86_64",
       "redhat-release-8.4-0.5.el8.x86_64",
       "redhat-release-eula-8.4-0.5.el8.x86_64",
-      "rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64",
       "rhsm-icons-1.27.16-1.el8.noarch",
       "rng-tools-6.8-3.el8.x86_64",
       "rootfiles-8.1-22.el8.noarch",
diff --git a/test/data/manifests/rhel_84-x86_64-qcow2-customize.json b/test/data/manifests/rhel_84-x86_64-qcow2-customize.json
index 38a3a0aa5..a6e28f48a 100644
--- a/test/data/manifests/rhel_84-x86_64-qcow2-customize.json
+++ b/test/data/manifests/rhel_84-x86_64-qcow2-customize.json
@@ -304,9 +304,6 @@
           "sha256:2cfcc3d6163dfaf7ce76998be992bd0b70dd7cbb838430cecf2aff04cd435d24": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/virt-what-1.18-6.el8.x86_64.rpm"
           },
-          "sha256:2e1d3cb29f87138b9f9c5415bf980443ae3ea4929426e79776557dc3c82b8e21": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-pyOpenSSL-18.0.0-1.el8.noarch.rpm"
-          },
           "sha256:2e8fd9d87a922b1441538318c401b1e4353b87a9e8000ca76b0cee681ec79c45": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libnghttp2-1.33.0-3.el8_2.1.x86_64.rpm"
           },
@@ -412,9 +409,6 @@
           "sha256:3e9dff1e55f3d4121bb4d85839f0e26a05bb95ed652abbe15535167528226414": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-pyserial-3.1.1-8.el8.noarch.rpm"
           },
-          "sha256:3edf7d29e530e6568416d4455e9fbaa511aba236c603da9928e689fae77b9874": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-netifaces-0.10.6-4.el8.x86_64.rpm"
-          },
           "sha256:3f71ec03af43ae8b36714efedb63dbc439259d8c7a321dd6788f74f92987d7c6": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/qemu-img-4.2.0-34.module+el8.3.0+7976+077be4ec.x86_64.rpm"
           },
@@ -670,9 +664,6 @@
           "sha256:703f78e932f243ccf2890039ab582176b829f4dfc302a4c9a4e48189eb3a0bd2": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/ca-certificates-2020.2.41-80.0.el8_2.noarch.rpm"
           },
-          "sha256:713ec69b972a8e88622b3fcd3b84fccdbd6c333b68b6c52151c2350edad2576a": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libgudev-232-4.el8.x86_64.rpm"
-          },
           "sha256:716bd3f5c05a71ed91a44747c2dac5a93679af31594850f25378970be15e931a": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/grub2-tools-extra-2.02-90.el8.x86_64.rpm"
           },
@@ -865,9 +856,6 @@
           "sha256:995a5401cd86404d14d08c0aeafeaa8da3f540b1806f9d0e233d75dec9e45c74": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/libmaxminddb-1.2.0-10.el8.x86_64.rpm"
           },
-          "sha256:9965cc9389159c9a0ca4e2f6257f756ed5cc77771bde1e27ed4013bbbc20558b": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch.rpm"
-          },
           "sha256:9a6eb680e8debcd0b97575a76e9cf0d0655ef7f875b362542e0d129f5e423419": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/python3-iniparse-0.4-31.el8.noarch.rpm"
           },
@@ -910,9 +898,6 @@
           "sha256:9fd289f7557c4d6be1fd3eaeea22c626432fddd1a97f9e5f804b6545cc53fcb9": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/python3-ply-3.9-8.el8.noarch.rpm"
           },
-          "sha256:a0f1dd76470a1ecde87526b1429f259033ef3cfd1d019fba0a781910d4d5b61a": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-rhnlib-2.8.6-8.module+el8.1.0+3455+3ddf2832.noarch.rpm"
-          },
           "sha256:a12d7736b18b1cb21ab10e3b42c303693904e4fa03b772a9a7c9ca8be84f6894": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libgcrypt-1.8.5-4.el8.x86_64.rpm"
           },
@@ -1024,9 +1009,6 @@
           "sha256:b446b1469bd535cf94e555525f40fa751b1343d89d589f3cff30ee2d7c38258e": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/hdparm-9.54-2.el8.x86_64.rpm"
           },
-          "sha256:b4e89276818abec218c909ca961db9bb2e09b1fc609ff280e6c05227143fa24d": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-newt-0.52.20-11.el8.x86_64.rpm"
-          },
           "sha256:b4fb3d8b0255a5ba9456b61e4f479f2f8355d171263508bbe869af677015fd97": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/policycoreutils-python-utils-2.9-9.el8.noarch.rpm"
           },
@@ -1075,9 +1057,6 @@
           "sha256:bdd6bd905c3b0275c373d8282af5d82ff6257c521d02781ba2094587886d20f9": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/kernel-tools-libs-4.18.0-240.4.el8.x86_64.rpm"
           },
-          "sha256:bed436b103161f7d8f61b617c84f3a7b5509f1d00c8425900a88c222b1331b31": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64.rpm"
-          },
           "sha256:bf05c810e12f5e5b86da335e372e9775c243b72e7fbd224714ef1590ab56b3dc": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/dbus-libs-1.12.8-11.el8.x86_64.rpm"
           },
@@ -1111,9 +1090,6 @@
           "sha256:c46ee71ba426e0964b2264bdf18fc4cff4d7815206c9e8a471bdf678e65c24b9": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libini_config-1.3.1-39.el8.x86_64.rpm"
           },
-          "sha256:c5429b045d9343c672da91167a72f2e10d65dd675322accaeee0b4cc18350362": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-hwdata-2.3.6-3.el8.noarch.rpm"
-          },
           "sha256:c5d0c9a5acc6c2de5e52b38701d6cad5cc37d22c1cb518ca8bcac79bddffaaba": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libappstream-glib-0.7.14-3.el8.x86_64.rpm"
           },
@@ -1222,9 +1198,6 @@
           "sha256:d7c7ba51c19e80dc07f72cfef5467279ab485c652e144cb790c8ce2471040ece": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/fontconfig-2.13.1-3.el8.x86_64.rpm"
           },
-          "sha256:d80219a299035688091aa230b1c9169143c00c141c4f1ad8e75d176d22cc1cd0": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64.rpm"
-          },
           "sha256:d84d9c2262e0ccdff46b3f6363c1a74ef870795947f716ada3d5ccf160d7b433": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/audit-libs-3.0-0.17.20191104git1c2f876.el8.x86_64.rpm"
           },
@@ -1261,9 +1234,6 @@
           "sha256:db8bc154626bdd906a1f50104031a5042bbe91db7f5a1473657795eedd4158c6": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/python3-setools-4.3.0-2.el8.x86_64.rpm"
           },
-          "sha256:dc07cc3536a601e2b7ca0e2823cd437f3a2e6d1d206a06612eee0515eee84b43": {
-            "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch.rpm"
-          },
           "sha256:dd379385bd1d2e05f50c4795e5a0eff9030fdac0fd2579bb4b56233257672b27": {
             "url": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/dejavu-sans-mono-fonts-2.35-6.el8.noarch.rpm"
           },
@@ -2654,9 +2624,6 @@
               {
                 "checksum": "sha256:4bef8c6105544198bc4c5fecd21202bcf7823dda888cbe3fee888ee936c46bd9"
               },
-              {
-                "checksum": "sha256:713ec69b972a8e88622b3fcd3b84fccdbd6c333b68b6c52151c2350edad2576a"
-              },
               {
                 "checksum": "sha256:4a62975251933dcaff77fdbd7704e8a12bea0ecb6eaaae5ea5e552bedd6788ec"
               },
@@ -3365,9 +3332,6 @@
               {
                 "checksum": "sha256:664a883f3c7042eb91e0b66fc99c309a729011b4912e4af9397f4e25e1adae90"
               },
-              {
-                "checksum": "sha256:9965cc9389159c9a0ca4e2f6257f756ed5cc77771bde1e27ed4013bbbc20558b"
-              },
               {
                 "checksum": "sha256:19dba7cb30c3cb598886326df0ec1114c6e195a57c9ce3a8b78b83555e9e8648"
               },
@@ -3425,15 +3389,9 @@
               {
                 "checksum": "sha256:8caac6d04fc98a82d17af56a8faacd1e1a019112ba207388fb82ffdd6df54301"
               },
-              {
-                "checksum": "sha256:dc07cc3536a601e2b7ca0e2823cd437f3a2e6d1d206a06612eee0515eee84b43"
-              },
               {
                 "checksum": "sha256:4229196b5ea88c1133d5509a2ec326093a2c7ac5566ca4abb55c3d6fab47130a"
               },
-              {
-                "checksum": "sha256:c5429b045d9343c672da91167a72f2e10d65dd675322accaeee0b4cc18350362"
-              },
               {
                 "checksum": "sha256:0899ddc5a37434135f1f8402aafde3228db6bdbb71cb4e9401c1ed53524c3d64"
               },
@@ -3449,18 +3407,9 @@
               {
                 "checksum": "sha256:e868499743c399baa6463fa64a2534a7d32f8e1cca7b1b47ec00c60b34250bfe"
               },
-              {
-                "checksum": "sha256:3edf7d29e530e6568416d4455e9fbaa511aba236c603da9928e689fae77b9874"
-              },
-              {
-                "checksum": "sha256:b4e89276818abec218c909ca961db9bb2e09b1fc609ff280e6c05227143fa24d"
-              },
               {
                 "checksum": "sha256:076bdcf066fabe9c611ceee12665d735136ecd306ec4c1e608bb1e0a4704ae55"
               },
-              {
-                "checksum": "sha256:2e1d3cb29f87138b9f9c5415bf980443ae3ea4929426e79776557dc3c82b8e21"
-              },
               {
                 "checksum": "sha256:fd75c594f871a3353d326833e630ea1d28e5f446f796b836dc628f8c9c039f88"
               },
@@ -3470,12 +3419,6 @@
               {
                 "checksum": "sha256:ccfdbebdf0575395a80f2fa55e49c8358ca601fdbb0685f37e8c584226264eca"
               },
-              {
-                "checksum": "sha256:bed436b103161f7d8f61b617c84f3a7b5509f1d00c8425900a88c222b1331b31"
-              },
-              {
-                "checksum": "sha256:a0f1dd76470a1ecde87526b1429f259033ef3cfd1d019fba0a781910d4d5b61a"
-              },
               {
                 "checksum": "sha256:534bbf990d0f0537715561c818c2b68f10e6ba0cc1252a32a0696f1e22fde1e3"
               },
@@ -3485,9 +3428,6 @@
               {
                 "checksum": "sha256:c6d206d56b73ec65ae9d4e7e872d200b9d7064d7d7b544ec3d8f5237edd37d09"
               },
-              {
-                "checksum": "sha256:d80219a299035688091aa230b1c9169143c00c141c4f1ad8e75d176d22cc1cd0"
-              },
               {
                 "checksum": "sha256:5ef47eb6a042a13c902764907692c1068eb0f69153b47bc85792bef74bfa852b"
               },
@@ -7136,15 +7076,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libgpg-error-1.31-1.el8.x86_64.rpm",
         "checksum": "sha256:4bef8c6105544198bc4c5fecd21202bcf7823dda888cbe3fee888ee936c46bd9"
       },
-      {
-        "name": "libgudev",
-        "epoch": 0,
-        "version": "232",
-        "release": "4.el8",
-        "arch": "x86_64",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-baseos-8.4.0.n-20201010/Packages/libgudev-232-4.el8.x86_64.rpm",
-        "checksum": "sha256:713ec69b972a8e88622b3fcd3b84fccdbd6c333b68b6c52151c2350edad2576a"
-      },
       {
         "name": "libidn2",
         "epoch": 0,
@@ -9269,15 +9200,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/cloud-utils-growpart-0.31-1.el8.noarch.rpm",
         "checksum": "sha256:664a883f3c7042eb91e0b66fc99c309a729011b4912e4af9397f4e25e1adae90"
       },
-      {
-        "name": "dnf-plugin-spacewalk",
-        "epoch": 0,
-        "version": "2.8.5",
-        "release": "11.module+el8.1.0+3455+3ddf2832",
-        "arch": "noarch",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch.rpm",
-        "checksum": "sha256:9965cc9389159c9a0ca4e2f6257f756ed5cc77771bde1e27ed4013bbbc20558b"
-      },
       {
         "name": "geolite2-city",
         "epoch": 0,
@@ -9449,15 +9371,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-cairo-1.16.3-6.el8.x86_64.rpm",
         "checksum": "sha256:8caac6d04fc98a82d17af56a8faacd1e1a019112ba207388fb82ffdd6df54301"
       },
-      {
-        "name": "python3-dnf-plugin-spacewalk",
-        "epoch": 0,
-        "version": "2.8.5",
-        "release": "11.module+el8.1.0+3455+3ddf2832",
-        "arch": "noarch",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch.rpm",
-        "checksum": "sha256:dc07cc3536a601e2b7ca0e2823cd437f3a2e6d1d206a06612eee0515eee84b43"
-      },
       {
         "name": "python3-gobject",
         "epoch": 0,
@@ -9467,15 +9380,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-gobject-3.28.3-2.el8.x86_64.rpm",
         "checksum": "sha256:4229196b5ea88c1133d5509a2ec326093a2c7ac5566ca4abb55c3d6fab47130a"
       },
-      {
-        "name": "python3-hwdata",
-        "epoch": 0,
-        "version": "2.3.6",
-        "release": "3.el8",
-        "arch": "noarch",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-hwdata-2.3.6-3.el8.noarch.rpm",
-        "checksum": "sha256:c5429b045d9343c672da91167a72f2e10d65dd675322accaeee0b4cc18350362"
-      },
       {
         "name": "python3-jinja2",
         "epoch": 0,
@@ -9521,24 +9425,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-markupsafe-0.23-19.el8.x86_64.rpm",
         "checksum": "sha256:e868499743c399baa6463fa64a2534a7d32f8e1cca7b1b47ec00c60b34250bfe"
       },
-      {
-        "name": "python3-netifaces",
-        "epoch": 0,
-        "version": "0.10.6",
-        "release": "4.el8",
-        "arch": "x86_64",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-netifaces-0.10.6-4.el8.x86_64.rpm",
-        "checksum": "sha256:3edf7d29e530e6568416d4455e9fbaa511aba236c603da9928e689fae77b9874"
-      },
-      {
-        "name": "python3-newt",
-        "epoch": 0,
-        "version": "0.52.20",
-        "release": "11.el8",
-        "arch": "x86_64",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-newt-0.52.20-11.el8.x86_64.rpm",
-        "checksum": "sha256:b4e89276818abec218c909ca961db9bb2e09b1fc609ff280e6c05227143fa24d"
-      },
       {
         "name": "python3-prettytable",
         "epoch": 0,
@@ -9548,15 +9434,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-prettytable-0.7.2-14.el8.noarch.rpm",
         "checksum": "sha256:076bdcf066fabe9c611ceee12665d735136ecd306ec4c1e608bb1e0a4704ae55"
       },
-      {
-        "name": "python3-pyOpenSSL",
-        "epoch": 0,
-        "version": "18.0.0",
-        "release": "1.el8",
-        "arch": "noarch",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-pyOpenSSL-18.0.0-1.el8.noarch.rpm",
-        "checksum": "sha256:2e1d3cb29f87138b9f9c5415bf980443ae3ea4929426e79776557dc3c82b8e21"
-      },
       {
         "name": "python3-pydbus",
         "epoch": 0,
@@ -9584,24 +9461,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-pytz-2017.2-9.el8.noarch.rpm",
         "checksum": "sha256:ccfdbebdf0575395a80f2fa55e49c8358ca601fdbb0685f37e8c584226264eca"
       },
-      {
-        "name": "python3-rhn-client-tools",
-        "epoch": 0,
-        "version": "2.8.16",
-        "release": "13.module+el8.1.0+3455+3ddf2832",
-        "arch": "x86_64",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64.rpm",
-        "checksum": "sha256:bed436b103161f7d8f61b617c84f3a7b5509f1d00c8425900a88c222b1331b31"
-      },
-      {
-        "name": "python3-rhnlib",
-        "epoch": 0,
-        "version": "2.8.6",
-        "release": "8.module+el8.1.0+3455+3ddf2832",
-        "arch": "noarch",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/python3-rhnlib-2.8.6-8.module+el8.1.0+3455+3ddf2832.noarch.rpm",
-        "checksum": "sha256:a0f1dd76470a1ecde87526b1429f259033ef3cfd1d019fba0a781910d4d5b61a"
-      },
       {
         "name": "python3-systemd",
         "epoch": 0,
@@ -9629,15 +9488,6 @@
         "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/qemu-guest-agent-4.2.0-34.module+el8.3.0+7976+077be4ec.x86_64.rpm",
         "checksum": "sha256:c6d206d56b73ec65ae9d4e7e872d200b9d7064d7d7b544ec3d8f5237edd37d09"
       },
-      {
-        "name": "rhn-client-tools",
-        "epoch": 0,
-        "version": "2.8.16",
-        "release": "13.module+el8.1.0+3455+3ddf2832",
-        "arch": "x86_64",
-        "remote_location": "https://rpmrepo.osbuild.org/v1/psi/el8/el8-x86_64-appstream-8.4.0.n-20201010/Packages/rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64.rpm",
-        "checksum": "sha256:d80219a299035688091aa230b1c9169143c00c141c4f1ad8e75d176d22cc1cd0"
-      },
       {
         "name": "rsyslog",
         "epoch": 0,
@@ -9878,7 +9728,6 @@
       "dmidecode-3.2-6.el8.x86_64",
       "dnf-4.2.23-4.el8.noarch",
       "dnf-data-4.2.23-4.el8.noarch",
-      "dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch",
       "dnf-plugin-subscription-manager-1.27.16-1.el8.x86_64",
       "dnf-plugins-core-4.0.17-5.el8.noarch",
       "dosfstools-4.1-6.el8.x86_64",
@@ -10005,7 +9854,6 @@
       "libgcrypt-1.8.5-4.el8.x86_64",
       "libgomp-8.4.1-1.el8.x86_64",
       "libgpg-error-1.31-1.el8.x86_64",
-      "libgudev-232-4.el8.x86_64",
       "libidn2-2.2.0-1.el8.x86_64",
       "libini_config-1.3.1-39.el8.x86_64",
       "libkcapi-1.2.0-2.el8.x86_64",
@@ -10145,14 +9993,12 @@
       "python3-decorator-4.2.1-2.el8.noarch",
       "python3-dmidecode-3.12.2-15.el8.x86_64",
       "python3-dnf-4.2.23-4.el8.noarch",
-      "python3-dnf-plugin-spacewalk-2.8.5-11.module+el8.1.0+3455+3ddf2832.noarch",
       "python3-dnf-plugins-core-4.0.17-5.el8.noarch",
       "python3-ethtool-0.14-3.el8.x86_64",
       "python3-gobject-3.28.3-2.el8.x86_64",
       "python3-gobject-base-3.28.3-2.el8.x86_64",
       "python3-gpg-1.13.1-4.el8.x86_64",
       "python3-hawkey-0.48.0-5.el8.x86_64",
-      "python3-hwdata-2.3.6-3.el8.noarch",
       "python3-idna-2.5-5.el8.noarch",
       "python3-iniparse-0.4-31.el8.noarch",
       "python3-inotify-0.9.6-13.el8.noarch",
@@ -10171,15 +10017,12 @@
       "python3-linux-procfs-0.6.2-2.el8.noarch",
       "python3-magic-5.33-16.el8.noarch",
       "python3-markupsafe-0.23-19.el8.x86_64",
-      "python3-netifaces-0.10.6-4.el8.x86_64",
-      "python3-newt-0.52.20-11.el8.x86_64",
       "python3-oauthlib-2.1.0-1.el8.noarch",
       "python3-perf-4.18.0-240.4.el8.x86_64",
       "python3-pip-wheel-9.0.3-18.el8.noarch",
       "python3-ply-3.9-8.el8.noarch",
       "python3-policycoreutils-2.9-9.el8.noarch",
       "python3-prettytable-0.7.2-14.el8.noarch",
-      "python3-pyOpenSSL-18.0.0-1.el8.noarch",
       "python3-pycparser-2.14-14.el8.noarch",
       "python3-pydbus-0.6.0-5.el8.noarch",
       "python3-pyserial-3.1.1-8.el8.noarch",
@@ -10188,8 +10031,6 @@
       "python3-pyudev-0.21.0-7.el8.noarch",
       "python3-pyyaml-3.12-12.el8.x86_64",
       "python3-requests-2.20.0-2.1.el8_1.noarch",
-      "python3-rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64",
-      "python3-rhnlib-2.8.6-8.module+el8.1.0+3455+3ddf2832.noarch",
       "python3-rpm-4.14.3-4.el8.x86_64",
       "python3-schedutils-0.6-6.el8.x86_64",
       "python3-setools-4.3.0-2.el8.x86_64",
@@ -10209,7 +10050,6 @@
       "redhat-logos-81.1-1.el8.x86_64",
       "redhat-release-8.4-0.5.el8.x86_64",
       "redhat-release-eula-8.4-0.5.el8.x86_64",
-      "rhn-client-tools-2.8.16-13.module+el8.1.0+3455+3ddf2832.x86_64",
       "rhsm-icons-1.27.16-1.el8.noarch",
       "rng-tools-6.8-3.el8.x86_64",
       "rootfiles-8.1-22.el8.noarch",