68 lines
2.6 KiB
Diff
68 lines
2.6 KiB
Diff
|
From ea306d2848490f3c962a2d80b88fc8dbe7c0ef84 Mon Sep 17 00:00:00 2001
|
||
|
From: Ani Sinha <anisinha@redhat.com>
|
||
|
Date: Thu, 11 Jul 2024 00:49:58 +0530
|
||
|
Subject: [PATCH] fix: add schema rules for 'baseurl' and 'metalink' in yum
|
||
|
repo config (#5501)
|
||
|
|
||
|
RH-Author: xiachen <xiachen@redhat.com>
|
||
|
RH-MergeRequest: 100: fix: add schema rules for 'baseurl' and 'metalink' in yum repo config (#5501)
|
||
|
RH-Jira: RHEL-46874
|
||
|
RH-Acked-by: Ani Sinha <anisinha@redhat.com>
|
||
|
RH-Acked-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
|
||
|
RH-Commit: [1/1] 81ae8cf649785c5fb6296ca9d552248e6afb2960 (xiachen/cloud-init-centos)
|
||
|
|
||
|
At least one of (or both) 'baseurl' or 'metalink' should be provided for yum
|
||
|
repository specification. Add schema changes to enforce it. Without this,
|
||
|
with just 'metalink' property set, one would get the schema validator error
|
||
|
|
||
|
\---
|
||
|
Error: Cloud config schema errors: yum_repos.epel-release: 'baseurl' is a required property
|
||
|
\---
|
||
|
|
||
|
Signed-off-by: Ani Sinha <anisinha@redhat.com>
|
||
|
(cherry picked from commit 7d35664ef8b85840f92f18cc48187f7284d227bc)
|
||
|
Signed-off-by: Amy Chen <xiachen@redhat.com>
|
||
|
---
|
||
|
.../config/schemas/schema-cloud-config-v1.json | 18 ++++++++++++++++--
|
||
|
1 file changed, 16 insertions(+), 2 deletions(-)
|
||
|
|
||
|
diff --git a/cloudinit/config/schemas/schema-cloud-config-v1.json b/cloudinit/config/schemas/schema-cloud-config-v1.json
|
||
|
index 3cf7aaf8..5758777a 100644
|
||
|
--- a/cloudinit/config/schemas/schema-cloud-config-v1.json
|
||
|
+++ b/cloudinit/config/schemas/schema-cloud-config-v1.json
|
||
|
@@ -3434,6 +3434,11 @@
|
||
|
"format": "uri",
|
||
|
"description": "URL to the directory where the yum repository's 'repodata' directory lives"
|
||
|
},
|
||
|
+ "metalink": {
|
||
|
+ "type": "string",
|
||
|
+ "format": "uri",
|
||
|
+ "description": "Specifies a URL to a metalink file for the repomd.xml"
|
||
|
+ },
|
||
|
"name": {
|
||
|
"type": "string",
|
||
|
"description": "Optional human-readable name of the yum repo."
|
||
|
@@ -3461,8 +3466,17 @@
|
||
|
"description": "Any supported yum repository configuration options will be written to the yum repo config file. See: man yum.conf"
|
||
|
}
|
||
|
},
|
||
|
- "required": [
|
||
|
- "baseurl"
|
||
|
+ "anyOf": [
|
||
|
+ {
|
||
|
+ "required": [
|
||
|
+ "baseurl"
|
||
|
+ ]
|
||
|
+ },
|
||
|
+ {
|
||
|
+ "required": [
|
||
|
+ "metalink"
|
||
|
+ ]
|
||
|
+ }
|
||
|
]
|
||
|
}
|
||
|
}
|
||
|
--
|
||
|
2.39.3
|
||
|
|