Repository: osbuild/osbuild-composer
Pull request #3003 (2022-09-20 04:23:53)

build(deps): bump github.com/google/go-cmp from 0.5.8 to 0.5.9
Bumps [github.com/google/go-cmp](https://github.com/google/go-cmp) from 0.5.8 to 0.5.9.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/google/go-cmp/releases">github.com/google/go-cmp's releases</a>.</em></p>
<blockquote>
<h2>v0.5.9</h2>
<p>Reporter changes:</p>
<ul>
<li>(<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/299">#299</a>) Adjust heuristic for line-based versus byte-based diffing</li>
<li>(<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/306">#306</a>) Use <code>value.TypeString</code> in <code>PathStep.String</code></li>
</ul>
<p>Code cleanup changes:</p>
<ul>
<li>(<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/297">#297</a>) Use <code>reflect.Value.IsZero</code></li>
<li>(<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/304">#304</a>) Format with Go 1.19 formatter</li>
<li>(<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/300">#300</a> )Fix typo in Result documentation</li>
<li>(<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/302">#302</a>) Pre-declare global type variables</li>
<li>(<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/309">#309</a>) Run tests on Go 1.19</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/google/go-cmp/commit/a97318bf6562f2ed2632c5f985db51b1bc5bdcd0"><code>a97318b</code></a> Adjust heuristic for line-based versus byte-based diffing (<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/299">#299</a>)</li>
<li><a href="https://github.com/google/go-cmp/commit/377d28384c85781079e04aab3937170479da8cd6"><code>377d283</code></a> Run tests on Go 1.19 (<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/309">#309</a>)</li>
<li><a href="https://github.com/google/go-cmp/commit/6606d4d51e3239f038565f525940ac6043aff53e"><code>6606d4d</code></a> Use value.TypeString in PathStep.String (<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/306">#306</a>)</li>
<li><a href="https://github.com/google/go-cmp/commit/f36a68d19a9bca43e070954ab9170a8305662d15"><code>f36a68d</code></a> Pre-declare global type variables (<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/302">#302</a>)</li>
<li><a href="https://github.com/google/go-cmp/commit/5dac6aa44b75666a956f67df1b5bd4e2e044e1f8"><code>5dac6aa</code></a> Fix typo in Result documentation (<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/300">#300</a>)</li>
<li><a href="https://github.com/google/go-cmp/commit/14ad8a02f30ba66e7e19f9814e69daab44219cb8"><code>14ad8a0</code></a> Format with Go 1.19 formatter (<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/304">#304</a>)</li>
<li><a href="https://github.com/google/go-cmp/commit/a53d7e09b000ee6e0ca9f2676820299b5de8e89f"><code>a53d7e0</code></a> Use reflect.Value.IsZero (<a href="https://github-redirect.dependabot.com/google/go-cmp/issues/297">#297</a>)</li>
<li>See full diff in <a href="https://github.com/google/go-cmp/compare/v0.5.8...v0.5.9">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/google/go-cmp&package-manager=go_modules&previous-version=0.5.8&new-version=0.5.9)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

You can trigger a rebase of this PR by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>


Patch:
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d7f640f47..60e0a79ce 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -395,7 +395,10 @@ OSTree simplified installer:
           - rhos-01/rhel-8.7-nightly-x86_64
           - rhos-01/centos-stream-8-x86_64
           - rhos-01/rhel-9.1-nightly-x86_64
-          - rhos-01/centos-stream-9-x86_64
+          # this is disabled because of two BZs in cs9
+          # rhbz#2124735 and rhbz#2108646 preventing 
+          # the system to install and boot properly
+          # - rhos-01/centos-stream-9-x86_64
 
 OSTree raw image:
   stage: test
@@ -602,7 +605,7 @@ API:
           - aws/rhel-8.7-nightly-x86_64
           - aws/rhel-9.1-nightly-x86_64
         INTERNAL_NETWORK: ["true"]
-      - IMAGE_TYPE: ["edge-commit"]
+      - IMAGE_TYPE: ["iot-commit"]
         RUNNER:
           - aws/fedora-35-x86_64
           - aws/fedora-36-x86_64
diff --git a/Schutzfile b/Schutzfile
index b296f4b22..b87549608 100644
--- a/Schutzfile
+++ b/Schutzfile
@@ -2,7 +2,7 @@
   "fedora-35": {
     "dependencies": {
       "osbuild": {
-        "commit": "ba218f781d4c7455cd995eea55be09e902370905"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     },
     "repos": [
@@ -79,7 +79,7 @@
   "fedora-36": {
     "dependencies": {
       "osbuild": {
-        "commit": "ba218f781d4c7455cd995eea55be09e902370905"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     },
     "repos": [
@@ -156,7 +156,7 @@
   "fedora-37": {
     "dependencies": {
       "osbuild": {
-        "commit": "4bc6e226ea4196b702841add42fe0e0a793c2998"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     },
     "repos": [
@@ -233,21 +233,21 @@
   "rhel-8.4": {
     "dependencies": {
       "osbuild": {
-        "commit": "ba218f781d4c7455cd995eea55be09e902370905"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     }
   },
   "rhel-8.6": {
     "dependencies": {
       "osbuild": {
-        "commit": "ba218f781d4c7455cd995eea55be09e902370905"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     }
   },
   "rhel-8.7": {
     "dependencies": {
       "osbuild": {
-        "commit": "ba218f781d4c7455cd995eea55be09e902370905"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     },
     "repos": [
@@ -293,14 +293,14 @@
   "rhel-9.0": {
     "dependencies": {
       "osbuild": {
-        "commit": "ba218f781d4c7455cd995eea55be09e902370905"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     }
   },
   "rhel-9.1": {
     "dependencies": {
       "osbuild": {
-        "commit": "ba218f781d4c7455cd995eea55be09e902370905"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     },
     "repos": [
@@ -346,21 +346,21 @@
   "centos-8": {
     "dependencies": {
       "osbuild": {
-        "commit": "ba218f781d4c7455cd995eea55be09e902370905"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     }
   },
   "centos-9": {
     "dependencies": {
       "osbuild": {
-        "commit": "ba218f781d4c7455cd995eea55be09e902370905"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     }
   },
   "centos-stream-9": {
     "dependencies": {
       "osbuild": {
-        "commit": "ba218f781d4c7455cd995eea55be09e902370905"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     },
     "repos": [
@@ -406,7 +406,7 @@
   "centos-stream-8": {
     "dependencies": {
       "osbuild": {
-        "commit": "ba218f781d4c7455cd995eea55be09e902370905"
+        "commit": "c824e18b458823eb7dd8ca582b0a990bfdc7f257"
       }
     },
     "repos": [
diff --git a/go.mod b/go.mod
index c56379ebc..54d7faccf 100644
--- a/go.mod
+++ b/go.mod
@@ -24,7 +24,7 @@ require (
 	github.com/go-openapi/swag v0.21.1 // indirect
 	github.com/gobwas/glob v0.2.3
 	github.com/golang-jwt/jwt/v4 v4.4.2
-	github.com/google/go-cmp v0.5.8
+	github.com/google/go-cmp v0.5.9
 	github.com/google/uuid v1.3.0
 	github.com/gophercloud/gophercloud v1.0.0
 	github.com/hashicorp/go-retryablehttp v0.7.1
diff --git a/go.sum b/go.sum
index 746de8315..b8f462bbd 100644
--- a/go.sum
+++ b/go.sum
@@ -760,8 +760,9 @@ github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
 github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
 github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
 github.com/google/go-cmp v0.5.7/go.mod h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE=
-github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg=
 github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
+github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
+github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
 github.com/google/go-containerregistry v0.5.1/go.mod h1:Ct15B4yir3PLOP5jsy0GNeYVaIZs/MK/Jz5any1wFW0=
 github.com/google/go-containerregistry v0.10.0 h1:qd/fv2nQajGZJenaNcdaghlwSPjQ0NphN9hzArr2WWg=
 github.com/google/go-containerregistry v0.10.0/go.mod h1:C7uwbB1QUAtvnknyd3ethxJRd4gtEjU/9WLXzckfI1Y=
diff --git a/internal/cloudapi/v2/handler.go b/internal/cloudapi/v2/handler.go
index 1ad9951f3..3242ce6d9 100644
--- a/internal/cloudapi/v2/handler.go
+++ b/internal/cloudapi/v2/handler.go
@@ -365,6 +365,10 @@ func (h *apiHandlers) PostCompose(ctx echo.Context) error {
 			case ImageTypesEdgeInstaller:
 				fallthrough
 			case ImageTypesEdgeCommit:
+				fallthrough
+			case ImageTypesIotCommit:
+				fallthrough
+			case ImageTypesIotRawImage:
 				var awsS3UploadOptions AWSS3UploadOptions
 				jsonUploadOptions, err := json.Marshal(*ir.UploadOptions)
 				if err != nil {
@@ -391,6 +395,8 @@ func (h *apiHandlers) PostCompose(ctx echo.Context) error {
 
 				irTarget = t
 			case ImageTypesEdgeContainer:
+				fallthrough
+			case ImageTypesIotContainer:
 				var containerUploadOptions ContainerUploadOptions
 				jsonUploadOptions, err := json.Marshal(*ir.UploadOptions)
 				if err != nil {
@@ -545,18 +551,17 @@ func imageTypeFromApiImageType(it ImageTypes, arch distro.Arch) string {
 	case ImageTypesImageInstaller:
 		return "image-installer"
 	case ImageTypesEdgeCommit:
-		// Fedora doesn't define "rhel-edge-commit", or "edge-commit" yet.
-		// Assume that if the distro contains "fedora-iot-commit", it's Fedora
-		// and translate ImageTypesEdgeCommit to fedora-iot-commit in this case.
-		// This should definitely be removed in the near future.
-		if _, err := arch.GetImageType("fedora-iot-commit"); err == nil {
-			return "fedora-iot-commit"
-		}
 		return "rhel-edge-commit"
 	case ImageTypesEdgeContainer:
 		return "rhel-edge-container"
 	case ImageTypesEdgeInstaller:
 		return "rhel-edge-installer"
+	case ImageTypesIotCommit:
+		return "iot-commit"
+	case ImageTypesIotContainer:
+		return "iot-container"
+	case ImageTypesIotRawImage:
+		return "iot-raw-image"
 	}
 	return ""
 }
diff --git a/internal/cloudapi/v2/openapi.v2.gen.go b/internal/cloudapi/v2/openapi.v2.gen.go
index 4fbae6114..9446dbdb0 100644
--- a/internal/cloudapi/v2/openapi.v2.gen.go
+++ b/internal/cloudapi/v2/openapi.v2.gen.go
@@ -74,6 +74,12 @@ const (
 
 	ImageTypesImageInstaller ImageTypes = "image-installer"
 
+	ImageTypesIotCommit ImageTypes = "iot-commit"
+
+	ImageTypesIotContainer ImageTypes = "iot-container"
+
+	ImageTypesIotRawImage ImageTypes = "iot-raw-image"
+
 	ImageTypesVsphere ImageTypes = "vsphere"
 )
 
@@ -784,117 +790,118 @@ func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL
 var swaggerSpec = []string{
 
 	"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",
-	"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",
+	"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",
-	"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",
+	"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",
+	"/z8AAP//9d2HvV9rAAA=",
 }
 
 // GetSwagger returns the content of the embedded swagger specification file
diff --git a/internal/cloudapi/v2/openapi.v2.yml b/internal/cloudapi/v2/openapi.v2.yml
index 317400114..96f302907 100644
--- a/internal/cloudapi/v2/openapi.v2.yml
+++ b/internal/cloudapi/v2/openapi.v2.yml
@@ -758,8 +758,8 @@ components:
       type: string
       enum:
         - aws
-        - aws-rhui
         - aws-ha-rhui
+        - aws-rhui
         - aws-sap-rhui
         - azure
         - azure-rhui
@@ -770,6 +770,9 @@ components:
         - gcp-rhui
         - guest-image
         - image-installer
+        - iot-commit
+        - iot-container
+        - iot-raw-image
         - vsphere
     Repository:
       type: object
diff --git a/internal/distro/fedora/distro.go b/internal/distro/fedora/distro.go
index db5ecb7e9..dd7f44ff0 100644
--- a/internal/distro/fedora/distro.go
+++ b/internal/distro/fedora/distro.go
@@ -71,8 +71,8 @@ var (
 
 	// Image Definitions
 	iotCommitImgType = imageType{
-		name:        "fedora-iot-commit",
-		nameAliases: []string{"iot-commit"},
+		name:        "iot-commit",
+		nameAliases: []string{"fedora-iot-commit"},
 		filename:    "commit.tar",
 		mimeType:    "application/x-tar",
 		packageSets: map[string]packageSetFunc{
@@ -89,8 +89,8 @@ var (
 	}
 
 	iotOCIImgType = imageType{
-		name:        "fedora-iot-container",
-		nameAliases: []string{"iot-container"},
+		name:        "iot-container",
+		nameAliases: []string{"fedora-iot-container"},
 		filename:    "container.tar",
 		mimeType:    "application/x-tar",
 		packageSets: map[string]packageSetFunc{
@@ -111,8 +111,8 @@ var (
 	}
 
 	iotInstallerImgType = imageType{
-		name:        "fedora-iot-installer",
-		nameAliases: []string{"iot-installer"},
+		name:        "iot-installer",
+		nameAliases: []string{"fedora-iot-installer"},
 		filename:    "installer.iso",
 		mimeType:    "application/x-iso9660-image",
 		packageSets: map[string]packageSetFunc{
@@ -131,8 +131,8 @@ var (
 	}
 
 	iotRawImgType = imageType{
-		name:        "fedora-iot-raw-image",
-		nameAliases: []string{"iot-raw-image"},
+		name:        "iot-raw-image",
+		nameAliases: []string{"fedora-iot-raw-image"},
 		filename:    "image.raw.xz",
 		mimeType:    "application/xz",
 		packageSets: map[string]packageSetFunc{},
@@ -681,7 +681,7 @@ func (t *imageType) checkOptions(customizations *blueprint.Customizations, optio
 			return fmt.Errorf("boot ISO image type %q requires specifying a URL from which to retrieve the OSTree commit", t.name)
 		}
 
-		if t.name == "iot-installer" || t.name == "fedora-iot-installer" {
+		if t.name == "iot-installer" {
 			allowed := []string{"User", "Group"}
 			if err := customizations.CheckAllowed(allowed...); err != nil {
 				return fmt.Errorf("unsupported blueprint customizations found for boot ISO image type %q: (allowed: %s)", t.name, strings.Join(allowed, ", "))
diff --git a/internal/distro/rhel9/partition_tables.go b/internal/distro/rhel9/partition_tables.go
index a3b56e06f..17ca6c0db 100644
--- a/internal/distro/rhel9/partition_tables.go
+++ b/internal/distro/rhel9/partition_tables.go
@@ -222,13 +222,23 @@ var edgeBasePartitionTables = distro.BasePartitionTableMap{
 						Policy:           "{}",
 						RemovePassphrase: true,
 					},
-					Payload: &disk.Filesystem{
-						Type:         "xfs",
-						Label:        "root",
-						Mountpoint:   "/",
-						FSTabOptions: "defaults",
-						FSTabFreq:    0,
-						FSTabPassNo:  0,
+					Payload: &disk.LVMVolumeGroup{
+						Name:        "rootvg",
+						Description: "built with lvm2 and osbuild",
+						LogicalVolumes: []disk.LVMLogicalVolume{
+							{
+								Size: 9 * 1024 * 1024 * 1024, // 9 GB
+								Name: "rootlv",
+								Payload: &disk.Filesystem{
+									Type:         "xfs",
+									Label:        "root",
+									Mountpoint:   "/",
+									FSTabOptions: "defaults",
+									FSTabFreq:    0,
+									FSTabPassNo:  0,
+								},
+							},
+						},
 					},
 				},
 			},
@@ -282,13 +292,23 @@ var edgeBasePartitionTables = distro.BasePartitionTableMap{
 						Policy:           "{}",
 						RemovePassphrase: true,
 					},
-					Payload: &disk.Filesystem{
-						Type:         "xfs",
-						Label:        "root",
-						Mountpoint:   "/",
-						FSTabOptions: "defaults",
-						FSTabFreq:    0,
-						FSTabPassNo:  0,
+					Payload: &disk.LVMVolumeGroup{
+						Name:        "rootvg",
+						Description: "built with lvm2 and osbuild",
+						LogicalVolumes: []disk.LVMLogicalVolume{
+							{
+								Size: 9 * 1024 * 1024 * 1024, // 9 GB
+								Name: "rootlv",
+								Payload: &disk.Filesystem{
+									Type:         "xfs",
+									Label:        "root",
+									Mountpoint:   "/",
+									FSTabOptions: "defaults",
+									FSTabFreq:    0,
+									FSTabPassNo:  0,
+								},
+							},
+						},
 					},
 				},
 			},
diff --git a/internal/osbuild/device.go b/internal/osbuild/device.go
index 12d58ed93..942cd4ba4 100644
--- a/internal/osbuild/device.go
+++ b/internal/osbuild/device.go
@@ -97,6 +97,7 @@ func GenDeviceCreationStages(pt *disk.PartitionTable, filename string) []*Stage
 
 func GenDeviceFinishStages(pt *disk.PartitionTable, filename string) []*Stage {
 	stages := make([]*Stage, 0)
+	removeKeyStages := make([]*Stage, 0)
 
 	genStages := func(e disk.Entity, path []disk.Entity) error {
 
@@ -111,7 +112,7 @@ func GenDeviceFinishStages(pt *disk.PartitionTable, filename string) []*Stage {
 
 			if ent.Clevis != nil {
 				if ent.Clevis.RemovePassphrase {
-					stages = append(stages, NewLUKS2RemoveKeyStage(&LUKS2RemoveKeyStageOptions{
+					removeKeyStages = append(removeKeyStages, NewLUKS2RemoveKeyStage(&LUKS2RemoveKeyStageOptions{
 						Passphrase: ent.Passphrase,
 					}, stageDevices))
 				}
@@ -138,6 +139,10 @@ func GenDeviceFinishStages(pt *disk.PartitionTable, filename string) []*Stage {
 	}
 
 	_ = pt.ForEachEntity(genStages)
+	// Ensure that "org.osbuild.luks2.remove-key" stages are done after
+	// "org.osbuild.lvm2.metadata" stages, we cannot open a device if its
+	// password has changed
+	stages = append(stages, removeKeyStages...)
 	return stages
 }
 
diff --git a/osbuild-composer.spec b/osbuild-composer.spec
index 1126628a3..e50bc394f 100644
--- a/osbuild-composer.spec
+++ b/osbuild-composer.spec
@@ -9,7 +9,7 @@
 
 %global goipath         github.com/osbuild/osbuild-composer
 
-Version:        64
+Version:        65
 
 %gometa
 
@@ -306,10 +306,10 @@ The core osbuild-composer binary. This is suitable both for spawning in containe
 Summary:    The worker for osbuild-composer
 Requires:   systemd
 Requires:   qemu-img
-Requires:   osbuild >= 64
-Requires:   osbuild-ostree >= 63
-Requires:   osbuild-lvm2 >= 63
-Requires:   osbuild-luks2 >= 63
+Requires:   osbuild >= 65
+Requires:   osbuild-ostree >= 65
+Requires:   osbuild-lvm2 >= 65
+Requires:   osbuild-luks2 >= 65
 Requires:   %{name}-dnf-json = %{version}-%{release}
 
 %description worker
diff --git a/templates/composer.yml b/templates/composer.yml
index 414483a7a..039604ccb 100644
--- a/templates/composer.yml
+++ b/templates/composer.yml
@@ -287,7 +287,7 @@ objects:
       <match **>
         @type splunk_hec
         hec_host "#{ENV['SPLUNK_HEC_URL']}"
-        hec_port 8088
+        hec_port "${SPLUNK_HEC_PORT}"
         hec_token "#{ENV['SPLUNK_HEC_TOKEN']}"
       </match>
 - apiVersion: batch/v1
@@ -499,3 +499,7 @@ parameters:
     name: MAINTENANCE_MAX_CONCURRENT_REQUESTS
     value: "10"
     required: true
+  - description: fluentd-hec splunk port
+    name: SPLUNK_HEC_PORT
+    value: "443"
+    required: true
diff --git a/templates/packer/README.md b/templates/packer/README.md
index ae49db345..05f61c0b3 100644
--- a/templates/packer/README.md
+++ b/templates/packer/README.md
@@ -34,6 +34,13 @@ COMPOSER_PORT=443
 # The secret contains only one key "offline_token". Its value is the offline token to be used. 
 OFFLINE_TOKEN_ARN=arn:aws:secretsmanager:us-east-1:123456789012:secret:offline-token-abcdef
 
+# AWS ARN of a secret containing OAuth client credentials
+# The secret contains two keys: "client_id" and "client_secret".
+CLIENT_CREDENTIALS_ARN=arn:aws:secretsmanager:us-east-1:123456789012:secret:client-credentials-abcdef
+
+# Authentication URL to retrieve an access_token from
+TOKEN_URL="https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token"
+
 # AWS ARN of a secret containing a command to subscribe the instance using subscription-manager
 # The secrets contains only one key "subscription_manager_command" that contains the subscription-manager command
 SUBSCRIPTION_MANAGER_COMMAND_ARN=arn:aws:secretsmanager:us-east-1:123456789012:secret:subscription-manager-command-abcdef
@@ -92,4 +99,5 @@ write_files:
       SECRETS_MANAGER_ENDPOINT_URL=https://secretsmanager.us-east-1.amazonaws.com/
       CLOUDWATCH_LOGS_ENDPOINT_URL=https://logs.us-east-1.amazonaws.com/
       CLOUDWATCH_LOG_GROUP=staging_workers_aoc
+      TOKEN_URL="https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token"
 ```
diff --git a/templates/packer/ansible/inventory/fedora-36-aarch64/group_vars/all.yml b/templates/packer/ansible/inventory/fedora-36-aarch64/group_vars/all.yml
new file mode 100644
index 000000000..04147ed09
--- /dev/null
+++ b/templates/packer/ansible/inventory/fedora-36-aarch64/group_vars/all.yml
@@ -0,0 +1,5 @@
+---
+# this is just a template!
+# the actual content is generated by build/appsre-build-worker-packer.sh
+rpmrepo_distribution: distro
+osbuild_commit: abcdef
diff --git a/templates/packer/ansible/inventory/fedora-36-x86_64/group_vars/all.yml b/templates/packer/ansible/inventory/fedora-36-x86_64/group_vars/all.yml
new file mode 100644
index 000000000..04147ed09
--- /dev/null
+++ b/templates/packer/ansible/inventory/fedora-36-x86_64/group_vars/all.yml
@@ -0,0 +1,5 @@
+---
+# this is just a template!
+# the actual content is generated by build/appsre-build-worker-packer.sh
+rpmrepo_distribution: distro
+osbuild_commit: abcdef
diff --git a/templates/packer/ansible/roles/common/files/worker-initialization-scripts/client_credentials.sh b/templates/packer/ansible/roles/common/files/worker-initialization-scripts/client_credentials.sh
index 10cbb6cda..57555c052 100755
--- a/templates/packer/ansible/roles/common/files/worker-initialization-scripts/client_credentials.sh
+++ b/templates/packer/ansible/roles/common/files/worker-initialization-scripts/client_credentials.sh
@@ -20,7 +20,7 @@ rm -f /tmp/client-credentials.json
 
 sudo tee -a /etc/osbuild-worker/osbuild-worker.toml > /dev/null << EOF
 [authentication]
-oauth_url = "https://identity.api.openshift.com/auth/realms/rhoas/protocol/openid-connect/token"
+oauth_url = "${TOKEN_URL:-https://identity.api.openshift.com/auth/realms/rhoas/protocol/openid-connect/token}"
 client_id = "${CLIENT_ID}"
 client_secret = "/etc/osbuild-worker/client-secret"
 EOF
diff --git a/templates/packer/ansible/roles/common/files/worker-initialization-scripts/offline_token.sh b/templates/packer/ansible/roles/common/files/worker-initialization-scripts/offline_token.sh
index c47f1b563..6f3c077e5 100755
--- a/templates/packer/ansible/roles/common/files/worker-initialization-scripts/offline_token.sh
+++ b/templates/packer/ansible/roles/common/files/worker-initialization-scripts/offline_token.sh
@@ -19,7 +19,7 @@ rm -f /tmp/offline-token.json
 
 sudo tee -a /etc/osbuild-worker/osbuild-worker.toml > /dev/null << EOF
 [authentication]
-oauth_url = "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token"
+oauth_url = "${TOKEN_URL:-https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token}"
 client_id = "rhsm-api"
 offline_token = "/etc/osbuild-worker/offline-token"
 EOF
diff --git a/templates/packer/worker.pkr.hcl b/templates/packer/worker.pkr.hcl
index ebf03dc10..67a938aa0 100644
--- a/templates/packer/worker.pkr.hcl
+++ b/templates/packer/worker.pkr.hcl
@@ -167,6 +167,80 @@ update-crypto-policies --set LEGACY
 EOF
   }
 
+  source "amazon-ebs.image_builder"  {
+    name = "fedora-36-x86_64"
+
+    # Use a static Fedora 36 Cloud Base Image.
+    source_ami = "ami-08b7bda26f4071b80"
+    ssh_username = "fedora"
+    instance_type = "c6a.large"
+
+    # Set a name for the resulting AMI.
+    ami_name = "${var.image_name}-fedora-36-x86_64"
+
+    # Apply tags to the resulting AMI/EBS snapshot.
+    tags = {
+      AppCode = "IMGB-001"
+      Name = "${var.image_name}-fedora-36-x86_64"
+      composer_commit = "${var.composer_commit}"
+      os = "fedora"
+      os_version = "36"
+      arch = "x86_64"
+    }
+
+    # Ensure that the EBS snapshot used for the AMI meets our requirements.
+    launch_block_device_mappings {
+      delete_on_termination = "true"
+      device_name           = "/dev/sda1"
+      volume_size           = 5
+      volume_type           = "gp2"
+    }
+
+    # go doesn't like modern Fedora crypto policies
+    # see https://github.com/hashicorp/packer/issues/10074
+    user_data = <<EOF
+#!/bin/bash
+update-crypto-policies --set LEGACY
+EOF
+  }
+
+  source "amazon-ebs.image_builder"  {
+    name = "fedora-36-aarch64"
+
+    # Use a static Fedora 36 Cloud Base Image.
+    source_ami = "ami-01925eb0821988986"
+    ssh_username = "fedora"
+    instance_type = "c6g.large"
+
+    # Set a name for the resulting AMI.
+    ami_name = "${var.image_name}-fedora-36-aarch64"
+
+    # Apply tags to the resulting AMI/EBS snapshot.
+    tags = {
+      AppCode = "IMGB-001"
+      Name = "${var.image_name}-fedora-36-aarch64"
+      composer_commit = "${var.composer_commit}"
+      os = "fedora"
+      os_version = "36"
+      arch = "aarch64"
+    }
+
+    # Ensure that the EBS snapshot used for the AMI meets our requirements.
+    launch_block_device_mappings {
+      delete_on_termination = "true"
+      device_name           = "/dev/sda1"
+      volume_size           = 5
+      volume_type           = "gp2"
+    }
+
+    # go doesn't like modern Fedora crypto policies
+    # see https://github.com/hashicorp/packer/issues/10074
+    user_data = <<EOF
+#!/bin/bash
+update-crypto-policies --set LEGACY
+EOF
+  }
+
   provisioner "ansible" {
     playbook_file = "${path.root}/ansible/playbook.yml"
     user = build.User
diff --git a/vendor/github.com/google/go-cmp/cmp/compare.go b/vendor/github.com/google/go-cmp/cmp/compare.go
index fd2b3a42b..087320da7 100644
--- a/vendor/github.com/google/go-cmp/cmp/compare.go
+++ b/vendor/github.com/google/go-cmp/cmp/compare.go
@@ -13,21 +13,21 @@
 //
 // The primary features of cmp are:
 //
-// • When the default behavior of equality does not suit the needs of the test,
-// custom equality functions can override the equality operation.
-// For example, an equality function may report floats as equal so long as they
-// are within some tolerance of each other.
+//   - When the default behavior of equality does not suit the test's needs,
+//     custom equality functions can override the equality operation.
+//     For example, an equality function may report floats as equal so long as
+//     they are within some tolerance of each other.
 //
-// • Types that have an Equal method may use that method to determine equality.
-// This allows package authors to determine the equality operation for the types
-// that they define.
+//   - Types with an Equal method may use that method to determine equality.
+//     This allows package authors to determine the equality operation
+//     for the types that they define.
 //
-// • If no custom equality functions are used and no Equal method is defined,
-// equality is determined by recursively comparing the primitive kinds on both
-// values, much like reflect.DeepEqual. Unlike reflect.DeepEqual, unexported
-// fields are not compared by default; they result in panics unless suppressed
-// by using an Ignore option (see cmpopts.IgnoreUnexported) or explicitly
-// compared using the Exporter option.
+//   - If no custom equality functions are used and no Equal method is defined,
+//     equality is determined by recursively comparing the primitive kinds on
+//     both values, much like reflect.DeepEqual. Unlike reflect.DeepEqual,
+//     unexported fields are not compared by default; they result in panics
+//     unless suppressed by using an Ignore option (see cmpopts.IgnoreUnexported)
+//     or explicitly compared using the Exporter option.
 package cmp
 
 import (
@@ -45,25 +45,25 @@ import (
 // Equal reports whether x and y are equal by recursively applying the
 // following rules in the given order to x and y and all of their sub-values:
 //
-// • Let S be the set of all Ignore, Transformer, and Comparer options that
-// remain after applying all path filters, value filters, and type filters.
-// If at least one Ignore exists in S, then the comparison is ignored.
-// If the number of Transformer and Comparer options in S is greater than one,
-// then Equal panics because it is ambiguous which option to use.
-// If S contains a single Transformer, then use that to transform the current
-// values and recursively call Equal on the output values.
-// If S contains a single Comparer, then use that to compare the current values.
-// Otherwise, evaluation proceeds to the next rule.
+//   - Let S be the set of all Ignore, Transformer, and Comparer options that
+//     remain after applying all path filters, value filters, and type filters.
+//     If at least one Ignore exists in S, then the comparison is ignored.
+//     If the number of Transformer and Comparer options in S is non-zero,
+//     then Equal panics because it is ambiguous which option to use.
+//     If S contains a single Transformer, then use that to transform
+//     the current values and recursively call Equal on the output values.
+//     If S contains a single Comparer, then use that to compare the current values.
+//     Otherwise, evaluation proceeds to the next rule.
 //
-// • If the values have an Equal method of the form "(T) Equal(T) bool" or
-// "(T) Equal(I) bool" where T is assignable to I, then use the result of
-// x.Equal(y) even if x or y is nil. Otherwise, no such method exists and
-// evaluation proceeds to the next rule.
+//   - If the values have an Equal method of the form "(T) Equal(T) bool" or
+//     "(T) Equal(I) bool" where T is assignable to I, then use the result of
+//     x.Equal(y) even if x or y is nil. Otherwise, no such method exists and
+//     evaluation proceeds to the next rule.
 //
-// • Lastly, try to compare x and y based on their basic kinds.
-// Simple kinds like booleans, integers, floats, complex numbers, strings, and
-// channels are compared using the equivalent of the == operator in Go.
-// Functions are only equal if they are both nil, otherwise they are unequal.
+//   - Lastly, try to compare x and y based on their basic kinds.
+//     Simple kinds like booleans, integers, floats, complex numbers, strings,
+//     and channels are compared using the equivalent of the == operator in Go.
+//     Functions are only equal if they are both nil, otherwise they are unequal.
 //
 // Structs are equal if recursively calling Equal on all fields report equal.
 // If a struct contains unexported fields, Equal panics unless an Ignore option
@@ -144,7 +144,7 @@ func rootStep(x, y interface{}) PathStep {
 	// so that they have the same parent type.
 	var t reflect.Type
 	if !vx.IsValid() || !vy.IsValid() || vx.Type() != vy.Type() {
-		t = reflect.TypeOf((*interface{})(nil)).Elem()
+		t = anyType
 		if vx.IsValid() {
 			vvx := reflect.New(t).Elem()
 			vvx.Set(vx)
@@ -639,7 +639,9 @@ type dynChecker struct{ curr, next int }
 // Next increments the state and reports whether a check should be performed.
 //
 // Checks occur every Nth function call, where N is a triangular number:
+//
 //	0 1 3 6 10 15 21 28 36 45 55 66 78 91 105 120 136 153 171 190 ...
+//
 // See https://en.wikipedia.org/wiki/Triangular_number
 //
 // This sequence ensures that the cost of checks drops significantly as
diff --git a/vendor/github.com/google/go-cmp/cmp/internal/diff/diff.go b/vendor/github.com/google/go-cmp/cmp/internal/diff/diff.go
index bc196b16c..a248e5436 100644
--- a/vendor/github.com/google/go-cmp/cmp/internal/diff/diff.go
+++ b/vendor/github.com/google/go-cmp/cmp/internal/diff/diff.go
@@ -127,9 +127,9 @@ var randBool = rand.New(rand.NewSource(time.Now().Unix())).Intn(2) == 0
 // This function returns an edit-script, which is a sequence of operations
 // needed to convert one list into the other. The following invariants for
 // the edit-script are maintained:
-//	• eq == (es.Dist()==0)
-//	• nx == es.LenX()
-//	• ny == es.LenY()
+//   - eq == (es.Dist()==0)
+//   - nx == es.LenX()
+//   - ny == es.LenY()
 //
 // This algorithm is not guaranteed to be an optimal solution (i.e., one that
 // produces an edit-script with a minimal Levenshtein distance). This algorithm
@@ -169,12 +169,13 @@ func Difference(nx, ny int, f EqualFunc) (es EditScript) {
 	// A diagonal edge is equivalent to a matching symbol between both X and Y.
 
 	// Invariants:
-	//	• 0 ≤ fwdPath.X ≤ (fwdFrontier.X, revFrontier.X) ≤ revPath.X ≤ nx
-	//	• 0 ≤ fwdPath.Y ≤ (fwdFrontier.Y, revFrontier.Y) ≤ revPath.Y ≤ ny
+	//   - 0 ≤ fwdPath.X ≤ (fwdFrontier.X, revFrontier.X) ≤ revPath.X ≤ nx
+	//   - 0 ≤ fwdPath.Y ≤ (fwdFrontier.Y, revFrontier.Y) ≤ revPath.Y ≤ ny
 	//
 	// In general:
-	//	• fwdFrontier.X < revFrontier.X
-	//	• fwdFrontier.Y < revFrontier.Y
+	//   - fwdFrontier.X < revFrontier.X
+	//   - fwdFrontier.Y < revFrontier.Y
+	//
 	// Unless, it is time for the algorithm to terminate.
 	fwdPath := path{+1, point{0, 0}, make(EditScript, 0, (nx+ny)/2)}
 	revPath := path{-1, point{nx, ny}, make(EditScript, 0)}
@@ -195,19 +196,21 @@ func Difference(nx, ny int, f EqualFunc) (es EditScript) {
 	// computing sub-optimal edit-scripts between two lists.
 	//
 	// The algorithm is approximately as follows:
-	//	• Searching for differences switches back-and-forth between
-	//	a search that starts at the beginning (the top-left corner), and
-	//	a search that starts at the end (the bottom-right corner). The goal of
-	//	the search is connect with the search from the opposite corner.
-	//	• As we search, we build a path in a greedy manner, where the first
-	//	match seen is added to the path (this is sub-optimal, but provides a
-	//	decent result in practice). When matches are found, we try the next pair
-	//	of symbols in the lists and follow all matches as far as possible.
-	//	• When searching for matches, we search along a diagonal going through
-	//	through the "frontier" point. If no matches are found, we advance the
-	//	frontier towards the opposite corner.
-	//	• This algorithm terminates when either the X coordinates or the
-	//	Y coordinates of the forward and reverse frontier points ever intersect.
+	//   - Searching for differences switches back-and-forth between
+	//     a search that starts at the beginning (the top-left corner), and
+	//     a search that starts at the end (the bottom-right corner).
+	//     The goal of the search is connect with the search
+	//     from the opposite corner.
+	//   - As we search, we build a path in a greedy manner,
+	//     where the first match seen is added to the path (this is sub-optimal,
+	//     but provides a decent result in practice). When matches are found,
+	//     we try the next pair of symbols in the lists and follow all matches
+	//     as far as possible.
+	//   - When searching for matches, we search along a diagonal going through
+	//     through the "frontier" point. If no matches are found,
+	//     we advance the frontier towards the opposite corner.
+	//   - This algorithm terminates when either the X coordinates or the
+	//     Y coordinates of the forward and reverse frontier points ever intersect.
 
 	// This algorithm is correct even if searching only in the forward direction
 	// or in the reverse direction. We do both because it is commonly observed
@@ -389,6 +392,7 @@ type point struct{ X, Y int }
 func (p *point) add(dx, dy int) { p.X += dx; p.Y += dy }
 
 // zigzag maps a consecutive sequence of integers to a zig-zag sequence.
+//
 //	[0 1 2 3 4 5 ...] => [0 -1 +1 -2 +2 ...]
 func zigzag(x int) int {
 	if x&1 != 0 {
diff --git a/vendor/github.com/google/go-cmp/cmp/internal/value/zero.go b/vendor/github.com/google/go-cmp/cmp/internal/value/zero.go
deleted file mode 100644
index 9147a2997..000000000
--- a/vendor/github.com/google/go-cmp/cmp/internal/value/zero.go
+++ /dev/null
@@ -1,48 +0,0 @@
-// Copyright 2017, The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package value
-
-import (
-	"math"
-	"reflect"
-)
-
-// IsZero reports whether v is the zero value.
-// This does not rely on Interface and so can be used on unexported fields.
-func IsZero(v reflect.Value) bool {
-	switch v.Kind() {
-	case reflect.Bool:
-		return v.Bool() == false
-	case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
-		return v.Int() == 0
-	case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr:
-		return v.Uint() == 0
-	case reflect.Float32, reflect.Float64:
-		return math.Float64bits(v.Float()) == 0
-	case reflect.Complex64, reflect.Complex128:
-		return math.Float64bits(real(v.Complex())) == 0 && math.Float64bits(imag(v.Complex())) == 0
-	case reflect.String:
-		return v.String() == ""
-	case reflect.UnsafePointer:
-		return v.Pointer() == 0
-	case reflect.Chan, reflect.Func, reflect.Interface, reflect.Ptr, reflect.Map, reflect.Slice:
-		return v.IsNil()
-	case reflect.Array:
-		for i := 0; i < v.Len(); i++ {
-			if !IsZero(v.Index(i)) {
-				return false
-			}
-		}
-		return true
-	case reflect.Struct:
-		for i := 0; i < v.NumField(); i++ {
-			if !IsZero(v.Field(i)) {
-				return false
-			}
-		}
-		return true
-	}
-	return false
-}
diff --git a/vendor/github.com/google/go-cmp/cmp/options.go b/vendor/github.com/google/go-cmp/cmp/options.go
index e57b9eb53..1f9ca9c48 100644
--- a/vendor/github.com/google/go-cmp/cmp/options.go
+++ b/vendor/github.com/google/go-cmp/cmp/options.go
@@ -33,6 +33,7 @@ type Option interface {
 }
 
 // applicableOption represents the following types:
+//
 //	Fundamental: ignore | validator | *comparer | *transformer
 //	Grouping:    Options
 type applicableOption interface {
@@ -43,6 +44,7 @@ type applicableOption interface {
 }
 
 // coreOption represents the following types:
+//
 //	Fundamental: ignore | validator | *comparer | *transformer
 //	Filters:     *pathFilter | *valuesFilter
 type coreOption interface {
@@ -336,9 +338,9 @@ func (tr transformer) String() string {
 // both implement T.
 //
 // The equality function must be:
-//	• Symmetric: equal(x, y) == equal(y, x)
-//	• Deterministic: equal(x, y) == equal(x, y)
-//	• Pure: equal(x, y) does not modify x or y
+//   - Symmetric: equal(x, y) == equal(y, x)
+//   - Deterministic: equal(x, y) == equal(x, y)
+//   - Pure: equal(x, y) does not modify x or y
 func Comparer(f interface{}) Option {
 	v := reflect.ValueOf(f)
 	if !function.IsType(v.Type(), function.Equal) || v.IsNil() {
@@ -430,7 +432,7 @@ func AllowUnexported(types ...interface{}) Option {
 }
 
 // Result represents the comparison result for a single node and
-// is provided by cmp when calling Result (see Reporter).
+// is provided by cmp when calling Report (see Reporter).
 type Result struct {
 	_     [0]func() // Make Result incomparable
 	flags resultFlags
diff --git a/vendor/github.com/google/go-cmp/cmp/path.go b/vendor/github.com/google/go-cmp/cmp/path.go
index c71003463..a0a588502 100644
--- a/vendor/github.com/google/go-cmp/cmp/path.go
+++ b/vendor/github.com/google/go-cmp/cmp/path.go
@@ -41,13 +41,13 @@ type PathStep interface {
 	// The type of each valid value is guaranteed to be identical to Type.
 	//
 	// In some cases, one or both may be invalid or have restrictions:
-	//	• For StructField, both are not interface-able if the current field
-	//	is unexported and the struct type is not explicitly permitted by
-	//	an Exporter to traverse unexported fields.
-	//	• For SliceIndex, one may be invalid if an element is missing from
-	//	either the x or y slice.
-	//	• For MapIndex, one may be invalid if an entry is missing from
-	//	either the x or y map.
+	//   - For StructField, both are not interface-able if the current field
+	//     is unexported and the struct type is not explicitly permitted by
+	//     an Exporter to traverse unexported fields.
+	//   - For SliceIndex, one may be invalid if an element is missing from
+	//     either the x or y slice.
+	//   - For MapIndex, one may be invalid if an entry is missing from
+	//     either the x or y map.
 	//
 	// The provided values must not be mutated.
 	Values() (vx, vy reflect.Value)
@@ -94,6 +94,7 @@ func (pa Path) Index(i int) PathStep {
 // The simplified path only contains struct field accesses.
 //
 // For example:
+//
 //	MyMap.MySlices.MyField
 func (pa Path) String() string {
 	var ss []string
@@ -108,6 +109,7 @@ func (pa Path) String() string {
 // GoString returns the path to a specific node using Go syntax.
 //
 // For example:
+//
 //	(*root.MyMap["key"].(*mypkg.MyStruct).MySlices)[2][3].MyField
 func (pa Path) GoString() string {
 	var ssPre, ssPost []string
@@ -159,7 +161,7 @@ func (ps pathStep) String() string {
 	if ps.typ == nil {
 		return "<nil>"
 	}
-	s := ps.typ.String()
+	s := value.TypeString(ps.typ, false)
 	if s == "" || strings.ContainsAny(s, "{}\n") {
 		return "root" // Type too simple or complex to print
 	}
@@ -282,7 +284,7 @@ type typeAssertion struct {
 
 func (ta TypeAssertion) Type() reflect.Type             { return ta.typ }
 func (ta TypeAssertion) Values() (vx, vy reflect.Value) { return ta.vx, ta.vy }
-func (ta TypeAssertion) String() string                 { return fmt.Sprintf(".(%v)", ta.typ) }
+func (ta TypeAssertion) String() string                 { return fmt.Sprintf(".(%v)", value.TypeString(ta.typ, false)) }
 
 // Transform is a transformation from the parent type to the current type.
 type Transform struct{ *transform }
diff --git a/vendor/github.com/google/go-cmp/cmp/report_compare.go b/vendor/github.com/google/go-cmp/cmp/report_compare.go
index 1ef65ac1d..2050bf6b4 100644
--- a/vendor/github.com/google/go-cmp/cmp/report_compare.go
+++ b/vendor/github.com/google/go-cmp/cmp/report_compare.go
@@ -7,8 +7,6 @@ package cmp
 import (
 	"fmt"
 	"reflect"
-
-	"github.com/google/go-cmp/cmp/internal/value"
 )
 
 // numContextRecords is the number of surrounding equal records to print.
@@ -117,7 +115,7 @@ func (opts formatOptions) FormatDiff(v *valueNode, ptrs *pointerReferences) (out
 
 	// For leaf nodes, format the value based on the reflect.Values alone.
 	// As a special case, treat equal []byte as a leaf nodes.
-	isBytes := v.Type.Kind() == reflect.Slice && v.Type.Elem() == reflect.TypeOf(byte(0))
+	isBytes := v.Type.Kind() == reflect.Slice && v.Type.Elem() == byteType
 	isEqualBytes := isBytes && v.NumDiff+v.NumIgnored+v.NumTransformed == 0
 	if v.MaxDepth == 0 || isEqualBytes {
 		switch opts.DiffMode {
@@ -248,11 +246,11 @@ func (opts formatOptions) formatDiffList(recs []reportRecord, k reflect.Kind, pt
 				var isZero bool
 				switch opts.DiffMode {
 				case diffIdentical:
-					isZero = value.IsZero(r.Value.ValueX) || value.IsZero(r.Value.ValueY)
+					isZero = r.Value.ValueX.IsZero() || r.Value.ValueY.IsZero()
 				case diffRemoved:
-					isZero = value.IsZero(r.Value.ValueX)
+					isZero = r.Value.ValueX.IsZero()
 				case diffInserted:
-					isZero = value.IsZero(r.Value.ValueY)
+					isZero = r.Value.ValueY.IsZero()
 				}
 				if isZero {
 					continue
diff --git a/vendor/github.com/google/go-cmp/cmp/report_reflect.go b/vendor/github.com/google/go-cmp/cmp/report_reflect.go
index 287b89358..2ab41fad3 100644
--- a/vendor/github.com/google/go-cmp/cmp/report_reflect.go
+++ b/vendor/github.com/google/go-cmp/cmp/report_reflect.go
@@ -16,6 +16,13 @@ import (
 	"github.com/google/go-cmp/cmp/internal/value"
 )
 
+var (
+	anyType    = reflect.TypeOf((*interface{})(nil)).Elem()
+	stringType = reflect.TypeOf((*string)(nil)).Elem()
+	bytesType  = reflect.TypeOf((*[]byte)(nil)).Elem()
+	byteType   = reflect.TypeOf((*byte)(nil)).Elem()
+)
+
 type formatValueOptions struct {
 	// AvoidStringer controls whether to avoid calling custom stringer
 	// methods like error.Error or fmt.Stringer.String.
@@ -184,7 +191,7 @@ func (opts formatOptions) FormatValue(v reflect.Value, parentKind reflect.Kind,
 		}
 		for i := 0; i < v.NumField(); i++ {
 			vv := v.Field(i)
-			if value.IsZero(vv) {
+			if vv.IsZero() {
 				continue // Elide fields with zero values
 			}
 			if len(list) == maxLen {
@@ -205,7 +212,7 @@ func (opts formatOptions) FormatValue(v reflect.Value, parentKind reflect.Kind,
 		}
 
 		// Check whether this is a []byte of text data.
-		if t.Elem() == reflect.TypeOf(byte(0)) {
+		if t.Elem() == byteType {
 			b := v.Bytes()
 			isPrintSpace := func(r rune) bool { return unicode.IsPrint(r) || unicode.IsSpace(r) }
 			if len(b) > 0 && utf8.Valid(b) && len(bytes.TrimFunc(b, isPrintSpace)) == 0 {
diff --git a/vendor/github.com/google/go-cmp/cmp/report_slices.go b/vendor/github.com/google/go-cmp/cmp/report_slices.go
index 68b5c1ae1..23e444f62 100644
--- a/vendor/github.com/google/go-cmp/cmp/report_slices.go
+++ b/vendor/github.com/google/go-cmp/cmp/report_slices.go
@@ -104,7 +104,7 @@ func (opts formatOptions) FormatDiffSlice(v *valueNode) textNode {
 	case t.Kind() == reflect.String:
 		sx, sy = vx.String(), vy.String()
 		isString = true
-	case t.Kind() == reflect.Slice && t.Elem() == reflect.TypeOf(byte(0)):
+	case t.Kind() == reflect.Slice && t.Elem() == byteType:
 		sx, sy = string(vx.Bytes()), string(vy.Bytes())
 		isString = true
 	case t.Kind() == reflect.Array:
@@ -147,7 +147,10 @@ func (opts formatOptions) FormatDiffSlice(v *valueNode) textNode {
 			})
 			efficiencyLines := float64(esLines.Dist()) / float64(len(esLines))
 			efficiencyBytes := float64(esBytes.Dist()) / float64(len(esBytes))
-			isPureLinedText = efficiencyLines < 4*efficiencyBytes
+			quotedLength := len(strconv.Quote(sx + sy))
+			unquotedLength := len(sx) + len(sy)
+			escapeExpansionRatio := float64(quotedLength) / float64(unquotedLength)
+			isPureLinedText = efficiencyLines < 4*efficiencyBytes || escapeExpansionRatio > 1.1
 		}
 	}
 
@@ -171,12 +174,13 @@ func (opts formatOptions) FormatDiffSlice(v *valueNode) textNode {
 		// differences in a string literal. This format is more readable,
 		// but has edge-cases where differences are visually indistinguishable.
 		// This format is avoided under the following conditions:
-		//	• A line starts with `"""`
-		//	• A line starts with "..."
-		//	• A line contains non-printable characters
-		//	• Adjacent different lines differ only by whitespace
+		//   - A line starts with `"""`
+		//   - A line starts with "..."
+		//   - A line contains non-printable characters
+		//   - Adjacent different lines differ only by whitespace
 		//
 		// For example:
+		//
 		//		"""
 		//		... // 3 identical lines
 		//		foo
@@ -231,7 +235,7 @@ func (opts formatOptions) FormatDiffSlice(v *valueNode) textNode {
 			var out textNode = &textWrap{Prefix: "(", Value: list2, Suffix: ")"}
 			switch t.Kind() {
 			case reflect.String:
-				if t != reflect.TypeOf(string("")) {
+				if t != stringType {
 					out = opts.FormatType(t, out)
 				}
 			case reflect.Slice:
@@ -326,12 +330,12 @@ func (opts formatOptions) FormatDiffSlice(v *valueNode) textNode {
 	switch t.Kind() {
 	case reflect.String:
 		out = &textWrap{Prefix: "strings.Join(", Value: out, Suffix: fmt.Sprintf(", %q)", delim)}
-		if t != reflect.TypeOf(string("")) {
+		if t != stringType {
 			out = opts.FormatType(t, out)
 		}
 	case reflect.Slice:
 		out = &textWrap{Prefix: "bytes.Join(", Value: out, Suffix: fmt.Sprintf(", %q)", delim)}
-		if t != reflect.TypeOf([]byte(nil)) {
+		if t != bytesType {
 			out = opts.FormatType(t, out)
 		}
 	}
@@ -446,7 +450,6 @@ func (opts formatOptions) formatDiffSlice(
 //		{NumIdentical: 3},
 //		{NumInserted: 1},
 //	]
-//
 func coalesceAdjacentEdits(name string, es diff.EditScript) (groups []diffStats) {
 	var prevMode byte
 	lastStats := func(mode byte) *diffStats {
@@ -503,7 +506,6 @@ func coalesceAdjacentEdits(name string, es diff.EditScript) (groups []diffStats)
 //		{NumIdentical: 8, NumRemoved: 12, NumInserted: 3},
 //		{NumIdentical: 63},
 //	]
-//
 func coalesceInterveningIdentical(groups []diffStats, windowSize int) []diffStats {
 	groups, groupsOrig := groups[:0], groups
 	for i, ds := range groupsOrig {
@@ -548,7 +550,6 @@ func coalesceInterveningIdentical(groups []diffStats, windowSize int) []diffStat
 //		{NumRemoved: 9},
 //		{NumIdentical: 64}, // incremented by 10
 //	]
-//
 func cleanupSurroundingIdentical(groups []diffStats, eq func(i, j int) bool) []diffStats {
 	var ix, iy int // indexes into sequence x and y
 	for i, ds := range groups {
diff --git a/vendor/github.com/google/go-cmp/cmp/report_text.go b/vendor/github.com/google/go-cmp/cmp/report_text.go
index 0fd46d7ff..388fcf571 100644
--- a/vendor/github.com/google/go-cmp/cmp/report_text.go
+++ b/vendor/github.com/google/go-cmp/cmp/report_text.go
@@ -393,6 +393,7 @@ func (s diffStats) Append(ds diffStats) diffStats {
 // String prints a humanly-readable summary of coalesced records.
 //
 // Example:
+//
 //	diffStats{Name: "Field", NumIgnored: 5}.String() => "5 ignored fields"
 func (s diffStats) String() string {
 	var ss []string
diff --git a/vendor/modules.txt b/vendor/modules.txt
index dd82e64cf..c652cb1ef 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -310,7 +310,7 @@ github.com/golang/protobuf/ptypes/any
 github.com/golang/protobuf/ptypes/duration
 github.com/golang/protobuf/ptypes/empty
 github.com/golang/protobuf/ptypes/timestamp
-# github.com/google/go-cmp v0.5.8
+# github.com/google/go-cmp v0.5.9
 ## explicit
 github.com/google/go-cmp/cmp
 github.com/google/go-cmp/cmp/internal/diff


Test patch:
diff --git a/internal/distro/fedora/distro_test.go b/internal/distro/fedora/distro_test.go
index c9fa97fdc..eb368ba54 100644
--- a/internal/distro/fedora/distro_test.go
+++ b/internal/distro/fedora/distro_test.go
@@ -92,25 +92,23 @@ func TestFilenameFromType(t *testing.T) {
 				mimeType: "application/x-vmdk",
 			},
 		},
-
 		{
-			name: "iot-commit",
-			args: args{"iot-commit"},
+			name: "container",
+			args: args{"container"},
 			want: wantResult{
-				filename: "commit.tar",
+				filename: "container.tar",
 				mimeType: "application/x-tar",
 			},
 		},
-		// Alias
 		{
-			name: "fedora-iot-commit",
-			args: args{"fedora-iot-commit"},
+			name: "iot-commit",
+			args: args{"iot-commit"},
 			want: wantResult{
 				filename: "commit.tar",
 				mimeType: "application/x-tar",
 			},
 		},
-		{
+		{ // Alias
 			name: "fedora-iot-commit",
 			args: args{"fedora-iot-commit"},
 			want: wantResult{
@@ -118,23 +116,6 @@ func TestFilenameFromType(t *testing.T) {
 				mimeType: "application/x-tar",
 			},
 		},
-		{
-			name: "fedora-iot-container",
-			args: args{"fedora-iot-container"},
-			want: wantResult{
-				filename: "container.tar",
-				mimeType: "application/x-tar",
-			},
-		},
-		{
-			name: "container",
-			args: args{"container"},
-			want: wantResult{
-				filename: "container.tar",
-				mimeType: "application/x-tar",
-			},
-		},
-		// Alias
 		{
 			name: "iot-container",
 			args: args{"iot-container"},
@@ -143,7 +124,7 @@ func TestFilenameFromType(t *testing.T) {
 				mimeType: "application/x-tar",
 			},
 		},
-		{
+		{ // Alias
 			name: "fedora-iot-container",
 			args: args{"fedora-iot-container"},
 			want: wantResult{
@@ -151,16 +132,6 @@ func TestFilenameFromType(t *testing.T) {
 				mimeType: "application/x-tar",
 			},
 		},
-
-		{
-			name: "fedora-iot-installer",
-			args: args{"fedora-iot-installer"},
-			want: wantResult{
-				filename: "installer.iso",
-				mimeType: "application/x-iso9660-image",
-			},
-		},
-		// Alias
 		{
 			name: "iot-installer",
 			args: args{"iot-installer"},
@@ -169,7 +140,7 @@ func TestFilenameFromType(t *testing.T) {
 				mimeType: "application/x-iso9660-image",
 			},
 		},
-		{
+		{ // Alias
 			name: "fedora-iot-installer",
 			args: args{"fedora-iot-installer"},
 			want: wantResult{
@@ -274,10 +245,10 @@ func TestImageType_Name(t *testing.T) {
 				"vhd",
 				"vmdk",
 				"ami",
-				"fedora-iot-commit",
-				"fedora-iot-container",
-				"fedora-iot-installer",
-				"fedora-iot-raw-image",
+				"iot-commit",
+				"iot-container",
+				"iot-installer",
+				"iot-raw-image",
 				"oci",
 			},
 		},
@@ -288,10 +259,10 @@ func TestImageType_Name(t *testing.T) {
 				"openstack",
 				"ami",
 				"oci",
-				"fedora-iot-commit",
-				"fedora-iot-container",
-				"fedora-iot-installer",
-				"fedora-iot-raw-image",
+				"iot-commit",
+				"iot-container",
+				"iot-installer",
+				"iot-raw-image",
 			},
 		},
 	}
@@ -305,7 +276,7 @@ func TestImageType_Name(t *testing.T) {
 				arch, err := dist.distro.GetArch(mapping.arch)
 				if assert.NoError(t, err) {
 					for _, imgName := range mapping.imgNames {
-						if imgName == "fedora-iot-commit" {
+						if imgName == "iot-commit" {
 							continue
 						}
 						imgType, err := arch.GetImageType(imgName)
@@ -332,32 +303,32 @@ func TestImageTypeAliases(t *testing.T) {
 		want wantResult
 	}{
 		{
-			name: "fedora-iot-commit aliases",
+			name: "iot-commit aliases",
 			args: args{
-				imageTypeAliases: []string{"iot-commit"},
+				imageTypeAliases: []string{"fedora-iot-commit"},
 			},
 			want: wantResult{
-				imageTypeName: "fedora-iot-commit",
+				imageTypeName: "iot-commit",
 			},
 		},
 
 		{
-			name: "fedora-iot-container aliases",
+			name: "iot-container aliases",
 			args: args{
-				imageTypeAliases: []string{"iot-container"},
+				imageTypeAliases: []string{"fedora-iot-container"},
 			},
 			want: wantResult{
-				imageTypeName: "fedora-iot-container",
+				imageTypeName: "iot-container",
 			},
 		},
 
 		{
-			name: "fedora-iot-installer aliases",
+			name: "iot-installer aliases",
 			args: args{
-				imageTypeAliases: []string{"iot-installer"},
+				imageTypeAliases: []string{"fedora-iot-installer"},
 			},
 			want: wantResult{
-				imageTypeName: "fedora-iot-installer",
+				imageTypeName: "iot-installer",
 			},
 		},
 	}
@@ -419,9 +390,9 @@ func TestDistro_ManifestError(t *testing.T) {
 			}
 			testPackageSpecSets := distro_test_common.GetTestingImagePackageSpecSets("kernel", imgType)
 			_, err := imgType.Manifest(bp.Customizations, imgOpts, nil, testPackageSpecSets, nil, 0)
-			if imgTypeName == "fedora-iot-commit" || imgTypeName == "fedora-iot-container" || imgTypeName == "fedora-iot-raw-image" {
+			if imgTypeName == "iot-commit" || imgTypeName == "iot-container" || imgTypeName == "iot-raw-image" {
 				assert.EqualError(t, err, "kernel boot parameter customizations are not supported for ostree types")
-			} else if imgTypeName == "fedora-iot-installer" {
+			} else if imgTypeName == "iot-installer" {
 				assert.EqualError(t, err, fmt.Sprintf("boot ISO image type \"%s\" requires specifying a URL from which to retrieve the OSTree commit", imgTypeName))
 			} else {
 				assert.NoError(t, err)
@@ -444,10 +415,10 @@ func TestArchitecture_ListImageTypes(t *testing.T) {
 				"vhd",
 				"vmdk",
 				"ami",
-				"fedora-iot-commit",
-				"fedora-iot-container",
-				"fedora-iot-installer",
-				"fedora-iot-raw-image",
+				"iot-commit",
+				"iot-container",
+				"iot-installer",
+				"iot-raw-image",
 				"oci",
 				"container",
 			},
@@ -458,10 +429,10 @@ func TestArchitecture_ListImageTypes(t *testing.T) {
 				"qcow2",
 				"openstack",
 				"ami",
-				"fedora-iot-commit",
-				"fedora-iot-container",
-				"fedora-iot-installer",
-				"fedora-iot-raw-image",
+				"iot-commit",
+				"iot-container",
+				"iot-installer",
+				"iot-raw-image",
 				"oci",
 				"container",
 			},
@@ -555,9 +526,9 @@ func TestDistro_CustomFileSystemManifestError(t *testing.T) {
 		for _, imgTypeName := range arch.ListImageTypes() {
 			imgType, _ := arch.GetImageType(imgTypeName)
 			_, err := imgType.Manifest(bp.Customizations, distro.ImageOptions{}, nil, nil, nil, 0)
-			if imgTypeName == "fedora-iot-commit" || imgTypeName == "fedora-iot-container" || imgTypeName == "fedora-iot-raw-image" {
+			if imgTypeName == "iot-commit" || imgTypeName == "iot-container" || imgTypeName == "iot-raw-image" {
 				assert.EqualError(t, err, "Custom mountpoints are not supported for ostree types")
-			} else if imgTypeName == "fedora-iot-installer" {
+			} else if imgTypeName == "iot-installer" {
 				continue
 			} else {
 				assert.EqualError(t, err, "The following custom mountpoints are not supported [\"/etc\"]")
@@ -584,9 +555,9 @@ func TestDistro_TestRootMountPoint(t *testing.T) {
 			imgType, _ := arch.GetImageType(imgTypeName)
 			testPackageSpecSets := distro_test_common.GetTestingImagePackageSpecSets("kernel", imgType)
 			_, err := imgType.Manifest(bp.Customizations, distro.ImageOptions{}, nil, testPackageSpecSets, nil, 0)
-			if imgTypeName == "fedora-iot-commit" || imgTypeName == "fedora-iot-container" || imgTypeName == "fedora-iot-raw-image" {
+			if imgTypeName == "iot-commit" || imgTypeName == "iot-container" || imgTypeName == "iot-raw-image" {
 				assert.EqualError(t, err, "Custom mountpoints are not supported for ostree types")
-			} else if imgTypeName == "fedora-iot-installer" {
+			} else if imgTypeName == "iot-installer" {
 				continue
 			} else {
 				assert.NoError(t, err)
@@ -617,7 +588,7 @@ func TestDistro_CustomFileSystemSubDirectories(t *testing.T) {
 			imgType, _ := arch.GetImageType(imgTypeName)
 			testPackageSpecSets := distro_test_common.GetTestingImagePackageSpecSets("kernel", imgType)
 			_, err := imgType.Manifest(bp.Customizations, distro.ImageOptions{}, nil, testPackageSpecSets, nil, 0)
-			if strings.HasPrefix(imgTypeName, "fedora-iot-") {
+			if strings.HasPrefix(imgTypeName, "iot-") {
 				continue
 			} else {
 				assert.NoError(t, err)
@@ -656,7 +627,7 @@ func TestDistro_MountpointsWithArbitraryDepthAllowed(t *testing.T) {
 			imgType, _ := arch.GetImageType(imgTypeName)
 			testPackageSpecSets := distro_test_common.GetTestingImagePackageSpecSets("kernel", imgType)
 			_, err := imgType.Manifest(bp.Customizations, distro.ImageOptions{}, nil, testPackageSpecSets, nil, 0)
-			if strings.HasPrefix(imgTypeName, "fedora-iot-") {
+			if strings.HasPrefix(imgTypeName, "iot-") {
 				continue
 			} else {
 				assert.NoError(t, err)
@@ -690,7 +661,7 @@ func TestDistro_DirtyMountpointsNotAllowed(t *testing.T) {
 		for _, imgTypeName := range arch.ListImageTypes() {
 			imgType, _ := arch.GetImageType(imgTypeName)
 			_, err := imgType.Manifest(bp.Customizations, distro.ImageOptions{}, nil, nil, nil, 0)
-			if strings.HasPrefix(imgTypeName, "fedora-iot-") {
+			if strings.HasPrefix(imgTypeName, "iot-") {
 				continue
 			} else {
 				assert.EqualError(t, err, "The following custom mountpoints are not supported [\"//\" \"/var//\" \"/var//log/audit/\"]")
@@ -720,9 +691,9 @@ func TestDistro_CustomFileSystemPatternMatching(t *testing.T) {
 		for _, imgTypeName := range arch.ListImageTypes() {
 			imgType, _ := arch.GetImageType(imgTypeName)
 			_, err := imgType.Manifest(bp.Customizations, distro.ImageOptions{}, nil, nil, nil, 0)
-			if imgTypeName == "fedora-iot-commit" || imgTypeName == "fedora-iot-container" || imgTypeName == "fedora-iot-raw-image" {
+			if imgTypeName == "iot-commit" || imgTypeName == "iot-container" || imgTypeName == "iot-raw-image" {
 				assert.EqualError(t, err, "Custom mountpoints are not supported for ostree types")
-			} else if imgTypeName == "fedora-iot-installer" {
+			} else if imgTypeName == "iot-installer" {
 				continue
 			} else {
 				assert.EqualError(t, err, "The following custom mountpoints are not supported [\"/variable\" \"/variable/log/audit\"]")
@@ -749,9 +720,9 @@ func TestDistro_CustomUsrPartitionNotLargeEnough(t *testing.T) {
 			imgType, _ := arch.GetImageType(imgTypeName)
 			testPackageSpecSets := distro_test_common.GetTestingImagePackageSpecSets("kernel", imgType)
 			_, err := imgType.Manifest(bp.Customizations, distro.ImageOptions{}, nil, testPackageSpecSets, nil, 0)
-			if imgTypeName == "fedora-iot-commit" || imgTypeName == "fedora-iot-container" || imgTypeName == "fedora-iot-raw-image" {
+			if imgTypeName == "iot-commit" || imgTypeName == "iot-container" || imgTypeName == "iot-raw-image" {
 				assert.EqualError(t, err, "Custom mountpoints are not supported for ostree types")
-			} else if imgTypeName == "fedora-iot-installer" {
+			} else if imgTypeName == "iot-installer" {
 				continue
 			} else {
 				assert.NoError(t, err)
diff --git a/internal/osbuild/common_test.go b/internal/osbuild/common_test.go
index 30cd7f489..913ae53ef 100644
--- a/internal/osbuild/common_test.go
+++ b/internal/osbuild/common_test.go
@@ -2,7 +2,8 @@ package osbuild
 
 import "github.com/osbuild/osbuild-composer/internal/disk"
 
-// This is a copy of `internal/disk/disk_test.go`:
+// This is a copy of `internal/disk/disk_test.go`
+// (but ours has one more entry: "luks+lvm+clevisBind"):
 var testPartitionTables = map[string]disk.PartitionTable{
 
 	"plain": {
@@ -202,6 +203,83 @@ var testPartitionTables = map[string]disk.PartitionTable{
 		},
 	},
 
+	"luks+lvm+clevisBind": {
+		UUID: "D209C89E-EA5E-4FBD-B161-B461CCE297E0",
+		Type: "gpt",
+		Partitions: []disk.Partition{
+			{
+				Size:     1048576, // 1MB
+				Bootable: true,
+				Type:     disk.BIOSBootPartitionGUID,
+				UUID:     disk.BIOSBootPartitionUUID,
+			},
+			{
+				Size: 209715200, // 200 MB
+				Type: disk.EFISystemPartitionGUID,
+				UUID: disk.EFISystemPartitionUUID,
+				Payload: &disk.Filesystem{
+					Type:         "vfat",
+					UUID:         disk.EFIFilesystemUUID,
+					Mountpoint:   "/boot/efi",
+					Label:        "EFI-SYSTEM",
+					FSTabOptions: "defaults,uid=0,gid=0,umask=077,shortname=winnt",
+					FSTabFreq:    0,
+					FSTabPassNo:  2,
+				},
+			},
+			{
+				Size: 1024000, // 500 MB
+				Type: disk.FilesystemDataGUID,
+				UUID: disk.FilesystemDataUUID,
+				Payload: &disk.Filesystem{
+					Type:         "xfs",
+					Mountpoint:   "/boot",
+					Label:        "boot",
+					FSTabOptions: "defaults",
+					FSTabFreq:    0,
+					FSTabPassNo:  0,
+				},
+			},
+			{
+				Type: disk.FilesystemDataGUID,
+				UUID: disk.RootPartitionUUID,
+				Payload: &disk.LUKSContainer{
+					Label:      "crypt_root",
+					Cipher:     "cipher_null",
+					Passphrase: "osbuild",
+					PBKDF: disk.Argon2id{
+						Memory:      32,
+						Iterations:  4,
+						Parallelism: 1,
+					},
+					Clevis: &disk.ClevisBind{
+						Pin:              "null",
+						Policy:           "{}",
+						RemovePassphrase: true,
+					},
+					Payload: &disk.LVMVolumeGroup{
+						Name:        "rootvg",
+						Description: "built with lvm2 and osbuild",
+						LogicalVolumes: []disk.LVMLogicalVolume{
+							{
+								Size: 9 * 1024 * 1024 * 1024, // 9 GB
+								Name: "rootlv",
+								Payload: &disk.Filesystem{
+									Type:         "xfs",
+									Label:        "root",
+									Mountpoint:   "/",
+									FSTabOptions: "defaults",
+									FSTabFreq:    0,
+									FSTabPassNo:  0,
+								},
+							},
+						},
+					},
+				},
+			},
+		},
+	},
+
 	"btrfs": {
 		UUID: "D209C89E-EA5E-4FBD-B161-B461CCE297E0",
 		Type: "gpt",
diff --git a/internal/osbuild/device_test.go b/internal/osbuild/device_test.go
index ca292ab14..3a37fa468 100644
--- a/internal/osbuild/device_test.go
+++ b/internal/osbuild/device_test.go
@@ -114,3 +114,28 @@ func TestGenDeviceFinishStages(t *testing.T) {
 	assert.True(ok, "Need LVM2MetadataStageOptions for org.osbuild.lvm2.metadata")
 	assert.Equal("root", opts.VGName)
 }
+
+func TestGenDeviceFinishStagesOrderWithLVMClevisBind(t *testing.T) {
+	assert := assert.New(t)
+
+	// math/rand is good enough in this case
+	/* #nosec G404 */
+	rng := rand.New(rand.NewSource(13))
+
+	luks_lvm := testPartitionTables["luks+lvm+clevisBind"]
+
+	pt, err := disk.NewPartitionTable(&luks_lvm, []blueprint.FilesystemCustomization{}, 0, false, rng)
+	assert.NoError(err)
+
+	stages := GenDeviceFinishStages(pt, "image.raw")
+
+	// we should have two stages
+	assert.Equal(2, len(stages))
+	lvm := stages[0]
+	luks := stages[1]
+
+	// the first one should be "org.osbuild.lvm2.metadata"
+	assert.Equal("org.osbuild.lvm2.metadata", lvm.Type)
+	// followed by "org.osbuild.luks2.remove-key"
+	assert.Equal("org.osbuild.luks2.remove-key", luks.Type)
+}
diff --git a/test/cases/api.sh b/test/cases/api.sh
index c84f6df99..d8fe82403 100755
--- a/test/cases/api.sh
+++ b/test/cases/api.sh
@@ -35,6 +35,7 @@ export IMAGE_TYPE_GCP="gcp"
 export IMAGE_TYPE_IMAGE_INSTALLER="image-installer"
 export IMAGE_TYPE_GUEST="guest-image"
 export IMAGE_TYPE_VSPHERE="vsphere"
+export IMAGE_TYPE_IOT_COMMIT="iot-commit"
 
 if (( $# > 2 )); then
     echo "$0 does not support more than two arguments"
@@ -66,7 +67,7 @@ case ${IMAGE_TYPE} in
     "$IMAGE_TYPE_EDGE_CONTAINER")
         CLOUD_PROVIDER="${CLOUD_PROVIDER_CONTAINER_IMAGE_REGISTRY}"
         ;;
-    "$IMAGE_TYPE_EDGE_COMMIT"|"$IMAGE_TYPE_EDGE_INSTALLER"|"$IMAGE_TYPE_IMAGE_INSTALLER"|"$IMAGE_TYPE_GUEST"|"$IMAGE_TYPE_VSPHERE")
+    "$IMAGE_TYPE_EDGE_COMMIT"|"$IMAGE_TYPE_IOT_COMMIT"|"$IMAGE_TYPE_EDGE_INSTALLER"|"$IMAGE_TYPE_IMAGE_INSTALLER"|"$IMAGE_TYPE_GUEST"|"$IMAGE_TYPE_VSPHERE")
         # blobby image types: upload to s3 and provide download link
         CLOUD_PROVIDER="${2:-$CLOUD_PROVIDER_AWS_S3}"
         if [ "${CLOUD_PROVIDER}" != "${CLOUD_PROVIDER_AWS_S3}" ] && [ "${CLOUD_PROVIDER}" != "${CLOUD_PROVIDER_GENERIC_S3}" ]; then
diff --git a/test/cases/api/aws.s3.sh b/test/cases/api/aws.s3.sh
index 29cd5bc9d..12723f8f5 100644
--- a/test/cases/api/aws.s3.sh
+++ b/test/cases/api/aws.s3.sh
@@ -47,7 +47,7 @@ function installClient() {
 
 function createReqFile() {
     case ${IMAGE_TYPE} in
-        "$IMAGE_TYPE_EDGE_COMMIT"|"$IMAGE_TYPE_EDGE_CONTAINER"|"$IMAGE_TYPE_EDGE_INSTALLER"|"$IMAGE_TYPE_IMAGE_INSTALLER")
+        "$IMAGE_TYPE_EDGE_COMMIT"|"$IMAGE_TYPE_IOT_COMMIT"|"$IMAGE_TYPE_EDGE_CONTAINER"|"$IMAGE_TYPE_EDGE_INSTALLER"|"$IMAGE_TYPE_IMAGE_INSTALLER")
             createReqFileEdge
             ;;
         "$IMAGE_TYPE_VSPHERE")
@@ -90,7 +90,7 @@ function verify() {
 
     # Download the object using the Presigned URL and inspect
     case ${IMAGE_TYPE} in
-        "$IMAGE_TYPE_EDGE_COMMIT")
+        "$IMAGE_TYPE_EDGE_COMMIT"|"${IMAGE_TYPE_IOT_COMMIT}")
             if [[ $ID == "fedora" ]]; then
                 # on Fedora, the test case uploads the artifact publicly,
                 # so check here that the URL isn't presigned
diff --git a/test/cases/api/aws.sh b/test/cases/api/aws.sh
index 469e20397..981a1342b 100644
--- a/test/cases/api/aws.sh
+++ b/test/cases/api/aws.sh
@@ -22,7 +22,7 @@ function cleanup() {
     $AWS_CMD ec2 delete-snapshot --snapshot-id "$AWS_SNAPSHOT_ID"
     $AWS_CMD ec2 delete-key-pair --key-name "key-for-$AMI_IMAGE_ID"
 
-    $AWS_CMD ec2 deregister-image --region "$REGION_2" --image-id "$AMI_2"
+    $AWS_CMD ec2 deregister-image --region "$REGION_2" --image-id "$AMI_ID_2"
     $AWS_CMD ec2 delete-snapshot --region "$REGION_2" --snapshot-id "$SNAPSHOT_ID_2"
   fi
 }
@@ -146,6 +146,12 @@ function verify() {
   SNAPSHOT_ID_2=$(jq -r '.Images[].BlockDeviceMappings[].Ebs.SnapshotId' "$WORKDIR/ami2.json")
   $AWS_CMD ec2 describe-snapshot-attribute --region "$REGION_2" --snapshot-id "$SNAPSHOT_ID_2" \
            --attribute createVolumePermission > "$WORKDIR/snapshot-attributes2.json"
+
+  # Tag cloned image and snapshot with "gitlab-ci-test" tag
+  $AWS_CMD ec2 create-tags --region "$REGION_2" \
+    --resources "${SNAPSHOT_ID_2}" "${AMI_ID_2}" \
+    --tags Key=gitlab-ci-test,Value=true
+
   SHARED_ID_2=$(jq -r ".CreateVolumePermissions[] | select(.UserId==\"$AWS_API_TEST_SHARE_ACCOUNT\").UserId" "$WORKDIR/snapshot-attributes2.json")
   if [ "$AWS_API_TEST_SHARE_ACCOUNT" != "$SHARED_ID_2" ]; then
       echo "EC2 Snapshot wasn't shared with AWS_API_TEST_SHARE_ACCOUNT"
diff --git a/test/cases/api/common/s3.sh b/test/cases/api/common/s3.sh
index d88461c9d..0a924369f 100644
--- a/test/cases/api/common/s3.sh
+++ b/test/cases/api/common/s3.sh
@@ -121,7 +121,7 @@ function createReqFileVSphere() {
 EOF
 }
 
-# verify edge commit content
+# verify edge/iot commit content
 function verifyEdgeCommit() {
     filename="$1"
     greenprint "Verifying contents of ${filename}"
diff --git a/test/cases/generic_s3.sh b/test/cases/generic_s3.sh
index 6a2539038..8f15cc2d0 100755
--- a/test/cases/generic_s3.sh
+++ b/test/cases/generic_s3.sh
@@ -33,11 +33,11 @@ trap cleanup EXIT
 # resources in case the test unexpectedly fails or is canceled
 CI="${CI:-false}"
 if [[ "$CI" == true ]]; then
-  # in CI, imitate GenerateCIArtifactName() from internal/test/helpers.go
-  TEST_ID="$DISTRO_CODE-$ARCH-$CI_COMMIT_BRANCH-$CI_BUILD_ID"
+    # in CI, imitate GenerateCIArtifactName() from internal/test/helpers.go
+    TEST_ID="$DISTRO_CODE-$ARCH-$CI_COMMIT_BRANCH-$CI_BUILD_ID"
 else
-  # if not running in Jenkins, generate ID not relying on specific env variables
-  TEST_ID=$(uuidgen);
+    # if not running in Jenkins, generate ID not relying on specific env variables
+    TEST_ID=$(uuidgen);
 fi
 
 # Set up temporary files.
@@ -88,8 +88,8 @@ ${CONTAINER_RUNTIME} run --rm -d \
     -e MINIO_ROOT_USER="${MINIO_ROOT_USER}" \
     -e MINIO_ROOT_PASSWORD="${MINIO_ROOT_PASSWORD}" \
     ${CONTAINER_MINIO_SERVER} server /data
-# Kill the server once we're done
-trap '${CONTAINER_RUNTIME} kill ${MINIO_CONTAINER_NAME}' EXIT
+    # Kill the server once we're done
+    trap '${CONTAINER_RUNTIME} kill ${MINIO_CONTAINER_NAME}' EXIT
 
 # Configure the local server (retry until the service is up)
 MINIO_CONFIGURE_RETRY=0
@@ -99,13 +99,13 @@ until [ "${MINIO_CONFIGURE_RETRY}" -ge "${MINIO_CONFIGURE_MAX_RETRY}" ]
 do
     ${MC_CMD} alias set ${MINIO_SERVER_ALIAS} ${MINIO_ENDPOINT} ${MINIO_ROOT_USER} "${MINIO_ROOT_PASSWORD}" && break
     MINIO_CONFIGURE_RETRY=$(${MINIO_CONFIGURE_RETRY} + 1)
-	echo "Retrying [${MINIO_CONFIGURE_RETRY}/${MINIO_CONFIGURE_MAX_RETRY}] in ${MINIO_RETRY_INTERVAL}(s) "
-	sleep ${MINIO_RETRY_INTERVAL}
+    echo "Retrying [${MINIO_CONFIGURE_RETRY}/${MINIO_CONFIGURE_MAX_RETRY}] in ${MINIO_RETRY_INTERVAL}(s) "
+    sleep ${MINIO_RETRY_INTERVAL}
 done
 
 if [ "${MINIO_CONFIGURE_RETRY}" -ge "${MINIO_CONFIGURE_MAX_RETRY}" ]; then
-  echo "Failed to set MinIO alias after ${MINIO_CONFIGURE_MAX_RETRY} attempts!"
-  exit 1
+    echo "Failed to set MinIO alias after ${MINIO_CONFIGURE_MAX_RETRY} attempts!"
+    exit 1
 fi
 
 # Create the bucket
diff --git a/test/cases/ostree-ng.sh b/test/cases/ostree-ng.sh
index e8d6ff14a..f512ac4bc 100755
--- a/test/cases/ostree-ng.sh
+++ b/test/cases/ostree-ng.sh
@@ -93,8 +93,8 @@ SSH_KEY_PUB=$(cat "${SSH_KEY}".pub)
 
 case "${ID}-${VERSION_ID}" in
     "fedora-"*)
-        CONTAINER_TYPE=fedora-iot-container
-        INSTALLER_TYPE=fedora-iot-installer
+        CONTAINER_TYPE=iot-container
+        INSTALLER_TYPE=iot-installer
         OSTREE_REF="fedora/${VERSION_ID}/${ARCH}/iot"
         OSTREE_OSNAME=fedora
         OS_VARIANT="fedora-unknown"
diff --git a/test/cases/ostree-raw-image.sh b/test/cases/ostree-raw-image.sh
index cda1abe2b..1d0cdebe8 100755
--- a/test/cases/ostree-raw-image.sh
+++ b/test/cases/ostree-raw-image.sh
@@ -102,8 +102,8 @@ case "${ID}-${VERSION_ID}" in
         OS_VARIANT="centos-stream9"
         ;;
     "fedora-"*)
-        CONTAINER_TYPE=fedora-iot-container
-        RAW_IMAGE_TYPE=fedora-iot-raw-image
+        CONTAINER_TYPE=iot-container
+        RAW_IMAGE_TYPE=iot-raw-image
         OSTREE_REF="fedora/${VERSION_ID}/${ARCH}/iot"
         OS_VARIANT="fedora-unknown"
         OSTREE_OSNAME="fedora-iot"
@@ -297,6 +297,27 @@ name = "kernel-rt"
 EOF
 fi
 
+# User in raw image blueprint is not for RHEL 9.1 and 8.7
+# Workaround for RHEL 9.1 and 8.7 nightly test
+# Check osbuild-composer version first
+if ! nvrGreaterOrEqual "osbuild-composer" "64"; then
+    USER_IN_RAW="false"
+else
+    USER_IN_RAW="true"
+fi
+
+if [[ "$USER_IN_RAW" == "false" ]]; then
+    tee -a "$BLUEPRINT_FILE" > /dev/null << EOF
+[[customizations.user]]
+name = "admin"
+description = "Administrator account"
+password = "\$6\$GRmb7S0p8vsYmXzH\$o0E020S.9JQGaHkszoog4ha4AQVs3sk8q0DvLjSMxoxHBKnB2FBXGQ/OkwZQfW/76ktHd0NX5nls2LPxPuUdl."
+key = "${SSH_KEY_PUB}"
+home = "/home/admin/"
+groups = ["wheel"]
+EOF
+fi
+
 greenprint "📄 container blueprint"
 cat "$BLUEPRINT_FILE"
 
@@ -359,7 +380,12 @@ description = "A rhel-edge raw image"
 version = "0.0.1"
 modules = []
 groups = []
+EOF
 
+# User in raw image blueprint is not for RHEL 9.1 and 8.7
+# Workaround for RHEL 9.1 and 8.7 nightly test
+if [[ "$USER_IN_RAW" == "true" ]]; then
+    tee -a "$BLUEPRINT_FILE" > /dev/null << EOF
 [[customizations.user]]
 name = "admin"
 description = "Administrator account"
@@ -368,6 +394,7 @@ key = "${SSH_KEY_PUB}"
 home = "/home/admin/"
 groups = ["wheel"]
 EOF
+fi
 
 greenprint "📄 raw image blueprint"
 cat "$BLUEPRINT_FILE"
@@ -588,6 +615,19 @@ name = "kernel-rt"
 EOF
 fi
 
+# User in raw image blueprint is not for RHEL 9.1 and 8.7
+# Workaround for RHEL 9.1 and 8.7 nightly test
+if [[ "$USER_IN_RAW" == "false" ]]; then
+    tee -a "$BLUEPRINT_FILE" > /dev/null << EOF
+[[customizations.user]]
+name = "admin"
+description = "Administrator account"
+password = "\$6\$GRmb7S0p8vsYmXzH\$o0E020S.9JQGaHkszoog4ha4AQVs3sk8q0DvLjSMxoxHBKnB2FBXGQ/OkwZQfW/76ktHd0NX5nls2LPxPuUdl."
+home = "/home/admin/"
+groups = ["wheel"]
+EOF
+fi
+
 greenprint "📄 upgrade blueprint"
 cat "$BLUEPRINT_FILE"
 
diff --git a/test/cases/ostree.sh b/test/cases/ostree.sh
index 9847850a0..70a27649a 100755
--- a/test/cases/ostree.sh
+++ b/test/cases/ostree.sh
@@ -16,7 +16,7 @@ fi
 # Set os-variant and boot location used by virt-install.
 case "${ID}-${VERSION_ID}" in
     "fedora-35")
-        IMAGE_TYPE=fedora-iot-commit
+        IMAGE_TYPE=iot-commit
         OSTREE_REF="fedora/35/${ARCH}/iot"
         OS_VARIANT="fedora35"
         USER_IN_COMMIT="false"
@@ -24,7 +24,7 @@ case "${ID}-${VERSION_ID}" in
         EMBEDED_CONTAINER="false"
         ;;
     "fedora-36")
-        IMAGE_TYPE=fedora-iot-commit
+        IMAGE_TYPE=iot-commit
         OSTREE_REF="fedora/36/${ARCH}/iot"
         OS_VARIANT="fedora36"
         USER_IN_COMMIT="false"
@@ -32,7 +32,7 @@ case "${ID}-${VERSION_ID}" in
         EMBEDED_CONTAINER="false"
         ;;
     "fedora-37")
-        IMAGE_TYPE=fedora-iot-commit
+        IMAGE_TYPE=iot-commit
         OSTREE_REF="fedora/37/${ARCH}/iot"
         OS_VARIANT="fedora-unknown"
         USER_IN_COMMIT="false"
diff --git a/test/data/ansible/check_ostree.yaml b/test/data/ansible/check_ostree.yaml
index 7e1a82220..de48f1ff5 100644
--- a/test/data/ansible/check_ostree.yaml
+++ b/test/data/ansible/check_ostree.yaml
@@ -141,6 +141,96 @@
     - set_fact:
         device_name: "{{ result_sysroot_source.stdout }}"
 
+    # case: check pv format
+    - name: check pv format
+      shell: pvs --reportformat json | jq .report[0].pv[0].pv_fmt -r
+      become: yes
+      register: result_pv_fmt
+      when: "'/dev/mapper/rootvg-rootlv' in result_sysroot_source.stdout"
+
+    - name: "pv format should be lvm2"
+      block:
+        - assert:
+            that:
+              - result_pv_fmt.stdout == "lvm2"
+            fail_msg: "pv format is not lvm2"
+            success_msg: "pv format is lvm2"
+      always:
+        - set_fact:
+            total_counter: "{{ total_counter | int + 1 }}"
+      rescue:
+        - name: failed count + 1
+          set_fact:
+            failed_counter: "{{ failed_counter | int + 1 }}"
+      when: "'/dev/mapper/rootvg-rootlv' in result_sysroot_source.stdout"
+
+    # case: check pv size
+    - name: check pv size
+      shell: pvs --reportformat json | jq .report[0].pv[0].pv_size -r
+      become: yes
+      register: result_pv_size
+      when: "'/dev/mapper/rootvg-rootlv' in result_sysroot_source.stdout"
+
+    # simplified installer uses coreos-installer to grow fs to 19G
+    - name: "pv size should bigger than 19G for simplified installer"
+      block:
+        - assert:
+            that:
+              - "'19' in result_pv_size.stdout"
+            fail_msg: "pv size is not bigger than 19G"
+            success_msg: "pv size is bigger than 19G"
+      always:
+        - set_fact:
+            total_counter: "{{ total_counter | int + 1 }}"
+      rescue:
+        - name: failed count + 1
+          set_fact:
+            failed_counter: "{{ failed_counter | int + 1 }}"
+      when:
+        - "'/dev/mapper/rootvg-rootlv' in result_sysroot_source.stdout"
+        - fdo_credential == "true"
+
+    # raw image does not have coreos-installer to grow fs to 19G
+    - name: "pv size should keep at 9G for raw image"
+      block:
+        - assert:
+            that:
+              - "'9' in result_pv_size.stdout"
+            fail_msg: "pv size does not keep at 9G"
+            success_msg: "pv size keeps at 9G"
+      always:
+        - set_fact:
+            total_counter: "{{ total_counter | int + 1 }}"
+      rescue:
+        - name: failed count + 1
+          set_fact:
+            failed_counter: "{{ failed_counter | int + 1 }}"
+      when:
+        - "'/dev/mapper/rootvg-rootlv' in result_sysroot_source.stdout"
+        - fdo_credential == "false"
+
+    # case: check /sysroot lv size
+    - name: check sysroot lv size
+      shell: df -h | grep sysroot
+      register: result_sysroot_lv_size
+      when: "'/dev/mapper/rootvg-rootlv' in result_sysroot_source.stdout"
+
+    - name: "/sysroot lv size should be 9G"
+      block:
+        - assert:
+            that:
+              - "'9.0G' in result_sysroot_lv_size.stdout"
+            fail_msg: "pv size is not 9G"
+            success_msg: "pv size is 9G"
+      always:
+        - set_fact:
+            total_counter: "{{ total_counter | int + 1 }}"
+      rescue:
+        - name: failed count + 1
+          set_fact:
+            failed_counter: "{{ failed_counter | int + 1 }}"
+      when: "'/dev/mapper/rootvg-rootlv' in result_sysroot_source.stdout"
+
     # case: check /sysroot mount status
     - name: check /sysroot mount status
       shell: findmnt -r -o OPTIONS -n /sysroot | awk -F "," '{print $1}'
diff --git a/test/data/ansible/check_ostree_nort.yaml b/test/data/ansible/check_ostree_nort.yaml
index a43b4e85a..c6e3ba885 100644
--- a/test/data/ansible/check_ostree_nort.yaml
+++ b/test/data/ansible/check_ostree_nort.yaml
@@ -90,7 +90,7 @@
         device_name: /dev/vda4
       when: "'/dev/vda4' in result_df.stdout"
 
-    # case: check /sysroot moutn point
+    # case: check /sysroot mount point
     - name: check /sysroot mount point
       command: findmnt -r -o SOURCE -n /sysroot
       register: result_sysroot_mount_point
diff --git a/test/data/manifests/centos_8-aarch64-edge_raw_image-boot.json b/test/data/manifests/centos_8-aarch64-edge_raw_image-boot.json
index a11caa5ed..7562c4dba 100644
--- a/test/data/manifests/centos_8-aarch64-edge_raw_image-boot.json
+++ b/test/data/manifests/centos_8-aarch64-edge_raw_image-boot.json
@@ -10031,6 +10031,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/centos_8-aarch64-edge_simplified_installer-boot.json b/test/data/manifests/centos_8-aarch64-edge_simplified_installer-boot.json
index af3b8ba45..563fd6ddd 100644
--- a/test/data/manifests/centos_8-aarch64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/centos_8-aarch64-edge_simplified_installer-boot.json
@@ -33,6 +33,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -16977,6 +16978,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/centos_8-x86_64-edge_raw_image-boot.json b/test/data/manifests/centos_8-x86_64-edge_raw_image-boot.json
index d430c2bd6..d2b1549d4 100644
--- a/test/data/manifests/centos_8-x86_64-edge_raw_image-boot.json
+++ b/test/data/manifests/centos_8-x86_64-edge_raw_image-boot.json
@@ -10184,6 +10184,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/centos_8-x86_64-edge_simplified_installer-boot.json b/test/data/manifests/centos_8-x86_64-edge_simplified_installer-boot.json
index 557cdc86b..c98b10045 100644
--- a/test/data/manifests/centos_8-x86_64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/centos_8-x86_64-edge_simplified_installer-boot.json
@@ -33,6 +33,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -17291,6 +17292,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/centos_9-aarch64-edge_raw_image-boot.json b/test/data/manifests/centos_9-aarch64-edge_raw_image-boot.json
index 8c1f07357..aaa73e5fc 100644
--- a/test/data/manifests/centos_9-aarch64-edge_raw_image-boot.json
+++ b/test/data/manifests/centos_9-aarch64-edge_raw_image-boot.json
@@ -2586,6 +2586,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -2629,10 +2658,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -2643,6 +2672,13 @@
                   "size": 19922911,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -2691,6 +2727,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -2719,6 +2762,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -8585,6 +8652,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/centos_9-aarch64-edge_simplified_installer-boot.json b/test/data/manifests/centos_9-aarch64-edge_simplified_installer-boot.json
index 40c12fdad..9677e2d21 100644
--- a/test/data/manifests/centos_9-aarch64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/centos_9-aarch64-edge_simplified_installer-boot.json
@@ -33,6 +33,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -2634,6 +2635,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -2677,10 +2707,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -2691,6 +2721,13 @@
                   "size": 19922911,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -2739,6 +2776,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -2767,6 +2811,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -15495,6 +15563,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/centos_9-x86_64-edge_raw_image-boot.json b/test/data/manifests/centos_9-x86_64-edge_raw_image-boot.json
index 044790bed..7d95c1e0d 100644
--- a/test/data/manifests/centos_9-x86_64-edge_raw_image-boot.json
+++ b/test/data/manifests/centos_9-x86_64-edge_raw_image-boot.json
@@ -2657,6 +2657,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -2700,10 +2729,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -2714,6 +2743,13 @@
                   "size": 19920863,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -2762,6 +2798,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -2790,6 +2833,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -8766,6 +8833,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/centos_9-x86_64-edge_simplified_installer-boot.json b/test/data/manifests/centos_9-x86_64-edge_simplified_installer-boot.json
index 6f0a35b8b..b563d4069 100644
--- a/test/data/manifests/centos_9-x86_64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/centos_9-x86_64-edge_simplified_installer-boot.json
@@ -39,6 +39,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -2705,6 +2706,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -2748,10 +2778,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -2762,6 +2792,13 @@
                   "size": 19920863,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -2810,6 +2847,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -2838,6 +2882,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -15792,6 +15860,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/fedora_35-aarch64-fedora_iot_commit-boot.json b/test/data/manifests/fedora_35-aarch64-iot_commit-boot.json
similarity index 99%
rename from test/data/manifests/fedora_35-aarch64-fedora_iot_commit-boot.json
rename to test/data/manifests/fedora_35-aarch64-iot_commit-boot.json
index 27cd0945b..42018762b 100644
--- a/test/data/manifests/fedora_35-aarch64-fedora_iot_commit-boot.json
+++ b/test/data/manifests/fedora_35-aarch64-iot_commit-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-35",
     "arch": "aarch64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_35-aarch64-fedora_iot_container-boot.json b/test/data/manifests/fedora_35-aarch64-iot_container-boot.json
similarity index 99%
rename from test/data/manifests/fedora_35-aarch64-fedora_iot_container-boot.json
rename to test/data/manifests/fedora_35-aarch64-iot_container-boot.json
index 37a57ec5b..e2c231ff2 100644
--- a/test/data/manifests/fedora_35-aarch64-fedora_iot_container-boot.json
+++ b/test/data/manifests/fedora_35-aarch64-iot_container-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-35",
     "arch": "aarch64",
-    "image-type": "fedora-iot-container",
+    "image-type": "iot-container",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_35-aarch64-fedora_iot_installer-boot.json b/test/data/manifests/fedora_35-aarch64-iot_installer-boot.json
similarity index 99%
rename from test/data/manifests/fedora_35-aarch64-fedora_iot_installer-boot.json
rename to test/data/manifests/fedora_35-aarch64-iot_installer-boot.json
index 21783f391..d23689ba0 100644
--- a/test/data/manifests/fedora_35-aarch64-fedora_iot_installer-boot.json
+++ b/test/data/manifests/fedora_35-aarch64-iot_installer-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-35",
     "arch": "aarch64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_35-aarch64-fedora_iot_installer_with_users-boot.json b/test/data/manifests/fedora_35-aarch64-iot_installer_with_users-boot.json
similarity index 99%
rename from test/data/manifests/fedora_35-aarch64-fedora_iot_installer_with_users-boot.json
rename to test/data/manifests/fedora_35-aarch64-iot_installer_with_users-boot.json
index 9568bbd05..bb9b32288 100644
--- a/test/data/manifests/fedora_35-aarch64-fedora_iot_installer_with_users-boot.json
+++ b/test/data/manifests/fedora_35-aarch64-iot_installer_with_users-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-35",
     "arch": "aarch64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_35-aarch64-fedora_iot_raw_image-boot.json b/test/data/manifests/fedora_35-aarch64-iot_raw_image-boot.json
similarity index 99%
rename from test/data/manifests/fedora_35-aarch64-fedora_iot_raw_image-boot.json
rename to test/data/manifests/fedora_35-aarch64-iot_raw_image-boot.json
index d73b109cf..ca64e9638 100644
--- a/test/data/manifests/fedora_35-aarch64-fedora_iot_raw_image-boot.json
+++ b/test/data/manifests/fedora_35-aarch64-iot_raw_image-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-35",
     "arch": "aarch64",
-    "image-type": "fedora-iot-raw-image",
+    "image-type": "iot-raw-image",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_35-x86_64-fedora_iot_commit-boot.json b/test/data/manifests/fedora_35-x86_64-iot_commit-boot.json
similarity index 99%
rename from test/data/manifests/fedora_35-x86_64-fedora_iot_commit-boot.json
rename to test/data/manifests/fedora_35-x86_64-iot_commit-boot.json
index 7290450f9..cad63db80 100644
--- a/test/data/manifests/fedora_35-x86_64-fedora_iot_commit-boot.json
+++ b/test/data/manifests/fedora_35-x86_64-iot_commit-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-35",
     "arch": "x86_64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_35-x86_64-fedora_iot_commit_debug-boot.json b/test/data/manifests/fedora_35-x86_64-iot_commit_debug-boot.json
similarity index 99%
rename from test/data/manifests/fedora_35-x86_64-fedora_iot_commit_debug-boot.json
rename to test/data/manifests/fedora_35-x86_64-iot_commit_debug-boot.json
index 067a7c0ec..32b091347 100644
--- a/test/data/manifests/fedora_35-x86_64-fedora_iot_commit_debug-boot.json
+++ b/test/data/manifests/fedora_35-x86_64-iot_commit_debug-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-35",
     "arch": "x86_64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_35-x86_64-fedora_iot_container-boot.json b/test/data/manifests/fedora_35-x86_64-iot_container-boot.json
similarity index 99%
rename from test/data/manifests/fedora_35-x86_64-fedora_iot_container-boot.json
rename to test/data/manifests/fedora_35-x86_64-iot_container-boot.json
index 95e897a75..ce4586b4e 100644
--- a/test/data/manifests/fedora_35-x86_64-fedora_iot_container-boot.json
+++ b/test/data/manifests/fedora_35-x86_64-iot_container-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-35",
     "arch": "x86_64",
-    "image-type": "fedora-iot-container",
+    "image-type": "iot-container",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_35-x86_64-fedora_iot_installer-boot.json b/test/data/manifests/fedora_35-x86_64-iot_installer-boot.json
similarity index 99%
rename from test/data/manifests/fedora_35-x86_64-fedora_iot_installer-boot.json
rename to test/data/manifests/fedora_35-x86_64-iot_installer-boot.json
index 423b98146..3f233c790 100644
--- a/test/data/manifests/fedora_35-x86_64-fedora_iot_installer-boot.json
+++ b/test/data/manifests/fedora_35-x86_64-iot_installer-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-35",
     "arch": "x86_64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_35-x86_64-fedora_iot_installer_with_users-boot.json b/test/data/manifests/fedora_35-x86_64-iot_installer_with_users-boot.json
similarity index 99%
rename from test/data/manifests/fedora_35-x86_64-fedora_iot_installer_with_users-boot.json
rename to test/data/manifests/fedora_35-x86_64-iot_installer_with_users-boot.json
index bce178aa5..d411fa490 100644
--- a/test/data/manifests/fedora_35-x86_64-fedora_iot_installer_with_users-boot.json
+++ b/test/data/manifests/fedora_35-x86_64-iot_installer_with_users-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-35",
     "arch": "x86_64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_35-x86_64-fedora_iot_raw_image-boot.json b/test/data/manifests/fedora_35-x86_64-iot_raw_image-boot.json
similarity index 99%
rename from test/data/manifests/fedora_35-x86_64-fedora_iot_raw_image-boot.json
rename to test/data/manifests/fedora_35-x86_64-iot_raw_image-boot.json
index b666e5849..fe439755c 100644
--- a/test/data/manifests/fedora_35-x86_64-fedora_iot_raw_image-boot.json
+++ b/test/data/manifests/fedora_35-x86_64-iot_raw_image-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-35",
     "arch": "x86_64",
-    "image-type": "fedora-iot-raw-image",
+    "image-type": "iot-raw-image",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_36-aarch64-fedora_iot_commit-boot.json b/test/data/manifests/fedora_36-aarch64-iot_commit-boot.json
similarity index 99%
rename from test/data/manifests/fedora_36-aarch64-fedora_iot_commit-boot.json
rename to test/data/manifests/fedora_36-aarch64-iot_commit-boot.json
index b7313fd53..98ffced5d 100644
--- a/test/data/manifests/fedora_36-aarch64-fedora_iot_commit-boot.json
+++ b/test/data/manifests/fedora_36-aarch64-iot_commit-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-36",
     "arch": "aarch64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_36-aarch64-fedora_iot_container-boot.json b/test/data/manifests/fedora_36-aarch64-iot_container-boot.json
similarity index 99%
rename from test/data/manifests/fedora_36-aarch64-fedora_iot_container-boot.json
rename to test/data/manifests/fedora_36-aarch64-iot_container-boot.json
index d95a99112..73898f37d 100644
--- a/test/data/manifests/fedora_36-aarch64-fedora_iot_container-boot.json
+++ b/test/data/manifests/fedora_36-aarch64-iot_container-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-36",
     "arch": "aarch64",
-    "image-type": "fedora-iot-container",
+    "image-type": "iot-container",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_36-aarch64-fedora_iot_installer-boot.json b/test/data/manifests/fedora_36-aarch64-iot_installer-boot.json
similarity index 99%
rename from test/data/manifests/fedora_36-aarch64-fedora_iot_installer-boot.json
rename to test/data/manifests/fedora_36-aarch64-iot_installer-boot.json
index 18c137ef2..472727e0e 100644
--- a/test/data/manifests/fedora_36-aarch64-fedora_iot_installer-boot.json
+++ b/test/data/manifests/fedora_36-aarch64-iot_installer-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-36",
     "arch": "aarch64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_36-aarch64-fedora_iot_installer_with_users-boot.json b/test/data/manifests/fedora_36-aarch64-iot_installer_with_users-boot.json
similarity index 99%
rename from test/data/manifests/fedora_36-aarch64-fedora_iot_installer_with_users-boot.json
rename to test/data/manifests/fedora_36-aarch64-iot_installer_with_users-boot.json
index e9fa9c6f0..26d0d4745 100644
--- a/test/data/manifests/fedora_36-aarch64-fedora_iot_installer_with_users-boot.json
+++ b/test/data/manifests/fedora_36-aarch64-iot_installer_with_users-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-36",
     "arch": "aarch64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_36-aarch64-fedora_iot_raw_image-boot.json b/test/data/manifests/fedora_36-aarch64-iot_raw_image-boot.json
similarity index 99%
rename from test/data/manifests/fedora_36-aarch64-fedora_iot_raw_image-boot.json
rename to test/data/manifests/fedora_36-aarch64-iot_raw_image-boot.json
index f6980dae2..88e495ec0 100644
--- a/test/data/manifests/fedora_36-aarch64-fedora_iot_raw_image-boot.json
+++ b/test/data/manifests/fedora_36-aarch64-iot_raw_image-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-36",
     "arch": "aarch64",
-    "image-type": "fedora-iot-raw-image",
+    "image-type": "iot-raw-image",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_36-x86_64-fedora_iot_commit-boot.json b/test/data/manifests/fedora_36-x86_64-iot_commit-boot.json
similarity index 99%
rename from test/data/manifests/fedora_36-x86_64-fedora_iot_commit-boot.json
rename to test/data/manifests/fedora_36-x86_64-iot_commit-boot.json
index 07edf06a8..f5d16a760 100644
--- a/test/data/manifests/fedora_36-x86_64-fedora_iot_commit-boot.json
+++ b/test/data/manifests/fedora_36-x86_64-iot_commit-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-36",
     "arch": "x86_64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_36-x86_64-fedora_iot_commit_debug-boot.json b/test/data/manifests/fedora_36-x86_64-iot_commit_debug-boot.json
similarity index 99%
rename from test/data/manifests/fedora_36-x86_64-fedora_iot_commit_debug-boot.json
rename to test/data/manifests/fedora_36-x86_64-iot_commit_debug-boot.json
index 77646c368..4aaf0718f 100644
--- a/test/data/manifests/fedora_36-x86_64-fedora_iot_commit_debug-boot.json
+++ b/test/data/manifests/fedora_36-x86_64-iot_commit_debug-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-36",
     "arch": "x86_64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_36-x86_64-fedora_iot_container-boot.json b/test/data/manifests/fedora_36-x86_64-iot_container-boot.json
similarity index 99%
rename from test/data/manifests/fedora_36-x86_64-fedora_iot_container-boot.json
rename to test/data/manifests/fedora_36-x86_64-iot_container-boot.json
index a1a9ec7b8..d8c1cfbd9 100644
--- a/test/data/manifests/fedora_36-x86_64-fedora_iot_container-boot.json
+++ b/test/data/manifests/fedora_36-x86_64-iot_container-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-36",
     "arch": "x86_64",
-    "image-type": "fedora-iot-container",
+    "image-type": "iot-container",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_36-x86_64-fedora_iot_installer-boot.json b/test/data/manifests/fedora_36-x86_64-iot_installer-boot.json
similarity index 99%
rename from test/data/manifests/fedora_36-x86_64-fedora_iot_installer-boot.json
rename to test/data/manifests/fedora_36-x86_64-iot_installer-boot.json
index 7f2c86ab8..6e0cc5790 100644
--- a/test/data/manifests/fedora_36-x86_64-fedora_iot_installer-boot.json
+++ b/test/data/manifests/fedora_36-x86_64-iot_installer-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-36",
     "arch": "x86_64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_36-x86_64-fedora_iot_installer_with_users-boot.json b/test/data/manifests/fedora_36-x86_64-iot_installer_with_users-boot.json
similarity index 99%
rename from test/data/manifests/fedora_36-x86_64-fedora_iot_installer_with_users-boot.json
rename to test/data/manifests/fedora_36-x86_64-iot_installer_with_users-boot.json
index a23e3dad6..21038babf 100644
--- a/test/data/manifests/fedora_36-x86_64-fedora_iot_installer_with_users-boot.json
+++ b/test/data/manifests/fedora_36-x86_64-iot_installer_with_users-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-36",
     "arch": "x86_64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_36-x86_64-fedora_iot_raw_image-boot.json b/test/data/manifests/fedora_36-x86_64-iot_raw_image-boot.json
similarity index 99%
rename from test/data/manifests/fedora_36-x86_64-fedora_iot_raw_image-boot.json
rename to test/data/manifests/fedora_36-x86_64-iot_raw_image-boot.json
index b575a4683..6c6b48aea 100644
--- a/test/data/manifests/fedora_36-x86_64-fedora_iot_raw_image-boot.json
+++ b/test/data/manifests/fedora_36-x86_64-iot_raw_image-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-36",
     "arch": "x86_64",
-    "image-type": "fedora-iot-raw-image",
+    "image-type": "iot-raw-image",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_37-aarch64-fedora_iot_commit-boot.json b/test/data/manifests/fedora_37-aarch64-iot_commit-boot.json
similarity index 99%
rename from test/data/manifests/fedora_37-aarch64-fedora_iot_commit-boot.json
rename to test/data/manifests/fedora_37-aarch64-iot_commit-boot.json
index f9d4c7c9e..8c881e4e9 100644
--- a/test/data/manifests/fedora_37-aarch64-fedora_iot_commit-boot.json
+++ b/test/data/manifests/fedora_37-aarch64-iot_commit-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-37",
     "arch": "aarch64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_37-aarch64-fedora_iot_container-boot.json b/test/data/manifests/fedora_37-aarch64-iot_container-boot.json
similarity index 99%
rename from test/data/manifests/fedora_37-aarch64-fedora_iot_container-boot.json
rename to test/data/manifests/fedora_37-aarch64-iot_container-boot.json
index 9927edee4..42006edb4 100644
--- a/test/data/manifests/fedora_37-aarch64-fedora_iot_container-boot.json
+++ b/test/data/manifests/fedora_37-aarch64-iot_container-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-37",
     "arch": "aarch64",
-    "image-type": "fedora-iot-container",
+    "image-type": "iot-container",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_37-aarch64-fedora_iot_installer-boot.json b/test/data/manifests/fedora_37-aarch64-iot_installer-boot.json
similarity index 99%
rename from test/data/manifests/fedora_37-aarch64-fedora_iot_installer-boot.json
rename to test/data/manifests/fedora_37-aarch64-iot_installer-boot.json
index 9da2299a5..73b678763 100644
--- a/test/data/manifests/fedora_37-aarch64-fedora_iot_installer-boot.json
+++ b/test/data/manifests/fedora_37-aarch64-iot_installer-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-37",
     "arch": "aarch64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_37-aarch64-fedora_iot_installer_with_users-boot.json b/test/data/manifests/fedora_37-aarch64-iot_installer_with_users-boot.json
similarity index 99%
rename from test/data/manifests/fedora_37-aarch64-fedora_iot_installer_with_users-boot.json
rename to test/data/manifests/fedora_37-aarch64-iot_installer_with_users-boot.json
index c0ff4afae..ad3fed41e 100644
--- a/test/data/manifests/fedora_37-aarch64-fedora_iot_installer_with_users-boot.json
+++ b/test/data/manifests/fedora_37-aarch64-iot_installer_with_users-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-37",
     "arch": "aarch64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_37-aarch64-fedora_iot_raw_image-boot.json b/test/data/manifests/fedora_37-aarch64-iot_raw_image-boot.json
similarity index 99%
rename from test/data/manifests/fedora_37-aarch64-fedora_iot_raw_image-boot.json
rename to test/data/manifests/fedora_37-aarch64-iot_raw_image-boot.json
index b409bc042..f8ab10432 100644
--- a/test/data/manifests/fedora_37-aarch64-fedora_iot_raw_image-boot.json
+++ b/test/data/manifests/fedora_37-aarch64-iot_raw_image-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-37",
     "arch": "aarch64",
-    "image-type": "fedora-iot-raw-image",
+    "image-type": "iot-raw-image",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_37-x86_64-fedora_iot_commit-boot.json b/test/data/manifests/fedora_37-x86_64-iot_commit-boot.json
similarity index 99%
rename from test/data/manifests/fedora_37-x86_64-fedora_iot_commit-boot.json
rename to test/data/manifests/fedora_37-x86_64-iot_commit-boot.json
index 18ecd78f3..e4cf67ec0 100644
--- a/test/data/manifests/fedora_37-x86_64-fedora_iot_commit-boot.json
+++ b/test/data/manifests/fedora_37-x86_64-iot_commit-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-37",
     "arch": "x86_64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_37-x86_64-fedora_iot_commit_debug-boot.json b/test/data/manifests/fedora_37-x86_64-iot_commit_debug-boot.json
similarity index 99%
rename from test/data/manifests/fedora_37-x86_64-fedora_iot_commit_debug-boot.json
rename to test/data/manifests/fedora_37-x86_64-iot_commit_debug-boot.json
index 72e693ed8..7ba582518 100644
--- a/test/data/manifests/fedora_37-x86_64-fedora_iot_commit_debug-boot.json
+++ b/test/data/manifests/fedora_37-x86_64-iot_commit_debug-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-37",
     "arch": "x86_64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_37-x86_64-fedora_iot_container-boot.json b/test/data/manifests/fedora_37-x86_64-iot_container-boot.json
similarity index 99%
rename from test/data/manifests/fedora_37-x86_64-fedora_iot_container-boot.json
rename to test/data/manifests/fedora_37-x86_64-iot_container-boot.json
index f6df8924c..e1aa4b2c8 100644
--- a/test/data/manifests/fedora_37-x86_64-fedora_iot_container-boot.json
+++ b/test/data/manifests/fedora_37-x86_64-iot_container-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-37",
     "arch": "x86_64",
-    "image-type": "fedora-iot-container",
+    "image-type": "iot-container",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_37-x86_64-fedora_iot_installer-boot.json b/test/data/manifests/fedora_37-x86_64-iot_installer-boot.json
similarity index 99%
rename from test/data/manifests/fedora_37-x86_64-fedora_iot_installer-boot.json
rename to test/data/manifests/fedora_37-x86_64-iot_installer-boot.json
index 7f556394b..ff7ce8303 100644
--- a/test/data/manifests/fedora_37-x86_64-fedora_iot_installer-boot.json
+++ b/test/data/manifests/fedora_37-x86_64-iot_installer-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-37",
     "arch": "x86_64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_37-x86_64-fedora_iot_installer_with_users-boot.json b/test/data/manifests/fedora_37-x86_64-iot_installer_with_users-boot.json
similarity index 99%
rename from test/data/manifests/fedora_37-x86_64-fedora_iot_installer_with_users-boot.json
rename to test/data/manifests/fedora_37-x86_64-iot_installer_with_users-boot.json
index ffbaf4178..1deb4d6e2 100644
--- a/test/data/manifests/fedora_37-x86_64-fedora_iot_installer_with_users-boot.json
+++ b/test/data/manifests/fedora_37-x86_64-iot_installer_with_users-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-37",
     "arch": "x86_64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_37-x86_64-fedora_iot_raw_image-boot.json b/test/data/manifests/fedora_37-x86_64-iot_raw_image-boot.json
similarity index 99%
rename from test/data/manifests/fedora_37-x86_64-fedora_iot_raw_image-boot.json
rename to test/data/manifests/fedora_37-x86_64-iot_raw_image-boot.json
index 93d3c1904..16d363241 100644
--- a/test/data/manifests/fedora_37-x86_64-fedora_iot_raw_image-boot.json
+++ b/test/data/manifests/fedora_37-x86_64-iot_raw_image-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-37",
     "arch": "x86_64",
-    "image-type": "fedora-iot-raw-image",
+    "image-type": "iot-raw-image",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_38-aarch64-fedora_iot_commit-boot.json b/test/data/manifests/fedora_38-aarch64-iot_commit-boot.json
similarity index 99%
rename from test/data/manifests/fedora_38-aarch64-fedora_iot_commit-boot.json
rename to test/data/manifests/fedora_38-aarch64-iot_commit-boot.json
index 06bb7b679..b7e2e3eb5 100644
--- a/test/data/manifests/fedora_38-aarch64-fedora_iot_commit-boot.json
+++ b/test/data/manifests/fedora_38-aarch64-iot_commit-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-38",
     "arch": "aarch64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_38-aarch64-fedora_iot_container-boot.json b/test/data/manifests/fedora_38-aarch64-iot_container-boot.json
similarity index 99%
rename from test/data/manifests/fedora_38-aarch64-fedora_iot_container-boot.json
rename to test/data/manifests/fedora_38-aarch64-iot_container-boot.json
index 886ec64c3..1dc8f182c 100644
--- a/test/data/manifests/fedora_38-aarch64-fedora_iot_container-boot.json
+++ b/test/data/manifests/fedora_38-aarch64-iot_container-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-38",
     "arch": "aarch64",
-    "image-type": "fedora-iot-container",
+    "image-type": "iot-container",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_38-aarch64-fedora_iot_installer-boot.json b/test/data/manifests/fedora_38-aarch64-iot_installer-boot.json
similarity index 99%
rename from test/data/manifests/fedora_38-aarch64-fedora_iot_installer-boot.json
rename to test/data/manifests/fedora_38-aarch64-iot_installer-boot.json
index de4c95ad1..b195f29ec 100644
--- a/test/data/manifests/fedora_38-aarch64-fedora_iot_installer-boot.json
+++ b/test/data/manifests/fedora_38-aarch64-iot_installer-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-38",
     "arch": "aarch64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_38-aarch64-fedora_iot_installer_with_users-boot.json b/test/data/manifests/fedora_38-aarch64-iot_installer_with_users-boot.json
similarity index 99%
rename from test/data/manifests/fedora_38-aarch64-fedora_iot_installer_with_users-boot.json
rename to test/data/manifests/fedora_38-aarch64-iot_installer_with_users-boot.json
index dfa5a4e60..03d9963b3 100644
--- a/test/data/manifests/fedora_38-aarch64-fedora_iot_installer_with_users-boot.json
+++ b/test/data/manifests/fedora_38-aarch64-iot_installer_with_users-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-38",
     "arch": "aarch64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_38-aarch64-fedora_iot_raw_image-boot.json b/test/data/manifests/fedora_38-aarch64-iot_raw_image-boot.json
similarity index 99%
rename from test/data/manifests/fedora_38-aarch64-fedora_iot_raw_image-boot.json
rename to test/data/manifests/fedora_38-aarch64-iot_raw_image-boot.json
index 138bc4813..baddae70a 100644
--- a/test/data/manifests/fedora_38-aarch64-fedora_iot_raw_image-boot.json
+++ b/test/data/manifests/fedora_38-aarch64-iot_raw_image-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-38",
     "arch": "aarch64",
-    "image-type": "fedora-iot-raw-image",
+    "image-type": "iot-raw-image",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_38-x86_64-fedora_iot_commit-boot.json b/test/data/manifests/fedora_38-x86_64-iot_commit-boot.json
similarity index 99%
rename from test/data/manifests/fedora_38-x86_64-fedora_iot_commit-boot.json
rename to test/data/manifests/fedora_38-x86_64-iot_commit-boot.json
index 4e954b8d0..f4c8e1fe1 100644
--- a/test/data/manifests/fedora_38-x86_64-fedora_iot_commit-boot.json
+++ b/test/data/manifests/fedora_38-x86_64-iot_commit-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-38",
     "arch": "x86_64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_38-x86_64-fedora_iot_commit_debug-boot.json b/test/data/manifests/fedora_38-x86_64-iot_commit_debug-boot.json
similarity index 99%
rename from test/data/manifests/fedora_38-x86_64-fedora_iot_commit_debug-boot.json
rename to test/data/manifests/fedora_38-x86_64-iot_commit_debug-boot.json
index f3f6f401b..5d9b738fe 100644
--- a/test/data/manifests/fedora_38-x86_64-fedora_iot_commit_debug-boot.json
+++ b/test/data/manifests/fedora_38-x86_64-iot_commit_debug-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-38",
     "arch": "x86_64",
-    "image-type": "fedora-iot-commit",
+    "image-type": "iot-commit",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_38-x86_64-fedora_iot_container-boot.json b/test/data/manifests/fedora_38-x86_64-iot_container-boot.json
similarity index 99%
rename from test/data/manifests/fedora_38-x86_64-fedora_iot_container-boot.json
rename to test/data/manifests/fedora_38-x86_64-iot_container-boot.json
index 51113dae0..315f5ef6b 100644
--- a/test/data/manifests/fedora_38-x86_64-fedora_iot_container-boot.json
+++ b/test/data/manifests/fedora_38-x86_64-iot_container-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-38",
     "arch": "x86_64",
-    "image-type": "fedora-iot-container",
+    "image-type": "iot-container",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_38-x86_64-fedora_iot_installer-boot.json b/test/data/manifests/fedora_38-x86_64-iot_installer-boot.json
similarity index 99%
rename from test/data/manifests/fedora_38-x86_64-fedora_iot_installer-boot.json
rename to test/data/manifests/fedora_38-x86_64-iot_installer-boot.json
index 3d1c0c11e..1b3c8f8af 100644
--- a/test/data/manifests/fedora_38-x86_64-fedora_iot_installer-boot.json
+++ b/test/data/manifests/fedora_38-x86_64-iot_installer-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-38",
     "arch": "x86_64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_38-x86_64-fedora_iot_installer_with_users-boot.json b/test/data/manifests/fedora_38-x86_64-iot_installer_with_users-boot.json
similarity index 99%
rename from test/data/manifests/fedora_38-x86_64-fedora_iot_installer_with_users-boot.json
rename to test/data/manifests/fedora_38-x86_64-iot_installer_with_users-boot.json
index af062730e..67130cc86 100644
--- a/test/data/manifests/fedora_38-x86_64-fedora_iot_installer_with_users-boot.json
+++ b/test/data/manifests/fedora_38-x86_64-iot_installer_with_users-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-38",
     "arch": "x86_64",
-    "image-type": "fedora-iot-installer",
+    "image-type": "iot-installer",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/fedora_38-x86_64-fedora_iot_raw_image-boot.json b/test/data/manifests/fedora_38-x86_64-iot_raw_image-boot.json
similarity index 99%
rename from test/data/manifests/fedora_38-x86_64-fedora_iot_raw_image-boot.json
rename to test/data/manifests/fedora_38-x86_64-iot_raw_image-boot.json
index 1165403d4..194b1fdde 100644
--- a/test/data/manifests/fedora_38-x86_64-fedora_iot_raw_image-boot.json
+++ b/test/data/manifests/fedora_38-x86_64-iot_raw_image-boot.json
@@ -2,7 +2,7 @@
   "compose-request": {
     "distro": "fedora-38",
     "arch": "x86_64",
-    "image-type": "fedora-iot-raw-image",
+    "image-type": "iot-raw-image",
     "repositories": [
       {
         "name": "fedora",
diff --git a/test/data/manifests/rhel_8-aarch64-edge_raw_image-boot.json b/test/data/manifests/rhel_8-aarch64-edge_raw_image-boot.json
index ebcc9fde4..299fb72a3 100644
--- a/test/data/manifests/rhel_8-aarch64-edge_raw_image-boot.json
+++ b/test/data/manifests/rhel_8-aarch64-edge_raw_image-boot.json
@@ -7905,6 +7905,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_8-aarch64-edge_simplified_installer-boot.json b/test/data/manifests/rhel_8-aarch64-edge_simplified_installer-boot.json
index d1b33b38e..e6cafd128 100644
--- a/test/data/manifests/rhel_8-aarch64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/rhel_8-aarch64-edge_simplified_installer-boot.json
@@ -31,6 +31,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -12721,6 +12722,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_8-x86_64-edge_raw_image-boot.json b/test/data/manifests/rhel_8-x86_64-edge_raw_image-boot.json
index dd1ad0af2..73cda415d 100644
--- a/test/data/manifests/rhel_8-x86_64-edge_raw_image-boot.json
+++ b/test/data/manifests/rhel_8-x86_64-edge_raw_image-boot.json
@@ -8022,6 +8022,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_8-x86_64-edge_simplified_installer-boot.json b/test/data/manifests/rhel_8-x86_64-edge_simplified_installer-boot.json
index a085ff1f1..92e180c6c 100644
--- a/test/data/manifests/rhel_8-x86_64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/rhel_8-x86_64-edge_simplified_installer-boot.json
@@ -31,6 +31,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -12951,6 +12952,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_86-aarch64-edge_raw_image-boot.json b/test/data/manifests/rhel_86-aarch64-edge_raw_image-boot.json
index e0dad316f..3dad8dc2b 100644
--- a/test/data/manifests/rhel_86-aarch64-edge_raw_image-boot.json
+++ b/test/data/manifests/rhel_86-aarch64-edge_raw_image-boot.json
@@ -7905,6 +7905,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_86-aarch64-edge_simplified_installer-boot.json b/test/data/manifests/rhel_86-aarch64-edge_simplified_installer-boot.json
index fca26bf7d..097f12bf4 100644
--- a/test/data/manifests/rhel_86-aarch64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/rhel_86-aarch64-edge_simplified_installer-boot.json
@@ -31,6 +31,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -12721,6 +12722,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_86-x86_64-edge_raw_image-boot.json b/test/data/manifests/rhel_86-x86_64-edge_raw_image-boot.json
index 2fec2f4e8..1cf4dad52 100644
--- a/test/data/manifests/rhel_86-x86_64-edge_raw_image-boot.json
+++ b/test/data/manifests/rhel_86-x86_64-edge_raw_image-boot.json
@@ -8022,6 +8022,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_86-x86_64-edge_simplified_installer-boot.json b/test/data/manifests/rhel_86-x86_64-edge_simplified_installer-boot.json
index bd482f05f..5d9bc7323 100644
--- a/test/data/manifests/rhel_86-x86_64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/rhel_86-x86_64-edge_simplified_installer-boot.json
@@ -31,6 +31,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -12951,6 +12952,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_87-aarch64-edge_raw_image-boot.json b/test/data/manifests/rhel_87-aarch64-edge_raw_image-boot.json
index a056b484c..c875436f2 100644
--- a/test/data/manifests/rhel_87-aarch64-edge_raw_image-boot.json
+++ b/test/data/manifests/rhel_87-aarch64-edge_raw_image-boot.json
@@ -7890,6 +7890,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_87-aarch64-edge_simplified_installer-boot.json b/test/data/manifests/rhel_87-aarch64-edge_simplified_installer-boot.json
index 411b33178..e0d262d3e 100644
--- a/test/data/manifests/rhel_87-aarch64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/rhel_87-aarch64-edge_simplified_installer-boot.json
@@ -31,6 +31,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -12694,6 +12695,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_87-x86_64-edge_raw_image-boot.json b/test/data/manifests/rhel_87-x86_64-edge_raw_image-boot.json
index 4b1ce272c..973bfc9de 100644
--- a/test/data/manifests/rhel_87-x86_64-edge_raw_image-boot.json
+++ b/test/data/manifests/rhel_87-x86_64-edge_raw_image-boot.json
@@ -8007,6 +8007,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_87-x86_64-edge_simplified_installer-boot.json b/test/data/manifests/rhel_87-x86_64-edge_simplified_installer-boot.json
index 69e42214e..8be8c8aa3 100644
--- a/test/data/manifests/rhel_87-x86_64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/rhel_87-x86_64-edge_simplified_installer-boot.json
@@ -31,6 +31,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -12924,6 +12925,5 @@
         "checksum": "sha256:340b3c65becfca3d39f2afeed9659505a33ee870270c4d115d9fefe8929ff806"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_90-aarch64-edge_raw_image-boot.json b/test/data/manifests/rhel_90-aarch64-edge_raw_image-boot.json
index 8a45a62db..db12edd14 100644
--- a/test/data/manifests/rhel_90-aarch64-edge_raw_image-boot.json
+++ b/test/data/manifests/rhel_90-aarch64-edge_raw_image-boot.json
@@ -1159,6 +1159,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -1202,10 +1231,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -1216,6 +1245,13 @@
                   "size": 19922911,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -1264,6 +1300,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -1292,6 +1335,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -6647,6 +6714,5 @@
         "checksum": "sha256:d8e32be18055e46f26dece63f46d45738405618bf8b03c976c876c0c2cf2e4ed"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_90-aarch64-edge_simplified_installer-boot.json b/test/data/manifests/rhel_90-aarch64-edge_simplified_installer-boot.json
index dfb8829e9..7c3b228d2 100644
--- a/test/data/manifests/rhel_90-aarch64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/rhel_90-aarch64-edge_simplified_installer-boot.json
@@ -31,6 +31,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -1182,6 +1183,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -1225,10 +1255,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -1239,6 +1269,13 @@
                   "size": 19922911,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -1287,6 +1324,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -1315,6 +1359,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -11445,6 +11513,5 @@
         "checksum": "sha256:d8e32be18055e46f26dece63f46d45738405618bf8b03c976c876c0c2cf2e4ed"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_90-x86_64-edge_raw_image-boot.json b/test/data/manifests/rhel_90-x86_64-edge_raw_image-boot.json
index ffa19ce2b..5f23d824e 100644
--- a/test/data/manifests/rhel_90-x86_64-edge_raw_image-boot.json
+++ b/test/data/manifests/rhel_90-x86_64-edge_raw_image-boot.json
@@ -1188,6 +1188,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -1231,10 +1260,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -1245,6 +1274,13 @@
                   "size": 19920863,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -1293,6 +1329,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -1321,6 +1364,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -6779,6 +6846,5 @@
         "checksum": "sha256:5ce0b29210f80ae4f1e44f0ca9ef44b806f1268ce3309c43a5f1fcda005c3344"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_90-x86_64-edge_simplified_installer-boot.json b/test/data/manifests/rhel_90-x86_64-edge_simplified_installer-boot.json
index 17c7da0d4..36c15508a 100644
--- a/test/data/manifests/rhel_90-x86_64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/rhel_90-x86_64-edge_simplified_installer-boot.json
@@ -31,6 +31,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -1211,6 +1212,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -1254,10 +1284,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -1268,6 +1298,13 @@
                   "size": 19920863,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -1316,6 +1353,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -1344,6 +1388,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -11656,6 +11724,5 @@
         "checksum": "sha256:5ce0b29210f80ae4f1e44f0ca9ef44b806f1268ce3309c43a5f1fcda005c3344"
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_91-aarch64-edge_raw_image-boot.json b/test/data/manifests/rhel_91-aarch64-edge_raw_image-boot.json
index 9f668e67d..061958906 100644
--- a/test/data/manifests/rhel_91-aarch64-edge_raw_image-boot.json
+++ b/test/data/manifests/rhel_91-aarch64-edge_raw_image-boot.json
@@ -2578,6 +2578,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -2621,10 +2650,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -2635,6 +2664,13 @@
                   "size": 19922911,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -2683,6 +2719,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -2711,6 +2754,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -8864,6 +8931,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_91-aarch64-edge_simplified_installer-boot.json b/test/data/manifests/rhel_91-aarch64-edge_simplified_installer-boot.json
index b8a6e0b6f..8888b8864 100644
--- a/test/data/manifests/rhel_91-aarch64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/rhel_91-aarch64-edge_simplified_installer-boot.json
@@ -33,6 +33,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -2626,6 +2627,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -2669,10 +2699,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -2683,6 +2713,13 @@
                   "size": 19922911,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -2731,6 +2768,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -2759,6 +2803,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1048576,
+                  "size": 19922911,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -15843,6 +15911,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_91-x86_64-edge_raw_image-boot.json b/test/data/manifests/rhel_91-x86_64-edge_raw_image-boot.json
index 39afe376d..913887daf 100644
--- a/test/data/manifests/rhel_91-x86_64-edge_raw_image-boot.json
+++ b/test/data/manifests/rhel_91-x86_64-edge_raw_image-boot.json
@@ -2642,6 +2642,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -2685,10 +2714,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -2699,6 +2728,13 @@
                   "size": 19920863,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -2747,6 +2783,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -2775,6 +2818,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -9038,6 +9105,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/manifests/rhel_91-x86_64-edge_simplified_installer-boot.json b/test/data/manifests/rhel_91-x86_64-edge_simplified_installer-boot.json
index 559604245..ff408513a 100644
--- a/test/data/manifests/rhel_91-x86_64-edge_simplified_installer-boot.json
+++ b/test/data/manifests/rhel_91-x86_64-edge_simplified_installer-boot.json
@@ -33,6 +33,7 @@
       }
     }
   },
+  "no-image-info": true,
   "manifest": {
     "version": "2",
     "pipelines": [
@@ -2690,6 +2691,35 @@
               }
             }
           },
+          {
+            "type": "org.osbuild.lvm2.create",
+            "options": {
+              "volumes": [
+                {
+                  "name": "rootlv",
+                  "size": "9663676416B"
+                }
+              ]
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.mkfs.fat",
             "options": {
@@ -2733,10 +2763,10 @@
             },
             "devices": {
               "device": {
-                "type": "org.osbuild.luks2",
-                "parent": "luks-6e4f",
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
                 "options": {
-                  "passphrase": "osbuild"
+                  "volume": "rootlv"
                 }
               },
               "luks-6e4f": {
@@ -2747,6 +2777,13 @@
                   "size": 19920863,
                   "lock": true
                 }
+              },
+              "rootvgvg": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
               }
             }
           },
@@ -2795,6 +2832,13 @@
                 }
               },
               "root": {
+                "type": "org.osbuild.lvm2.lv",
+                "parent": "rootvgvg",
+                "options": {
+                  "volume": "rootlv"
+                }
+              },
+              "rootvgvg": {
                 "type": "org.osbuild.luks2",
                 "parent": "luks-6e4f",
                 "options": {
@@ -2823,6 +2867,30 @@
               }
             ]
           },
+          {
+            "type": "org.osbuild.lvm2.metadata",
+            "options": {
+              "vg_name": "rootvg"
+            },
+            "devices": {
+              "device": {
+                "type": "org.osbuild.luks2",
+                "parent": "luks-6e4f",
+                "options": {
+                  "passphrase": "osbuild"
+                }
+              },
+              "luks-6e4f": {
+                "type": "org.osbuild.loopback",
+                "options": {
+                  "filename": "image.raw",
+                  "start": 1050624,
+                  "size": 19920863,
+                  "lock": true
+                }
+              }
+            }
+          },
           {
             "type": "org.osbuild.luks2.remove-key",
             "options": {
@@ -16132,6 +16200,5 @@
         "check_gpg": true
       }
     ]
-  },
-  "no-image-info": true
+  }
 }
diff --git a/test/data/repositories/rhel-87.json b/test/data/repositories/rhel-87.json
index 7f8501f4e..814dcbd01 100644
--- a/test/data/repositories/rhel-87.json
+++ b/test/data/repositories/rhel-87.json
@@ -2,17 +2,17 @@
   "x86_64": [
     {
       "name": "baseos",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-baseos-n8.7-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-baseos-n8.7-20220912/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFsy23UBEACUKSphFEIEvNpy68VeW4Dt6qv+mU6am9a2AAl10JANLj1oqWX+\noYk3en1S6cVe2qehSL5DGVa3HMUZkP3dtbD4SgzXzxPodebPcr4+0QNWigkUisri\nXGL5SCEcOP30zDhZvg+4mpO2jMi7Kc1DLPzBBkgppcX91wa0L1pQzBcvYMPyV/Dh\nKbQHR75WdkP6OA2JXdfC94nxYq+2e0iPqC1hCP3Elh+YnSkOkrawDPmoB1g4+ft/\nxsiVGVy/W0ekXmgvYEHt6si6Y8NwXgnTMqxeSXQ9YUgVIbTpsxHQKGy76T5lMlWX\n4LCOmEVomBJg1SqF6yi9Vu8TeNThaDqT4/DddYInd0OO69s0kGIXalVgGYiW2HOD\nx2q5R1VGCoJxXomz+EbOXY+HpKPOHAjU0DB9MxbU3S248LQ69nIB5uxysy0PSco1\nsdZ8sxRNQ9Dw6on0Nowx5m6Thefzs5iK3dnPGBqHTT43DHbnWc2scjQFG+eZhe98\nEll/kb6vpBoY4bG9/wCG9qu7jj9Z+BceCNKeHllbezVLCU/Hswivr7h2dnaEFvPD\nO4GqiWiwOF06XaBMVgxA8p2HRw0KtXqOpZk+o+sUvdPjsBw42BB96A1yFX4jgFNA\nPyZYnEUdP6OOv9HSjnl7k/iEkvHq/jGYMMojixlvXpGXhnt5jNyc4GSUJQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5KSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjkEEwECACMFAlsy23UCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIX\ngAAKCRD3b2bD1AgnknqOD/9fB2ASuG2aJIiap4kK58R+RmOVM4qgclAnaG57+vjI\nnKvyfV3NH/keplGNRxwqHekfPCqvkpABwhdGEXIE8ILqnPewIMr6PZNZWNJynZ9i\neSMzVuCG7jDoGyQ5/6B0f6xeBtTeBDiRl7+Alehet1twuGL1BJUYG0QuLgcEzkaE\n/gkuumeVcazLzz7L12D22nMk66GxmgXfqS5zcbqOAuZwaA6VgSEgFdV2X2JU79zS\nBQJXv7NKc+nDXFG7M7EHjY3Rma3HXkDbkT8bzh9tJV7Z7TlpT829pStWQyoxKCVq\nsEX8WsSapTKA3P9YkYCwLShgZu4HKRFvHMaIasSIZWzLu+RZH/4yyHOhj0QB7XMY\neHQ6fGSbtJ+K6SrpHOOsKQNAJ0hVbSrnA1cr5+2SDfel1RfYt0W9FA6DoH/S5gAR\ndzT1u44QVwwp3U+eFpHphFy//uzxNMtCjjdkpzhYYhOCLNkDrlRPb+bcoL/6ePSr\n016PA7eEnuC305YU1Ml2WcCn7wQV8x90o33klJmEkWtXh3X39vYtI4nCPIvZn1eP\nVy+F+wWt4vN2b8oOdlzc2paOembbCo2B+Wapv5Y9peBvlbsDSgqtJABfK8KQq/jK\nYl3h5elIa1I3uNfczeHOnf1enLOUOlq630yeM/yHizz99G1g+z/guMh5+x/OHraW\niA==\n=+Gxh\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
       "name": "appstream",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-appstream-n8.7-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-appstream-n8.7-20220912/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFsy23UBEACUKSphFEIEvNpy68VeW4Dt6qv+mU6am9a2AAl10JANLj1oqWX+\noYk3en1S6cVe2qehSL5DGVa3HMUZkP3dtbD4SgzXzxPodebPcr4+0QNWigkUisri\nXGL5SCEcOP30zDhZvg+4mpO2jMi7Kc1DLPzBBkgppcX91wa0L1pQzBcvYMPyV/Dh\nKbQHR75WdkP6OA2JXdfC94nxYq+2e0iPqC1hCP3Elh+YnSkOkrawDPmoB1g4+ft/\nxsiVGVy/W0ekXmgvYEHt6si6Y8NwXgnTMqxeSXQ9YUgVIbTpsxHQKGy76T5lMlWX\n4LCOmEVomBJg1SqF6yi9Vu8TeNThaDqT4/DddYInd0OO69s0kGIXalVgGYiW2HOD\nx2q5R1VGCoJxXomz+EbOXY+HpKPOHAjU0DB9MxbU3S248LQ69nIB5uxysy0PSco1\nsdZ8sxRNQ9Dw6on0Nowx5m6Thefzs5iK3dnPGBqHTT43DHbnWc2scjQFG+eZhe98\nEll/kb6vpBoY4bG9/wCG9qu7jj9Z+BceCNKeHllbezVLCU/Hswivr7h2dnaEFvPD\nO4GqiWiwOF06XaBMVgxA8p2HRw0KtXqOpZk+o+sUvdPjsBw42BB96A1yFX4jgFNA\nPyZYnEUdP6OOv9HSjnl7k/iEkvHq/jGYMMojixlvXpGXhnt5jNyc4GSUJQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5KSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjkEEwECACMFAlsy23UCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIX\ngAAKCRD3b2bD1AgnknqOD/9fB2ASuG2aJIiap4kK58R+RmOVM4qgclAnaG57+vjI\nnKvyfV3NH/keplGNRxwqHekfPCqvkpABwhdGEXIE8ILqnPewIMr6PZNZWNJynZ9i\neSMzVuCG7jDoGyQ5/6B0f6xeBtTeBDiRl7+Alehet1twuGL1BJUYG0QuLgcEzkaE\n/gkuumeVcazLzz7L12D22nMk66GxmgXfqS5zcbqOAuZwaA6VgSEgFdV2X2JU79zS\nBQJXv7NKc+nDXFG7M7EHjY3Rma3HXkDbkT8bzh9tJV7Z7TlpT829pStWQyoxKCVq\nsEX8WsSapTKA3P9YkYCwLShgZu4HKRFvHMaIasSIZWzLu+RZH/4yyHOhj0QB7XMY\neHQ6fGSbtJ+K6SrpHOOsKQNAJ0hVbSrnA1cr5+2SDfel1RfYt0W9FA6DoH/S5gAR\ndzT1u44QVwwp3U+eFpHphFy//uzxNMtCjjdkpzhYYhOCLNkDrlRPb+bcoL/6ePSr\n016PA7eEnuC305YU1Ml2WcCn7wQV8x90o33klJmEkWtXh3X39vYtI4nCPIvZn1eP\nVy+F+wWt4vN2b8oOdlzc2paOembbCo2B+Wapv5Y9peBvlbsDSgqtJABfK8KQq/jK\nYl3h5elIa1I3uNfczeHOnf1enLOUOlq630yeM/yHizz99G1g+z/guMh5+x/OHraW\niA==\n=+Gxh\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
       "name": "rt",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-rt-n8.7-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-x86_64-rt-n8.7-20220912/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFsy23UBEACUKSphFEIEvNpy68VeW4Dt6qv+mU6am9a2AAl10JANLj1oqWX+\noYk3en1S6cVe2qehSL5DGVa3HMUZkP3dtbD4SgzXzxPodebPcr4+0QNWigkUisri\nXGL5SCEcOP30zDhZvg+4mpO2jMi7Kc1DLPzBBkgppcX91wa0L1pQzBcvYMPyV/Dh\nKbQHR75WdkP6OA2JXdfC94nxYq+2e0iPqC1hCP3Elh+YnSkOkrawDPmoB1g4+ft/\nxsiVGVy/W0ekXmgvYEHt6si6Y8NwXgnTMqxeSXQ9YUgVIbTpsxHQKGy76T5lMlWX\n4LCOmEVomBJg1SqF6yi9Vu8TeNThaDqT4/DddYInd0OO69s0kGIXalVgGYiW2HOD\nx2q5R1VGCoJxXomz+EbOXY+HpKPOHAjU0DB9MxbU3S248LQ69nIB5uxysy0PSco1\nsdZ8sxRNQ9Dw6on0Nowx5m6Thefzs5iK3dnPGBqHTT43DHbnWc2scjQFG+eZhe98\nEll/kb6vpBoY4bG9/wCG9qu7jj9Z+BceCNKeHllbezVLCU/Hswivr7h2dnaEFvPD\nO4GqiWiwOF06XaBMVgxA8p2HRw0KtXqOpZk+o+sUvdPjsBw42BB96A1yFX4jgFNA\nPyZYnEUdP6OOv9HSjnl7k/iEkvHq/jGYMMojixlvXpGXhnt5jNyc4GSUJQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5KSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjkEEwECACMFAlsy23UCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIX\ngAAKCRD3b2bD1AgnknqOD/9fB2ASuG2aJIiap4kK58R+RmOVM4qgclAnaG57+vjI\nnKvyfV3NH/keplGNRxwqHekfPCqvkpABwhdGEXIE8ILqnPewIMr6PZNZWNJynZ9i\neSMzVuCG7jDoGyQ5/6B0f6xeBtTeBDiRl7+Alehet1twuGL1BJUYG0QuLgcEzkaE\n/gkuumeVcazLzz7L12D22nMk66GxmgXfqS5zcbqOAuZwaA6VgSEgFdV2X2JU79zS\nBQJXv7NKc+nDXFG7M7EHjY3Rma3HXkDbkT8bzh9tJV7Z7TlpT829pStWQyoxKCVq\nsEX8WsSapTKA3P9YkYCwLShgZu4HKRFvHMaIasSIZWzLu+RZH/4yyHOhj0QB7XMY\neHQ6fGSbtJ+K6SrpHOOsKQNAJ0hVbSrnA1cr5+2SDfel1RfYt0W9FA6DoH/S5gAR\ndzT1u44QVwwp3U+eFpHphFy//uzxNMtCjjdkpzhYYhOCLNkDrlRPb+bcoL/6ePSr\n016PA7eEnuC305YU1Ml2WcCn7wQV8x90o33klJmEkWtXh3X39vYtI4nCPIvZn1eP\nVy+F+wWt4vN2b8oOdlzc2paOembbCo2B+Wapv5Y9peBvlbsDSgqtJABfK8KQq/jK\nYl3h5elIa1I3uNfczeHOnf1enLOUOlq630yeM/yHizz99G1g+z/guMh5+x/OHraW\niA==\n=+Gxh\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
@@ -59,36 +59,36 @@
   "aarch64": [
     {
       "name": "baseos",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-aarch64-baseos-n8.7-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-aarch64-baseos-n8.7-20220912/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFsy23UBEACUKSphFEIEvNpy68VeW4Dt6qv+mU6am9a2AAl10JANLj1oqWX+\noYk3en1S6cVe2qehSL5DGVa3HMUZkP3dtbD4SgzXzxPodebPcr4+0QNWigkUisri\nXGL5SCEcOP30zDhZvg+4mpO2jMi7Kc1DLPzBBkgppcX91wa0L1pQzBcvYMPyV/Dh\nKbQHR75WdkP6OA2JXdfC94nxYq+2e0iPqC1hCP3Elh+YnSkOkrawDPmoB1g4+ft/\nxsiVGVy/W0ekXmgvYEHt6si6Y8NwXgnTMqxeSXQ9YUgVIbTpsxHQKGy76T5lMlWX\n4LCOmEVomBJg1SqF6yi9Vu8TeNThaDqT4/DddYInd0OO69s0kGIXalVgGYiW2HOD\nx2q5R1VGCoJxXomz+EbOXY+HpKPOHAjU0DB9MxbU3S248LQ69nIB5uxysy0PSco1\nsdZ8sxRNQ9Dw6on0Nowx5m6Thefzs5iK3dnPGBqHTT43DHbnWc2scjQFG+eZhe98\nEll/kb6vpBoY4bG9/wCG9qu7jj9Z+BceCNKeHllbezVLCU/Hswivr7h2dnaEFvPD\nO4GqiWiwOF06XaBMVgxA8p2HRw0KtXqOpZk+o+sUvdPjsBw42BB96A1yFX4jgFNA\nPyZYnEUdP6OOv9HSjnl7k/iEkvHq/jGYMMojixlvXpGXhnt5jNyc4GSUJQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5KSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjkEEwECACMFAlsy23UCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIX\ngAAKCRD3b2bD1AgnknqOD/9fB2ASuG2aJIiap4kK58R+RmOVM4qgclAnaG57+vjI\nnKvyfV3NH/keplGNRxwqHekfPCqvkpABwhdGEXIE8ILqnPewIMr6PZNZWNJynZ9i\neSMzVuCG7jDoGyQ5/6B0f6xeBtTeBDiRl7+Alehet1twuGL1BJUYG0QuLgcEzkaE\n/gkuumeVcazLzz7L12D22nMk66GxmgXfqS5zcbqOAuZwaA6VgSEgFdV2X2JU79zS\nBQJXv7NKc+nDXFG7M7EHjY3Rma3HXkDbkT8bzh9tJV7Z7TlpT829pStWQyoxKCVq\nsEX8WsSapTKA3P9YkYCwLShgZu4HKRFvHMaIasSIZWzLu+RZH/4yyHOhj0QB7XMY\neHQ6fGSbtJ+K6SrpHOOsKQNAJ0hVbSrnA1cr5+2SDfel1RfYt0W9FA6DoH/S5gAR\ndzT1u44QVwwp3U+eFpHphFy//uzxNMtCjjdkpzhYYhOCLNkDrlRPb+bcoL/6ePSr\n016PA7eEnuC305YU1Ml2WcCn7wQV8x90o33klJmEkWtXh3X39vYtI4nCPIvZn1eP\nVy+F+wWt4vN2b8oOdlzc2paOembbCo2B+Wapv5Y9peBvlbsDSgqtJABfK8KQq/jK\nYl3h5elIa1I3uNfczeHOnf1enLOUOlq630yeM/yHizz99G1g+z/guMh5+x/OHraW\niA==\n=+Gxh\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
       "name": "appstream",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-aarch64-appstream-n8.7-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-aarch64-appstream-n8.7-20220912/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFsy23UBEACUKSphFEIEvNpy68VeW4Dt6qv+mU6am9a2AAl10JANLj1oqWX+\noYk3en1S6cVe2qehSL5DGVa3HMUZkP3dtbD4SgzXzxPodebPcr4+0QNWigkUisri\nXGL5SCEcOP30zDhZvg+4mpO2jMi7Kc1DLPzBBkgppcX91wa0L1pQzBcvYMPyV/Dh\nKbQHR75WdkP6OA2JXdfC94nxYq+2e0iPqC1hCP3Elh+YnSkOkrawDPmoB1g4+ft/\nxsiVGVy/W0ekXmgvYEHt6si6Y8NwXgnTMqxeSXQ9YUgVIbTpsxHQKGy76T5lMlWX\n4LCOmEVomBJg1SqF6yi9Vu8TeNThaDqT4/DddYInd0OO69s0kGIXalVgGYiW2HOD\nx2q5R1VGCoJxXomz+EbOXY+HpKPOHAjU0DB9MxbU3S248LQ69nIB5uxysy0PSco1\nsdZ8sxRNQ9Dw6on0Nowx5m6Thefzs5iK3dnPGBqHTT43DHbnWc2scjQFG+eZhe98\nEll/kb6vpBoY4bG9/wCG9qu7jj9Z+BceCNKeHllbezVLCU/Hswivr7h2dnaEFvPD\nO4GqiWiwOF06XaBMVgxA8p2HRw0KtXqOpZk+o+sUvdPjsBw42BB96A1yFX4jgFNA\nPyZYnEUdP6OOv9HSjnl7k/iEkvHq/jGYMMojixlvXpGXhnt5jNyc4GSUJQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5KSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjkEEwECACMFAlsy23UCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIX\ngAAKCRD3b2bD1AgnknqOD/9fB2ASuG2aJIiap4kK58R+RmOVM4qgclAnaG57+vjI\nnKvyfV3NH/keplGNRxwqHekfPCqvkpABwhdGEXIE8ILqnPewIMr6PZNZWNJynZ9i\neSMzVuCG7jDoGyQ5/6B0f6xeBtTeBDiRl7+Alehet1twuGL1BJUYG0QuLgcEzkaE\n/gkuumeVcazLzz7L12D22nMk66GxmgXfqS5zcbqOAuZwaA6VgSEgFdV2X2JU79zS\nBQJXv7NKc+nDXFG7M7EHjY3Rma3HXkDbkT8bzh9tJV7Z7TlpT829pStWQyoxKCVq\nsEX8WsSapTKA3P9YkYCwLShgZu4HKRFvHMaIasSIZWzLu+RZH/4yyHOhj0QB7XMY\neHQ6fGSbtJ+K6SrpHOOsKQNAJ0hVbSrnA1cr5+2SDfel1RfYt0W9FA6DoH/S5gAR\ndzT1u44QVwwp3U+eFpHphFy//uzxNMtCjjdkpzhYYhOCLNkDrlRPb+bcoL/6ePSr\n016PA7eEnuC305YU1Ml2WcCn7wQV8x90o33klJmEkWtXh3X39vYtI4nCPIvZn1eP\nVy+F+wWt4vN2b8oOdlzc2paOembbCo2B+Wapv5Y9peBvlbsDSgqtJABfK8KQq/jK\nYl3h5elIa1I3uNfczeHOnf1enLOUOlq630yeM/yHizz99G1g+z/guMh5+x/OHraW\niA==\n=+Gxh\n-----END PGP PUBLIC KEY BLOCK-----\n"
     }
   ],
   "s390x": [
     {
       "name": "baseos",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-s390x-baseos-n8.7-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-s390x-baseos-n8.7-20220912/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFsy23UBEACUKSphFEIEvNpy68VeW4Dt6qv+mU6am9a2AAl10JANLj1oqWX+\noYk3en1S6cVe2qehSL5DGVa3HMUZkP3dtbD4SgzXzxPodebPcr4+0QNWigkUisri\nXGL5SCEcOP30zDhZvg+4mpO2jMi7Kc1DLPzBBkgppcX91wa0L1pQzBcvYMPyV/Dh\nKbQHR75WdkP6OA2JXdfC94nxYq+2e0iPqC1hCP3Elh+YnSkOkrawDPmoB1g4+ft/\nxsiVGVy/W0ekXmgvYEHt6si6Y8NwXgnTMqxeSXQ9YUgVIbTpsxHQKGy76T5lMlWX\n4LCOmEVomBJg1SqF6yi9Vu8TeNThaDqT4/DddYInd0OO69s0kGIXalVgGYiW2HOD\nx2q5R1VGCoJxXomz+EbOXY+HpKPOHAjU0DB9MxbU3S248LQ69nIB5uxysy0PSco1\nsdZ8sxRNQ9Dw6on0Nowx5m6Thefzs5iK3dnPGBqHTT43DHbnWc2scjQFG+eZhe98\nEll/kb6vpBoY4bG9/wCG9qu7jj9Z+BceCNKeHllbezVLCU/Hswivr7h2dnaEFvPD\nO4GqiWiwOF06XaBMVgxA8p2HRw0KtXqOpZk+o+sUvdPjsBw42BB96A1yFX4jgFNA\nPyZYnEUdP6OOv9HSjnl7k/iEkvHq/jGYMMojixlvXpGXhnt5jNyc4GSUJQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5KSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjkEEwECACMFAlsy23UCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIX\ngAAKCRD3b2bD1AgnknqOD/9fB2ASuG2aJIiap4kK58R+RmOVM4qgclAnaG57+vjI\nnKvyfV3NH/keplGNRxwqHekfPCqvkpABwhdGEXIE8ILqnPewIMr6PZNZWNJynZ9i\neSMzVuCG7jDoGyQ5/6B0f6xeBtTeBDiRl7+Alehet1twuGL1BJUYG0QuLgcEzkaE\n/gkuumeVcazLzz7L12D22nMk66GxmgXfqS5zcbqOAuZwaA6VgSEgFdV2X2JU79zS\nBQJXv7NKc+nDXFG7M7EHjY3Rma3HXkDbkT8bzh9tJV7Z7TlpT829pStWQyoxKCVq\nsEX8WsSapTKA3P9YkYCwLShgZu4HKRFvHMaIasSIZWzLu+RZH/4yyHOhj0QB7XMY\neHQ6fGSbtJ+K6SrpHOOsKQNAJ0hVbSrnA1cr5+2SDfel1RfYt0W9FA6DoH/S5gAR\ndzT1u44QVwwp3U+eFpHphFy//uzxNMtCjjdkpzhYYhOCLNkDrlRPb+bcoL/6ePSr\n016PA7eEnuC305YU1Ml2WcCn7wQV8x90o33klJmEkWtXh3X39vYtI4nCPIvZn1eP\nVy+F+wWt4vN2b8oOdlzc2paOembbCo2B+Wapv5Y9peBvlbsDSgqtJABfK8KQq/jK\nYl3h5elIa1I3uNfczeHOnf1enLOUOlq630yeM/yHizz99G1g+z/guMh5+x/OHraW\niA==\n=+Gxh\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
       "name": "appstream",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-s390x-appstream-n8.7-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-s390x-appstream-n8.7-20220912/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFsy23UBEACUKSphFEIEvNpy68VeW4Dt6qv+mU6am9a2AAl10JANLj1oqWX+\noYk3en1S6cVe2qehSL5DGVa3HMUZkP3dtbD4SgzXzxPodebPcr4+0QNWigkUisri\nXGL5SCEcOP30zDhZvg+4mpO2jMi7Kc1DLPzBBkgppcX91wa0L1pQzBcvYMPyV/Dh\nKbQHR75WdkP6OA2JXdfC94nxYq+2e0iPqC1hCP3Elh+YnSkOkrawDPmoB1g4+ft/\nxsiVGVy/W0ekXmgvYEHt6si6Y8NwXgnTMqxeSXQ9YUgVIbTpsxHQKGy76T5lMlWX\n4LCOmEVomBJg1SqF6yi9Vu8TeNThaDqT4/DddYInd0OO69s0kGIXalVgGYiW2HOD\nx2q5R1VGCoJxXomz+EbOXY+HpKPOHAjU0DB9MxbU3S248LQ69nIB5uxysy0PSco1\nsdZ8sxRNQ9Dw6on0Nowx5m6Thefzs5iK3dnPGBqHTT43DHbnWc2scjQFG+eZhe98\nEll/kb6vpBoY4bG9/wCG9qu7jj9Z+BceCNKeHllbezVLCU/Hswivr7h2dnaEFvPD\nO4GqiWiwOF06XaBMVgxA8p2HRw0KtXqOpZk+o+sUvdPjsBw42BB96A1yFX4jgFNA\nPyZYnEUdP6OOv9HSjnl7k/iEkvHq/jGYMMojixlvXpGXhnt5jNyc4GSUJQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5KSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjkEEwECACMFAlsy23UCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIX\ngAAKCRD3b2bD1AgnknqOD/9fB2ASuG2aJIiap4kK58R+RmOVM4qgclAnaG57+vjI\nnKvyfV3NH/keplGNRxwqHekfPCqvkpABwhdGEXIE8ILqnPewIMr6PZNZWNJynZ9i\neSMzVuCG7jDoGyQ5/6B0f6xeBtTeBDiRl7+Alehet1twuGL1BJUYG0QuLgcEzkaE\n/gkuumeVcazLzz7L12D22nMk66GxmgXfqS5zcbqOAuZwaA6VgSEgFdV2X2JU79zS\nBQJXv7NKc+nDXFG7M7EHjY3Rma3HXkDbkT8bzh9tJV7Z7TlpT829pStWQyoxKCVq\nsEX8WsSapTKA3P9YkYCwLShgZu4HKRFvHMaIasSIZWzLu+RZH/4yyHOhj0QB7XMY\neHQ6fGSbtJ+K6SrpHOOsKQNAJ0hVbSrnA1cr5+2SDfel1RfYt0W9FA6DoH/S5gAR\ndzT1u44QVwwp3U+eFpHphFy//uzxNMtCjjdkpzhYYhOCLNkDrlRPb+bcoL/6ePSr\n016PA7eEnuC305YU1Ml2WcCn7wQV8x90o33klJmEkWtXh3X39vYtI4nCPIvZn1eP\nVy+F+wWt4vN2b8oOdlzc2paOembbCo2B+Wapv5Y9peBvlbsDSgqtJABfK8KQq/jK\nYl3h5elIa1I3uNfczeHOnf1enLOUOlq630yeM/yHizz99G1g+z/guMh5+x/OHraW\niA==\n=+Gxh\n-----END PGP PUBLIC KEY BLOCK-----\n"
     }
   ],
   "ppc64le": [
     {
       "name": "baseos",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-ppc64le-baseos-n8.7-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-ppc64le-baseos-n8.7-20220912/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFsy23UBEACUKSphFEIEvNpy68VeW4Dt6qv+mU6am9a2AAl10JANLj1oqWX+\noYk3en1S6cVe2qehSL5DGVa3HMUZkP3dtbD4SgzXzxPodebPcr4+0QNWigkUisri\nXGL5SCEcOP30zDhZvg+4mpO2jMi7Kc1DLPzBBkgppcX91wa0L1pQzBcvYMPyV/Dh\nKbQHR75WdkP6OA2JXdfC94nxYq+2e0iPqC1hCP3Elh+YnSkOkrawDPmoB1g4+ft/\nxsiVGVy/W0ekXmgvYEHt6si6Y8NwXgnTMqxeSXQ9YUgVIbTpsxHQKGy76T5lMlWX\n4LCOmEVomBJg1SqF6yi9Vu8TeNThaDqT4/DddYInd0OO69s0kGIXalVgGYiW2HOD\nx2q5R1VGCoJxXomz+EbOXY+HpKPOHAjU0DB9MxbU3S248LQ69nIB5uxysy0PSco1\nsdZ8sxRNQ9Dw6on0Nowx5m6Thefzs5iK3dnPGBqHTT43DHbnWc2scjQFG+eZhe98\nEll/kb6vpBoY4bG9/wCG9qu7jj9Z+BceCNKeHllbezVLCU/Hswivr7h2dnaEFvPD\nO4GqiWiwOF06XaBMVgxA8p2HRw0KtXqOpZk+o+sUvdPjsBw42BB96A1yFX4jgFNA\nPyZYnEUdP6OOv9HSjnl7k/iEkvHq/jGYMMojixlvXpGXhnt5jNyc4GSUJQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5KSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjkEEwECACMFAlsy23UCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIX\ngAAKCRD3b2bD1AgnknqOD/9fB2ASuG2aJIiap4kK58R+RmOVM4qgclAnaG57+vjI\nnKvyfV3NH/keplGNRxwqHekfPCqvkpABwhdGEXIE8ILqnPewIMr6PZNZWNJynZ9i\neSMzVuCG7jDoGyQ5/6B0f6xeBtTeBDiRl7+Alehet1twuGL1BJUYG0QuLgcEzkaE\n/gkuumeVcazLzz7L12D22nMk66GxmgXfqS5zcbqOAuZwaA6VgSEgFdV2X2JU79zS\nBQJXv7NKc+nDXFG7M7EHjY3Rma3HXkDbkT8bzh9tJV7Z7TlpT829pStWQyoxKCVq\nsEX8WsSapTKA3P9YkYCwLShgZu4HKRFvHMaIasSIZWzLu+RZH/4yyHOhj0QB7XMY\neHQ6fGSbtJ+K6SrpHOOsKQNAJ0hVbSrnA1cr5+2SDfel1RfYt0W9FA6DoH/S5gAR\ndzT1u44QVwwp3U+eFpHphFy//uzxNMtCjjdkpzhYYhOCLNkDrlRPb+bcoL/6ePSr\n016PA7eEnuC305YU1Ml2WcCn7wQV8x90o33klJmEkWtXh3X39vYtI4nCPIvZn1eP\nVy+F+wWt4vN2b8oOdlzc2paOembbCo2B+Wapv5Y9peBvlbsDSgqtJABfK8KQq/jK\nYl3h5elIa1I3uNfczeHOnf1enLOUOlq630yeM/yHizz99G1g+z/guMh5+x/OHraW\niA==\n=+Gxh\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
       "name": "appstream",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-ppc64le-appstream-n8.7-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el8/el8-ppc64le-appstream-n8.7-20220912/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFsy23UBEACUKSphFEIEvNpy68VeW4Dt6qv+mU6am9a2AAl10JANLj1oqWX+\noYk3en1S6cVe2qehSL5DGVa3HMUZkP3dtbD4SgzXzxPodebPcr4+0QNWigkUisri\nXGL5SCEcOP30zDhZvg+4mpO2jMi7Kc1DLPzBBkgppcX91wa0L1pQzBcvYMPyV/Dh\nKbQHR75WdkP6OA2JXdfC94nxYq+2e0iPqC1hCP3Elh+YnSkOkrawDPmoB1g4+ft/\nxsiVGVy/W0ekXmgvYEHt6si6Y8NwXgnTMqxeSXQ9YUgVIbTpsxHQKGy76T5lMlWX\n4LCOmEVomBJg1SqF6yi9Vu8TeNThaDqT4/DddYInd0OO69s0kGIXalVgGYiW2HOD\nx2q5R1VGCoJxXomz+EbOXY+HpKPOHAjU0DB9MxbU3S248LQ69nIB5uxysy0PSco1\nsdZ8sxRNQ9Dw6on0Nowx5m6Thefzs5iK3dnPGBqHTT43DHbnWc2scjQFG+eZhe98\nEll/kb6vpBoY4bG9/wCG9qu7jj9Z+BceCNKeHllbezVLCU/Hswivr7h2dnaEFvPD\nO4GqiWiwOF06XaBMVgxA8p2HRw0KtXqOpZk+o+sUvdPjsBw42BB96A1yFX4jgFNA\nPyZYnEUdP6OOv9HSjnl7k/iEkvHq/jGYMMojixlvXpGXhnt5jNyc4GSUJQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5KSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjkEEwECACMFAlsy23UCGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIX\ngAAKCRD3b2bD1AgnknqOD/9fB2ASuG2aJIiap4kK58R+RmOVM4qgclAnaG57+vjI\nnKvyfV3NH/keplGNRxwqHekfPCqvkpABwhdGEXIE8ILqnPewIMr6PZNZWNJynZ9i\neSMzVuCG7jDoGyQ5/6B0f6xeBtTeBDiRl7+Alehet1twuGL1BJUYG0QuLgcEzkaE\n/gkuumeVcazLzz7L12D22nMk66GxmgXfqS5zcbqOAuZwaA6VgSEgFdV2X2JU79zS\nBQJXv7NKc+nDXFG7M7EHjY3Rma3HXkDbkT8bzh9tJV7Z7TlpT829pStWQyoxKCVq\nsEX8WsSapTKA3P9YkYCwLShgZu4HKRFvHMaIasSIZWzLu+RZH/4yyHOhj0QB7XMY\neHQ6fGSbtJ+K6SrpHOOsKQNAJ0hVbSrnA1cr5+2SDfel1RfYt0W9FA6DoH/S5gAR\ndzT1u44QVwwp3U+eFpHphFy//uzxNMtCjjdkpzhYYhOCLNkDrlRPb+bcoL/6ePSr\n016PA7eEnuC305YU1Ml2WcCn7wQV8x90o33klJmEkWtXh3X39vYtI4nCPIvZn1eP\nVy+F+wWt4vN2b8oOdlzc2paOembbCo2B+Wapv5Y9peBvlbsDSgqtJABfK8KQq/jK\nYl3h5elIa1I3uNfczeHOnf1enLOUOlq630yeM/yHizz99G1g+z/guMh5+x/OHraW\niA==\n=+Gxh\n-----END PGP PUBLIC KEY BLOCK-----\n"
     }
   ]
diff --git a/test/data/repositories/rhel-91.json b/test/data/repositories/rhel-91.json
index 7ced996b9..06a65a9d8 100644
--- a/test/data/repositories/rhel-91.json
+++ b/test/data/repositories/rhel-91.json
@@ -2,53 +2,53 @@
   "aarch64": [
     {
       "name": "baseos",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-aarch64-baseos-n9.1-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-aarch64-baseos-n9.1-20220913/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGIpIp4BEAC/o5e1WzLIsS6/JOQCs4XYATYTcf6B6ALzcP05G0W3uRpUQSrL\nFRKNrU8ZCelm/B+XSh2ljJNeklp2WLxYENDOsftDXGoyLr2hEkI5OyK267IHhFNJ\ng+BN+T5Cjh4ZiiWij6o9F7x2ZpxISE9M4iI80rwSv1KOnGSw5j2zD2EwoMjTVyVE\n/t3s5XJxnDclB7ZqL+cgjv0mWUY/4+b/OoRTkhq7b8QILuZp75Y64pkrndgakm1T\n8mAGXV02mEzpNj9DyAJdUqa11PIhMJMxxHOGHJ8CcHZ2NJL2e7yJf4orTj+cMhP5\nLzJcVlaXnQYu8Zkqa0V6J1Qdj8ZXL72QsmyicRYXAtK9Jm5pvBHuYU2m6Ja7dBEB\nVkhe7lTKhAjkZC5ErPmANNS9kPdtXCOpwN1lOnmD2m04hks3kpH9OTX7RkTFUSws\neARAfRID6RLfi59B9lmAbekecnsMIFMx7qR7ZKyQb3GOuZwNYOaYFevuxusSwCHv\n4FtLDIhk+Fge+EbPdEva+VLJeMOb02gC4V/cX/oFoPkxM1A5LHjkuAM+aFLAiIRd\nNp/tAPWk1k6yc+FqkcDqOttbP4ciiXb9JPtmzTCbJD8lgH0rGp8ufyMXC9x7/dqX\nTjsiGzyvlMnrkKB4GL4DqRFl8LAR02A3846DD8CAcaxoXggL2bJCU2rgUQARAQAB\ntDVSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5IDMpIDxzZWN1cml0eUByZWRo\nYXQuY29tPokCUgQTAQgAPBYhBH5GJCWMQGU11W1vE1BU5KRaY0CzBQJiKSKeAhsD\nBQsJCAcCAyICAQYVCgkICwIEFgIDAQIeBwIXgAAKCRBQVOSkWmNAsyBfEACuTN/X\nYR+QyzeRw0pXcTvMqzNE4DKKr97hSQEwZH1/v1PEPs5O3psuVUm2iam7bqYwG+ry\nEskAgMHi8AJmY0lioQD5/LTSLTrM8UyQnU3g17DHau1NHIFTGyaW4a7xviU4C2+k\nc6X0u1CPHI1U4Q8prpNcfLsldaNYlsVZtUtYSHKPAUcswXWliW7QYjZ5tMSbu8jR\nOMOc3mZuf0fcVFNu8+XSpN7qLhRNcPv+FCNmk/wkaQfH4Pv+jVsOgHqkV3aLqJeN\nkNUnpyEKYkNqo7mNfNVWOcl+Z1KKKwSkIi3vg8maC7rODsy6IX+Y96M93sqYDQom\naaWue2gvw6thEoH4SaCrCL78mj2YFpeg1Oew4QwVcBnt68KOPfL9YyoOicNs4Vuu\nfb/vjU2ONPZAeepIKA8QxCETiryCcP43daqThvIgdbUIiWne3gae6eSj0EuUPoYe\nH5g2Lw0qdwbHIOxqp2kvN96Ii7s1DK3VyhMt/GSPCxRnDRJ8oQKJ2W/I1IT5VtiU\nzMjjq5JcYzRPzHDxfVzT9CLeU/0XQ+2OOUAiZKZ0dzSyyVn8xbpviT7iadvjlQX3\nCINaPB+d2Kxa6uFWh+ZYOLLAgZ9B8NKutUHpXN66YSfe79xFBSFWKkJ8cSIMk13/\nIfs7ApKlKCCRDpwoDqx/sjIaj1cpOfLHYjnefg==\n=UZd/\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
       "name": "appstream",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-aarch64-appstream-n9.1-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-aarch64-appstream-n9.1-20220913/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGIpIp4BEAC/o5e1WzLIsS6/JOQCs4XYATYTcf6B6ALzcP05G0W3uRpUQSrL\nFRKNrU8ZCelm/B+XSh2ljJNeklp2WLxYENDOsftDXGoyLr2hEkI5OyK267IHhFNJ\ng+BN+T5Cjh4ZiiWij6o9F7x2ZpxISE9M4iI80rwSv1KOnGSw5j2zD2EwoMjTVyVE\n/t3s5XJxnDclB7ZqL+cgjv0mWUY/4+b/OoRTkhq7b8QILuZp75Y64pkrndgakm1T\n8mAGXV02mEzpNj9DyAJdUqa11PIhMJMxxHOGHJ8CcHZ2NJL2e7yJf4orTj+cMhP5\nLzJcVlaXnQYu8Zkqa0V6J1Qdj8ZXL72QsmyicRYXAtK9Jm5pvBHuYU2m6Ja7dBEB\nVkhe7lTKhAjkZC5ErPmANNS9kPdtXCOpwN1lOnmD2m04hks3kpH9OTX7RkTFUSws\neARAfRID6RLfi59B9lmAbekecnsMIFMx7qR7ZKyQb3GOuZwNYOaYFevuxusSwCHv\n4FtLDIhk+Fge+EbPdEva+VLJeMOb02gC4V/cX/oFoPkxM1A5LHjkuAM+aFLAiIRd\nNp/tAPWk1k6yc+FqkcDqOttbP4ciiXb9JPtmzTCbJD8lgH0rGp8ufyMXC9x7/dqX\nTjsiGzyvlMnrkKB4GL4DqRFl8LAR02A3846DD8CAcaxoXggL2bJCU2rgUQARAQAB\ntDVSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5IDMpIDxzZWN1cml0eUByZWRo\nYXQuY29tPokCUgQTAQgAPBYhBH5GJCWMQGU11W1vE1BU5KRaY0CzBQJiKSKeAhsD\nBQsJCAcCAyICAQYVCgkICwIEFgIDAQIeBwIXgAAKCRBQVOSkWmNAsyBfEACuTN/X\nYR+QyzeRw0pXcTvMqzNE4DKKr97hSQEwZH1/v1PEPs5O3psuVUm2iam7bqYwG+ry\nEskAgMHi8AJmY0lioQD5/LTSLTrM8UyQnU3g17DHau1NHIFTGyaW4a7xviU4C2+k\nc6X0u1CPHI1U4Q8prpNcfLsldaNYlsVZtUtYSHKPAUcswXWliW7QYjZ5tMSbu8jR\nOMOc3mZuf0fcVFNu8+XSpN7qLhRNcPv+FCNmk/wkaQfH4Pv+jVsOgHqkV3aLqJeN\nkNUnpyEKYkNqo7mNfNVWOcl+Z1KKKwSkIi3vg8maC7rODsy6IX+Y96M93sqYDQom\naaWue2gvw6thEoH4SaCrCL78mj2YFpeg1Oew4QwVcBnt68KOPfL9YyoOicNs4Vuu\nfb/vjU2ONPZAeepIKA8QxCETiryCcP43daqThvIgdbUIiWne3gae6eSj0EuUPoYe\nH5g2Lw0qdwbHIOxqp2kvN96Ii7s1DK3VyhMt/GSPCxRnDRJ8oQKJ2W/I1IT5VtiU\nzMjjq5JcYzRPzHDxfVzT9CLeU/0XQ+2OOUAiZKZ0dzSyyVn8xbpviT7iadvjlQX3\nCINaPB+d2Kxa6uFWh+ZYOLLAgZ9B8NKutUHpXN66YSfe79xFBSFWKkJ8cSIMk13/\nIfs7ApKlKCCRDpwoDqx/sjIaj1cpOfLHYjnefg==\n=UZd/\n-----END PGP PUBLIC KEY BLOCK-----\n"
     }
   ],
   "ppc64le": [
     {
       "name": "baseos",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-ppc64le-baseos-n9.1-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-ppc64le-baseos-n9.1-20220913/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGIpIp4BEAC/o5e1WzLIsS6/JOQCs4XYATYTcf6B6ALzcP05G0W3uRpUQSrL\nFRKNrU8ZCelm/B+XSh2ljJNeklp2WLxYENDOsftDXGoyLr2hEkI5OyK267IHhFNJ\ng+BN+T5Cjh4ZiiWij6o9F7x2ZpxISE9M4iI80rwSv1KOnGSw5j2zD2EwoMjTVyVE\n/t3s5XJxnDclB7ZqL+cgjv0mWUY/4+b/OoRTkhq7b8QILuZp75Y64pkrndgakm1T\n8mAGXV02mEzpNj9DyAJdUqa11PIhMJMxxHOGHJ8CcHZ2NJL2e7yJf4orTj+cMhP5\nLzJcVlaXnQYu8Zkqa0V6J1Qdj8ZXL72QsmyicRYXAtK9Jm5pvBHuYU2m6Ja7dBEB\nVkhe7lTKhAjkZC5ErPmANNS9kPdtXCOpwN1lOnmD2m04hks3kpH9OTX7RkTFUSws\neARAfRID6RLfi59B9lmAbekecnsMIFMx7qR7ZKyQb3GOuZwNYOaYFevuxusSwCHv\n4FtLDIhk+Fge+EbPdEva+VLJeMOb02gC4V/cX/oFoPkxM1A5LHjkuAM+aFLAiIRd\nNp/tAPWk1k6yc+FqkcDqOttbP4ciiXb9JPtmzTCbJD8lgH0rGp8ufyMXC9x7/dqX\nTjsiGzyvlMnrkKB4GL4DqRFl8LAR02A3846DD8CAcaxoXggL2bJCU2rgUQARAQAB\ntDVSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5IDMpIDxzZWN1cml0eUByZWRo\nYXQuY29tPokCUgQTAQgAPBYhBH5GJCWMQGU11W1vE1BU5KRaY0CzBQJiKSKeAhsD\nBQsJCAcCAyICAQYVCgkICwIEFgIDAQIeBwIXgAAKCRBQVOSkWmNAsyBfEACuTN/X\nYR+QyzeRw0pXcTvMqzNE4DKKr97hSQEwZH1/v1PEPs5O3psuVUm2iam7bqYwG+ry\nEskAgMHi8AJmY0lioQD5/LTSLTrM8UyQnU3g17DHau1NHIFTGyaW4a7xviU4C2+k\nc6X0u1CPHI1U4Q8prpNcfLsldaNYlsVZtUtYSHKPAUcswXWliW7QYjZ5tMSbu8jR\nOMOc3mZuf0fcVFNu8+XSpN7qLhRNcPv+FCNmk/wkaQfH4Pv+jVsOgHqkV3aLqJeN\nkNUnpyEKYkNqo7mNfNVWOcl+Z1KKKwSkIi3vg8maC7rODsy6IX+Y96M93sqYDQom\naaWue2gvw6thEoH4SaCrCL78mj2YFpeg1Oew4QwVcBnt68KOPfL9YyoOicNs4Vuu\nfb/vjU2ONPZAeepIKA8QxCETiryCcP43daqThvIgdbUIiWne3gae6eSj0EuUPoYe\nH5g2Lw0qdwbHIOxqp2kvN96Ii7s1DK3VyhMt/GSPCxRnDRJ8oQKJ2W/I1IT5VtiU\nzMjjq5JcYzRPzHDxfVzT9CLeU/0XQ+2OOUAiZKZ0dzSyyVn8xbpviT7iadvjlQX3\nCINaPB+d2Kxa6uFWh+ZYOLLAgZ9B8NKutUHpXN66YSfe79xFBSFWKkJ8cSIMk13/\nIfs7ApKlKCCRDpwoDqx/sjIaj1cpOfLHYjnefg==\n=UZd/\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
       "name": "appstream",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-ppc64le-appstream-n9.1-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-ppc64le-appstream-n9.1-20220913/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGIpIp4BEAC/o5e1WzLIsS6/JOQCs4XYATYTcf6B6ALzcP05G0W3uRpUQSrL\nFRKNrU8ZCelm/B+XSh2ljJNeklp2WLxYENDOsftDXGoyLr2hEkI5OyK267IHhFNJ\ng+BN+T5Cjh4ZiiWij6o9F7x2ZpxISE9M4iI80rwSv1KOnGSw5j2zD2EwoMjTVyVE\n/t3s5XJxnDclB7ZqL+cgjv0mWUY/4+b/OoRTkhq7b8QILuZp75Y64pkrndgakm1T\n8mAGXV02mEzpNj9DyAJdUqa11PIhMJMxxHOGHJ8CcHZ2NJL2e7yJf4orTj+cMhP5\nLzJcVlaXnQYu8Zkqa0V6J1Qdj8ZXL72QsmyicRYXAtK9Jm5pvBHuYU2m6Ja7dBEB\nVkhe7lTKhAjkZC5ErPmANNS9kPdtXCOpwN1lOnmD2m04hks3kpH9OTX7RkTFUSws\neARAfRID6RLfi59B9lmAbekecnsMIFMx7qR7ZKyQb3GOuZwNYOaYFevuxusSwCHv\n4FtLDIhk+Fge+EbPdEva+VLJeMOb02gC4V/cX/oFoPkxM1A5LHjkuAM+aFLAiIRd\nNp/tAPWk1k6yc+FqkcDqOttbP4ciiXb9JPtmzTCbJD8lgH0rGp8ufyMXC9x7/dqX\nTjsiGzyvlMnrkKB4GL4DqRFl8LAR02A3846DD8CAcaxoXggL2bJCU2rgUQARAQAB\ntDVSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5IDMpIDxzZWN1cml0eUByZWRo\nYXQuY29tPokCUgQTAQgAPBYhBH5GJCWMQGU11W1vE1BU5KRaY0CzBQJiKSKeAhsD\nBQsJCAcCAyICAQYVCgkICwIEFgIDAQIeBwIXgAAKCRBQVOSkWmNAsyBfEACuTN/X\nYR+QyzeRw0pXcTvMqzNE4DKKr97hSQEwZH1/v1PEPs5O3psuVUm2iam7bqYwG+ry\nEskAgMHi8AJmY0lioQD5/LTSLTrM8UyQnU3g17DHau1NHIFTGyaW4a7xviU4C2+k\nc6X0u1CPHI1U4Q8prpNcfLsldaNYlsVZtUtYSHKPAUcswXWliW7QYjZ5tMSbu8jR\nOMOc3mZuf0fcVFNu8+XSpN7qLhRNcPv+FCNmk/wkaQfH4Pv+jVsOgHqkV3aLqJeN\nkNUnpyEKYkNqo7mNfNVWOcl+Z1KKKwSkIi3vg8maC7rODsy6IX+Y96M93sqYDQom\naaWue2gvw6thEoH4SaCrCL78mj2YFpeg1Oew4QwVcBnt68KOPfL9YyoOicNs4Vuu\nfb/vjU2ONPZAeepIKA8QxCETiryCcP43daqThvIgdbUIiWne3gae6eSj0EuUPoYe\nH5g2Lw0qdwbHIOxqp2kvN96Ii7s1DK3VyhMt/GSPCxRnDRJ8oQKJ2W/I1IT5VtiU\nzMjjq5JcYzRPzHDxfVzT9CLeU/0XQ+2OOUAiZKZ0dzSyyVn8xbpviT7iadvjlQX3\nCINaPB+d2Kxa6uFWh+ZYOLLAgZ9B8NKutUHpXN66YSfe79xFBSFWKkJ8cSIMk13/\nIfs7ApKlKCCRDpwoDqx/sjIaj1cpOfLHYjnefg==\n=UZd/\n-----END PGP PUBLIC KEY BLOCK-----\n"
     }
   ],
   "s390x": [
     {
       "name": "baseos",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-s390x-baseos-n9.1-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-s390x-baseos-n9.1-20220913/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGIpIp4BEAC/o5e1WzLIsS6/JOQCs4XYATYTcf6B6ALzcP05G0W3uRpUQSrL\nFRKNrU8ZCelm/B+XSh2ljJNeklp2WLxYENDOsftDXGoyLr2hEkI5OyK267IHhFNJ\ng+BN+T5Cjh4ZiiWij6o9F7x2ZpxISE9M4iI80rwSv1KOnGSw5j2zD2EwoMjTVyVE\n/t3s5XJxnDclB7ZqL+cgjv0mWUY/4+b/OoRTkhq7b8QILuZp75Y64pkrndgakm1T\n8mAGXV02mEzpNj9DyAJdUqa11PIhMJMxxHOGHJ8CcHZ2NJL2e7yJf4orTj+cMhP5\nLzJcVlaXnQYu8Zkqa0V6J1Qdj8ZXL72QsmyicRYXAtK9Jm5pvBHuYU2m6Ja7dBEB\nVkhe7lTKhAjkZC5ErPmANNS9kPdtXCOpwN1lOnmD2m04hks3kpH9OTX7RkTFUSws\neARAfRID6RLfi59B9lmAbekecnsMIFMx7qR7ZKyQb3GOuZwNYOaYFevuxusSwCHv\n4FtLDIhk+Fge+EbPdEva+VLJeMOb02gC4V/cX/oFoPkxM1A5LHjkuAM+aFLAiIRd\nNp/tAPWk1k6yc+FqkcDqOttbP4ciiXb9JPtmzTCbJD8lgH0rGp8ufyMXC9x7/dqX\nTjsiGzyvlMnrkKB4GL4DqRFl8LAR02A3846DD8CAcaxoXggL2bJCU2rgUQARAQAB\ntDVSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5IDMpIDxzZWN1cml0eUByZWRo\nYXQuY29tPokCUgQTAQgAPBYhBH5GJCWMQGU11W1vE1BU5KRaY0CzBQJiKSKeAhsD\nBQsJCAcCAyICAQYVCgkICwIEFgIDAQIeBwIXgAAKCRBQVOSkWmNAsyBfEACuTN/X\nYR+QyzeRw0pXcTvMqzNE4DKKr97hSQEwZH1/v1PEPs5O3psuVUm2iam7bqYwG+ry\nEskAgMHi8AJmY0lioQD5/LTSLTrM8UyQnU3g17DHau1NHIFTGyaW4a7xviU4C2+k\nc6X0u1CPHI1U4Q8prpNcfLsldaNYlsVZtUtYSHKPAUcswXWliW7QYjZ5tMSbu8jR\nOMOc3mZuf0fcVFNu8+XSpN7qLhRNcPv+FCNmk/wkaQfH4Pv+jVsOgHqkV3aLqJeN\nkNUnpyEKYkNqo7mNfNVWOcl+Z1KKKwSkIi3vg8maC7rODsy6IX+Y96M93sqYDQom\naaWue2gvw6thEoH4SaCrCL78mj2YFpeg1Oew4QwVcBnt68KOPfL9YyoOicNs4Vuu\nfb/vjU2ONPZAeepIKA8QxCETiryCcP43daqThvIgdbUIiWne3gae6eSj0EuUPoYe\nH5g2Lw0qdwbHIOxqp2kvN96Ii7s1DK3VyhMt/GSPCxRnDRJ8oQKJ2W/I1IT5VtiU\nzMjjq5JcYzRPzHDxfVzT9CLeU/0XQ+2OOUAiZKZ0dzSyyVn8xbpviT7iadvjlQX3\nCINaPB+d2Kxa6uFWh+ZYOLLAgZ9B8NKutUHpXN66YSfe79xFBSFWKkJ8cSIMk13/\nIfs7ApKlKCCRDpwoDqx/sjIaj1cpOfLHYjnefg==\n=UZd/\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
       "name": "appstream",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-s390x-appstream-n9.1-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-s390x-appstream-n9.1-20220913/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGIpIp4BEAC/o5e1WzLIsS6/JOQCs4XYATYTcf6B6ALzcP05G0W3uRpUQSrL\nFRKNrU8ZCelm/B+XSh2ljJNeklp2WLxYENDOsftDXGoyLr2hEkI5OyK267IHhFNJ\ng+BN+T5Cjh4ZiiWij6o9F7x2ZpxISE9M4iI80rwSv1KOnGSw5j2zD2EwoMjTVyVE\n/t3s5XJxnDclB7ZqL+cgjv0mWUY/4+b/OoRTkhq7b8QILuZp75Y64pkrndgakm1T\n8mAGXV02mEzpNj9DyAJdUqa11PIhMJMxxHOGHJ8CcHZ2NJL2e7yJf4orTj+cMhP5\nLzJcVlaXnQYu8Zkqa0V6J1Qdj8ZXL72QsmyicRYXAtK9Jm5pvBHuYU2m6Ja7dBEB\nVkhe7lTKhAjkZC5ErPmANNS9kPdtXCOpwN1lOnmD2m04hks3kpH9OTX7RkTFUSws\neARAfRID6RLfi59B9lmAbekecnsMIFMx7qR7ZKyQb3GOuZwNYOaYFevuxusSwCHv\n4FtLDIhk+Fge+EbPdEva+VLJeMOb02gC4V/cX/oFoPkxM1A5LHjkuAM+aFLAiIRd\nNp/tAPWk1k6yc+FqkcDqOttbP4ciiXb9JPtmzTCbJD8lgH0rGp8ufyMXC9x7/dqX\nTjsiGzyvlMnrkKB4GL4DqRFl8LAR02A3846DD8CAcaxoXggL2bJCU2rgUQARAQAB\ntDVSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5IDMpIDxzZWN1cml0eUByZWRo\nYXQuY29tPokCUgQTAQgAPBYhBH5GJCWMQGU11W1vE1BU5KRaY0CzBQJiKSKeAhsD\nBQsJCAcCAyICAQYVCgkICwIEFgIDAQIeBwIXgAAKCRBQVOSkWmNAsyBfEACuTN/X\nYR+QyzeRw0pXcTvMqzNE4DKKr97hSQEwZH1/v1PEPs5O3psuVUm2iam7bqYwG+ry\nEskAgMHi8AJmY0lioQD5/LTSLTrM8UyQnU3g17DHau1NHIFTGyaW4a7xviU4C2+k\nc6X0u1CPHI1U4Q8prpNcfLsldaNYlsVZtUtYSHKPAUcswXWliW7QYjZ5tMSbu8jR\nOMOc3mZuf0fcVFNu8+XSpN7qLhRNcPv+FCNmk/wkaQfH4Pv+jVsOgHqkV3aLqJeN\nkNUnpyEKYkNqo7mNfNVWOcl+Z1KKKwSkIi3vg8maC7rODsy6IX+Y96M93sqYDQom\naaWue2gvw6thEoH4SaCrCL78mj2YFpeg1Oew4QwVcBnt68KOPfL9YyoOicNs4Vuu\nfb/vjU2ONPZAeepIKA8QxCETiryCcP43daqThvIgdbUIiWne3gae6eSj0EuUPoYe\nH5g2Lw0qdwbHIOxqp2kvN96Ii7s1DK3VyhMt/GSPCxRnDRJ8oQKJ2W/I1IT5VtiU\nzMjjq5JcYzRPzHDxfVzT9CLeU/0XQ+2OOUAiZKZ0dzSyyVn8xbpviT7iadvjlQX3\nCINaPB+d2Kxa6uFWh+ZYOLLAgZ9B8NKutUHpXN66YSfe79xFBSFWKkJ8cSIMk13/\nIfs7ApKlKCCRDpwoDqx/sjIaj1cpOfLHYjnefg==\n=UZd/\n-----END PGP PUBLIC KEY BLOCK-----\n"
     }
   ],
   "x86_64": [
     {
       "name": "baseos",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-x86_64-baseos-n9.1-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-x86_64-baseos-n9.1-20220913/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGIpIp4BEAC/o5e1WzLIsS6/JOQCs4XYATYTcf6B6ALzcP05G0W3uRpUQSrL\nFRKNrU8ZCelm/B+XSh2ljJNeklp2WLxYENDOsftDXGoyLr2hEkI5OyK267IHhFNJ\ng+BN+T5Cjh4ZiiWij6o9F7x2ZpxISE9M4iI80rwSv1KOnGSw5j2zD2EwoMjTVyVE\n/t3s5XJxnDclB7ZqL+cgjv0mWUY/4+b/OoRTkhq7b8QILuZp75Y64pkrndgakm1T\n8mAGXV02mEzpNj9DyAJdUqa11PIhMJMxxHOGHJ8CcHZ2NJL2e7yJf4orTj+cMhP5\nLzJcVlaXnQYu8Zkqa0V6J1Qdj8ZXL72QsmyicRYXAtK9Jm5pvBHuYU2m6Ja7dBEB\nVkhe7lTKhAjkZC5ErPmANNS9kPdtXCOpwN1lOnmD2m04hks3kpH9OTX7RkTFUSws\neARAfRID6RLfi59B9lmAbekecnsMIFMx7qR7ZKyQb3GOuZwNYOaYFevuxusSwCHv\n4FtLDIhk+Fge+EbPdEva+VLJeMOb02gC4V/cX/oFoPkxM1A5LHjkuAM+aFLAiIRd\nNp/tAPWk1k6yc+FqkcDqOttbP4ciiXb9JPtmzTCbJD8lgH0rGp8ufyMXC9x7/dqX\nTjsiGzyvlMnrkKB4GL4DqRFl8LAR02A3846DD8CAcaxoXggL2bJCU2rgUQARAQAB\ntDVSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5IDMpIDxzZWN1cml0eUByZWRo\nYXQuY29tPokCUgQTAQgAPBYhBH5GJCWMQGU11W1vE1BU5KRaY0CzBQJiKSKeAhsD\nBQsJCAcCAyICAQYVCgkICwIEFgIDAQIeBwIXgAAKCRBQVOSkWmNAsyBfEACuTN/X\nYR+QyzeRw0pXcTvMqzNE4DKKr97hSQEwZH1/v1PEPs5O3psuVUm2iam7bqYwG+ry\nEskAgMHi8AJmY0lioQD5/LTSLTrM8UyQnU3g17DHau1NHIFTGyaW4a7xviU4C2+k\nc6X0u1CPHI1U4Q8prpNcfLsldaNYlsVZtUtYSHKPAUcswXWliW7QYjZ5tMSbu8jR\nOMOc3mZuf0fcVFNu8+XSpN7qLhRNcPv+FCNmk/wkaQfH4Pv+jVsOgHqkV3aLqJeN\nkNUnpyEKYkNqo7mNfNVWOcl+Z1KKKwSkIi3vg8maC7rODsy6IX+Y96M93sqYDQom\naaWue2gvw6thEoH4SaCrCL78mj2YFpeg1Oew4QwVcBnt68KOPfL9YyoOicNs4Vuu\nfb/vjU2ONPZAeepIKA8QxCETiryCcP43daqThvIgdbUIiWne3gae6eSj0EuUPoYe\nH5g2Lw0qdwbHIOxqp2kvN96Ii7s1DK3VyhMt/GSPCxRnDRJ8oQKJ2W/I1IT5VtiU\nzMjjq5JcYzRPzHDxfVzT9CLeU/0XQ+2OOUAiZKZ0dzSyyVn8xbpviT7iadvjlQX3\nCINaPB+d2Kxa6uFWh+ZYOLLAgZ9B8NKutUHpXN66YSfe79xFBSFWKkJ8cSIMk13/\nIfs7ApKlKCCRDpwoDqx/sjIaj1cpOfLHYjnefg==\n=UZd/\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
       "name": "appstream",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-x86_64-appstream-n9.1-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-x86_64-appstream-n9.1-20220913/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGIpIp4BEAC/o5e1WzLIsS6/JOQCs4XYATYTcf6B6ALzcP05G0W3uRpUQSrL\nFRKNrU8ZCelm/B+XSh2ljJNeklp2WLxYENDOsftDXGoyLr2hEkI5OyK267IHhFNJ\ng+BN+T5Cjh4ZiiWij6o9F7x2ZpxISE9M4iI80rwSv1KOnGSw5j2zD2EwoMjTVyVE\n/t3s5XJxnDclB7ZqL+cgjv0mWUY/4+b/OoRTkhq7b8QILuZp75Y64pkrndgakm1T\n8mAGXV02mEzpNj9DyAJdUqa11PIhMJMxxHOGHJ8CcHZ2NJL2e7yJf4orTj+cMhP5\nLzJcVlaXnQYu8Zkqa0V6J1Qdj8ZXL72QsmyicRYXAtK9Jm5pvBHuYU2m6Ja7dBEB\nVkhe7lTKhAjkZC5ErPmANNS9kPdtXCOpwN1lOnmD2m04hks3kpH9OTX7RkTFUSws\neARAfRID6RLfi59B9lmAbekecnsMIFMx7qR7ZKyQb3GOuZwNYOaYFevuxusSwCHv\n4FtLDIhk+Fge+EbPdEva+VLJeMOb02gC4V/cX/oFoPkxM1A5LHjkuAM+aFLAiIRd\nNp/tAPWk1k6yc+FqkcDqOttbP4ciiXb9JPtmzTCbJD8lgH0rGp8ufyMXC9x7/dqX\nTjsiGzyvlMnrkKB4GL4DqRFl8LAR02A3846DD8CAcaxoXggL2bJCU2rgUQARAQAB\ntDVSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5IDMpIDxzZWN1cml0eUByZWRo\nYXQuY29tPokCUgQTAQgAPBYhBH5GJCWMQGU11W1vE1BU5KRaY0CzBQJiKSKeAhsD\nBQsJCAcCAyICAQYVCgkICwIEFgIDAQIeBwIXgAAKCRBQVOSkWmNAsyBfEACuTN/X\nYR+QyzeRw0pXcTvMqzNE4DKKr97hSQEwZH1/v1PEPs5O3psuVUm2iam7bqYwG+ry\nEskAgMHi8AJmY0lioQD5/LTSLTrM8UyQnU3g17DHau1NHIFTGyaW4a7xviU4C2+k\nc6X0u1CPHI1U4Q8prpNcfLsldaNYlsVZtUtYSHKPAUcswXWliW7QYjZ5tMSbu8jR\nOMOc3mZuf0fcVFNu8+XSpN7qLhRNcPv+FCNmk/wkaQfH4Pv+jVsOgHqkV3aLqJeN\nkNUnpyEKYkNqo7mNfNVWOcl+Z1KKKwSkIi3vg8maC7rODsy6IX+Y96M93sqYDQom\naaWue2gvw6thEoH4SaCrCL78mj2YFpeg1Oew4QwVcBnt68KOPfL9YyoOicNs4Vuu\nfb/vjU2ONPZAeepIKA8QxCETiryCcP43daqThvIgdbUIiWne3gae6eSj0EuUPoYe\nH5g2Lw0qdwbHIOxqp2kvN96Ii7s1DK3VyhMt/GSPCxRnDRJ8oQKJ2W/I1IT5VtiU\nzMjjq5JcYzRPzHDxfVzT9CLeU/0XQ+2OOUAiZKZ0dzSyyVn8xbpviT7iadvjlQX3\nCINaPB+d2Kxa6uFWh+ZYOLLAgZ9B8NKutUHpXN66YSfe79xFBSFWKkJ8cSIMk13/\nIfs7ApKlKCCRDpwoDqx/sjIaj1cpOfLHYjnefg==\n=UZd/\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
       "name": "rt",
-      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-x86_64-rt-n9.1-20220415/",
+      "baseurl": "https://rpmrepo.osbuild.org/v2/mirror/rhvpn/el9/el9-x86_64-rt-n9.1-20220913/",
       "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBErgSTsBEACh2A4b0O9t+vzC9VrVtL1AKvUWi9OPCjkvR7Xd8DtJxeeMZ5eF\n0HtzIG58qDRybwUe89FZprB1ffuUKzdE+HcL3FbNWSSOXVjZIersdXyH3NvnLLLF\n0DNRB2ix3bXG9Rh/RXpFsNxDp2CEMdUvbYCzE79K1EnUTVh1L0Of023FtPSZXX0c\nu7Pb5DI5lX5YeoXO6RoodrIGYJsVBQWnrWw4xNTconUfNPk0EGZtEnzvH2zyPoJh\nXGF+Ncu9XwbalnYde10OCvSWAZ5zTCpoLMTvQjWpbCdWXJzCm6G+/hx9upke546H\n5IjtYm4dTIVTnc3wvDiODgBKRzOl9rEOCIgOuGtDxRxcQkjrC+xvg5Vkqn7vBUyW\n9pHedOU+PoF3DGOM+dqv+eNKBvh9YF9ugFAQBkcG7viZgvGEMGGUpzNgN7XnS1gj\n/DPo9mZESOYnKceve2tIC87p2hqjrxOHuI7fkZYeNIcAoa83rBltFXaBDYhWAKS1\nPcXS1/7JzP0ky7d0L6Xbu/If5kqWQpKwUInXtySRkuraVfuK3Bpa+X1XecWi24JY\nHVtlNX025xx1ewVzGNCTlWn1skQN2OOoQTV4C8/qFpTW6DTWYurd4+fE0OJFJZQF\nbuhfXYwmRlVOgN5i77NTIJZJQfYFj38c/Iv5vZBPokO6mffrOTv3MHWVgQARAQAB\ntDNSZWQgSGF0LCBJbmMuIChyZWxlYXNlIGtleSAyKSA8c2VjdXJpdHlAcmVkaGF0\nLmNvbT6JAjYEEwECACAFAkrgSTsCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAK\nCRAZni+R/UMdUWzpD/9s5SFR/ZF3yjY5VLUFLMXIKUztNN3oc45fyLdTI3+UClKC\n2tEruzYjqNHhqAEXa2sN1fMrsuKec61Ll2NfvJjkLKDvgVIh7kM7aslNYVOP6BTf\nC/JJ7/ufz3UZmyViH/WDl+AYdgk3JqCIO5w5ryrC9IyBzYv2m0HqYbWfphY3uHw5\nun3ndLJcu8+BGP5F+ONQEGl+DRH58Il9Jp3HwbRa7dvkPgEhfFR+1hI+Btta2C7E\n0/2NKzCxZw7Lx3PBRcU92YKyaEihfy/aQKZCAuyfKiMvsmzs+4poIX7I9NQCJpyE\nIGfINoZ7VxqHwRn/d5mw2MZTJjbzSf+Um9YJyA0iEEyD6qjriWQRbuxpQXmlAJbh\n8okZ4gbVFv1F8MzK+4R8VvWJ0XxgtikSo72fHjwha7MAjqFnOq6eo6fEC/75g3NL\nGht5VdpGuHk0vbdENHMC8wS99e5qXGNDued3hlTavDMlEAHl34q2H9nakTGRF5Ki\nJUfNh3DVRGhg8cMIti21njiRh7gyFI2OccATY7bBSr79JhuNwelHuxLrCFpY7V25\nOFktl15jZJaMxuQBqYdBgSay2G0U6D1+7VsWufpzd/Abx1/c3oi9ZaJvW22kAggq\ndzdA27UUYjWvx42w9menJwh/0jeQcTecIUd0d0rFcw/c1pvgMMl/Q73yzKgKYw==\n=zbHE\n-----END PGP PUBLIC KEY BLOCK-----\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBGIpIp4BEAC/o5e1WzLIsS6/JOQCs4XYATYTcf6B6ALzcP05G0W3uRpUQSrL\nFRKNrU8ZCelm/B+XSh2ljJNeklp2WLxYENDOsftDXGoyLr2hEkI5OyK267IHhFNJ\ng+BN+T5Cjh4ZiiWij6o9F7x2ZpxISE9M4iI80rwSv1KOnGSw5j2zD2EwoMjTVyVE\n/t3s5XJxnDclB7ZqL+cgjv0mWUY/4+b/OoRTkhq7b8QILuZp75Y64pkrndgakm1T\n8mAGXV02mEzpNj9DyAJdUqa11PIhMJMxxHOGHJ8CcHZ2NJL2e7yJf4orTj+cMhP5\nLzJcVlaXnQYu8Zkqa0V6J1Qdj8ZXL72QsmyicRYXAtK9Jm5pvBHuYU2m6Ja7dBEB\nVkhe7lTKhAjkZC5ErPmANNS9kPdtXCOpwN1lOnmD2m04hks3kpH9OTX7RkTFUSws\neARAfRID6RLfi59B9lmAbekecnsMIFMx7qR7ZKyQb3GOuZwNYOaYFevuxusSwCHv\n4FtLDIhk+Fge+EbPdEva+VLJeMOb02gC4V/cX/oFoPkxM1A5LHjkuAM+aFLAiIRd\nNp/tAPWk1k6yc+FqkcDqOttbP4ciiXb9JPtmzTCbJD8lgH0rGp8ufyMXC9x7/dqX\nTjsiGzyvlMnrkKB4GL4DqRFl8LAR02A3846DD8CAcaxoXggL2bJCU2rgUQARAQAB\ntDVSZWQgSGF0LCBJbmMuIChhdXhpbGlhcnkga2V5IDMpIDxzZWN1cml0eUByZWRo\nYXQuY29tPokCUgQTAQgAPBYhBH5GJCWMQGU11W1vE1BU5KRaY0CzBQJiKSKeAhsD\nBQsJCAcCAyICAQYVCgkICwIEFgIDAQIeBwIXgAAKCRBQVOSkWmNAsyBfEACuTN/X\nYR+QyzeRw0pXcTvMqzNE4DKKr97hSQEwZH1/v1PEPs5O3psuVUm2iam7bqYwG+ry\nEskAgMHi8AJmY0lioQD5/LTSLTrM8UyQnU3g17DHau1NHIFTGyaW4a7xviU4C2+k\nc6X0u1CPHI1U4Q8prpNcfLsldaNYlsVZtUtYSHKPAUcswXWliW7QYjZ5tMSbu8jR\nOMOc3mZuf0fcVFNu8+XSpN7qLhRNcPv+FCNmk/wkaQfH4Pv+jVsOgHqkV3aLqJeN\nkNUnpyEKYkNqo7mNfNVWOcl+Z1KKKwSkIi3vg8maC7rODsy6IX+Y96M93sqYDQom\naaWue2gvw6thEoH4SaCrCL78mj2YFpeg1Oew4QwVcBnt68KOPfL9YyoOicNs4Vuu\nfb/vjU2ONPZAeepIKA8QxCETiryCcP43daqThvIgdbUIiWne3gae6eSj0EuUPoYe\nH5g2Lw0qdwbHIOxqp2kvN96Ii7s1DK3VyhMt/GSPCxRnDRJ8oQKJ2W/I1IT5VtiU\nzMjjq5JcYzRPzHDxfVzT9CLeU/0XQ+2OOUAiZKZ0dzSyyVn8xbpviT7iadvjlQX3\nCINaPB+d2Kxa6uFWh+ZYOLLAgZ9B8NKutUHpXN66YSfe79xFBSFWKkJ8cSIMk13/\nIfs7ApKlKCCRDpwoDqx/sjIaj1cpOfLHYjnefg==\n=UZd/\n-----END PGP PUBLIC KEY BLOCK-----\n"
     },
     {
diff --git a/tools/test-case-generators/format-request-map.json b/tools/test-case-generators/format-request-map.json
index 314e8ec62..a2eb04360 100644
--- a/tools/test-case-generators/format-request-map.json
+++ b/tools/test-case-generators/format-request-map.json
@@ -240,22 +240,22 @@
     "no-image-info": true,
     "overrides": {}
   },
-  "fedora-iot-commit": {
+  "iot-commit": {
     "compose-request": {
       "distro": "",
       "arch": "",
-      "image-type": "fedora-iot-commit",
+      "image-type": "iot-commit",
       "repositories": [],
       "filename": "commit.tar",
       "blueprint": {}
     },
     "overrides": {}
   },
-  "fedora-iot-commit-debug": {
+  "iot-commit-debug": {
     "compose-request": {
       "distro": "",
       "arch": "",
-      "image-type": "fedora-iot-commit",
+      "image-type": "iot-commit",
       "repositories": [],
       "filename": "commit.tar",
       "blueprint": {
@@ -271,22 +271,22 @@
       "x86_64"
     ]
   },
-  "fedora-iot-container": {
+  "iot-container": {
     "compose-request": {
       "distro": "",
       "arch": "",
-      "image-type": "fedora-iot-container",
+      "image-type": "iot-container",
       "repositories": [],
       "filename": "container.tar",
       "blueprint": {}
     },
     "overrides": {}
   },
-  "fedora-iot-installer": {
+  "iot-installer": {
     "compose-request": {
       "distro": "",
       "arch": "",
-      "image-type": "fedora-iot-installer",
+      "image-type": "iot-installer",
       "repositories": [],
       "filename": "installer.iso",
       "ostree": {
@@ -299,11 +299,11 @@
     "no-image-info": true,
     "overrides": {}
   },
-  "fedora-iot-installer-with-users": {
+  "iot-installer-with-users": {
     "compose-request": {
       "distro": "",
       "arch": "",
-      "image-type": "fedora-iot-installer",
+      "image-type": "iot-installer",
       "repositories": [],
       "filename": "installer.iso",
       "ostree": {
@@ -345,11 +345,11 @@
     "no-image-info": true,
     "overrides": {}
   },
-  "fedora-iot-raw-image": {
+  "iot-raw-image": {
     "compose-request": {
       "distro": "",
       "arch": "",
-      "image-type": "fedora-iot-raw-image",
+      "image-type": "iot-raw-image",
       "repositories": [],
       "filename": "image.raw.xz",
       "ostree": {