* [pbs-devel] [PATCH proxmox-offline-mirror v2 0/2] POM support bookworm releases and ceph enterprise repo
@ 2023-06-12 13:37 Stefan Sterz
2023-06-12 13:37 ` [pbs-devel] [PATCH proxmox-offline-mirror v2 1/2] add bookworm to the list of releases Stefan Sterz
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Stefan Sterz @ 2023-06-12 13:37 UTC (permalink / raw)
To: pbs-devel
these two patches add support for the bookworm-based proxmox releases
and also the ceph enterprise repo.
changes since v1:
* adapted the keys that the setup wizzard uses to match those actually
used by debian now that bookworm has been released.
Stefan Sterz (2):
add bookworm to the list of releases
add support for bookworm enterprise ceph repo
src/bin/proxmox-offline-mirror.rs | 72 ++++++++++++++++++++++++++++---
1 file changed, 66 insertions(+), 6 deletions(-)
--
2.30.2
^ permalink raw reply [flat|nested] 4+ messages in thread
* [pbs-devel] [PATCH proxmox-offline-mirror v2 1/2] add bookworm to the list of releases
2023-06-12 13:37 [pbs-devel] [PATCH proxmox-offline-mirror v2 0/2] POM support bookworm releases and ceph enterprise repo Stefan Sterz
@ 2023-06-12 13:37 ` Stefan Sterz
2023-06-12 13:37 ` [pbs-devel] [PATCH proxmox-offline-mirror v2 2/2] add support for bookworm enterprise ceph repo Stefan Sterz
2023-06-16 8:05 ` [pbs-devel] applied-series: [PATCH proxmox-offline-mirror v2 0/2] POM support bookworm releases and ceph enterprise repo Thomas Lamprecht
2 siblings, 0 replies; 4+ messages in thread
From: Stefan Sterz @ 2023-06-12 13:37 UTC (permalink / raw)
To: pbs-devel
add support for bookworm based proxmox products and debian
repositories/
Signed-off-by: Stefan Sterz <s.sterz@proxmox.com>
---
src/bin/proxmox-offline-mirror.rs | 35 ++++++++++++++++++++++++++++++-
1 file changed, 34 insertions(+), 1 deletion(-)
diff --git a/src/bin/proxmox-offline-mirror.rs b/src/bin/proxmox-offline-mirror.rs
index 8398db4..e2282d7 100644
--- a/src/bin/proxmox-offline-mirror.rs
+++ b/src/bin/proxmox-offline-mirror.rs
@@ -44,6 +44,7 @@ impl Display for Distro {
}
enum Release {
+ Bookworm,
Bullseye,
Buster,
}
@@ -51,6 +52,7 @@ enum Release {
impl Display for Release {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
+ Release::Bookworm => write!(f, "bookworm"),
Release::Bullseye => write!(f, "bullseye"),
Release::Buster => write!(f, "buster"),
}
@@ -131,6 +133,19 @@ fn derive_debian_repo(
skip_sections,
};
let url = match (release, variant) {
+ (Release::Bookworm, DebianVariant::Main) => "http://deb.debian.org/debian bookworm",
+ (Release::Bookworm, DebianVariant::Security) => {
+ "http://deb.debian.org/debian-security bookworm-security"
+ }
+ (Release::Bookworm, DebianVariant::Updates) => {
+ "http://deb.debian.org/debian bookworm-updates"
+ }
+ (Release::Bookworm, DebianVariant::Backports) => {
+ "http://deb.debian.org/debian bookworm-backports"
+ }
+ (Release::Bookworm, DebianVariant::Debug) => {
+ "http://deb.debian.org/debian-debug bookworm-debug"
+ }
(Release::Bullseye, DebianVariant::Main) => "http://deb.debian.org/debian bullseye",
(Release::Bullseye, DebianVariant::Security) => {
"http://deb.debian.org/debian-security bullseye-security"
@@ -159,6 +174,14 @@ fn derive_debian_repo(
let url = format!("{url} {components}");
let key = match (release, variant) {
+ (Release::Bookworm, DebianVariant::Security) => {
+ "/usr/share/keyrings/debian-archive-bookworm-security-automatic.gpg"
+ }
+ (Release::Bookworm, DebianVariant::Updates) |
+ (Release::Bookworm, DebianVariant::Backports) => {
+ "/usr/share/keyrings/debian-archive-bookworm-automatic.gpg"
+ }
+ (Release::Bookworm, _) => "/usr/share/keyrings/debian-archive-bookworm-stable.gpg",
(Release::Bullseye, DebianVariant::Security) => {
"/usr/share/keyrings/debian-archive-bullseye-security-automatic.gpg"
}
@@ -191,7 +214,11 @@ fn action_add_mirror(config: &SectionConfigData) -> Result<Vec<MirrorConfig>, Er
];
let dist = read_selection_from_tty("Select distro to mirror", distros, None)?;
- let releases = &[(Release::Bullseye, "Bullseye"), (Release::Buster, "Buster")];
+ let releases = &[
+ (Release::Bookworm, "Bookworm"),
+ (Release::Bullseye, "Bullseye"),
+ (Release::Buster, "Buster"),
+ ];
let release = read_selection_from_tty("Select release", releases, Some(0))?;
let mut add_debian_repo = false;
@@ -224,6 +251,7 @@ fn action_add_mirror(config: &SectionConfigData) -> Result<Vec<MirrorConfig>, Er
}
let releases = match release {
+ &Release::Bookworm => vec![(CephRelease::Quincy, "Quincy (17.x)")],
Release::Bullseye => {
vec![
(CephRelease::Octopus, "Octopus (15.x)"),
@@ -250,6 +278,7 @@ fn action_add_mirror(config: &SectionConfigData) -> Result<Vec<MirrorConfig>, Er
read_string_from_tty("Enter repository components", Some("main test"))?;
let key = match release {
+ Release::Bookworm => "/etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg",
Release::Bullseye => "/etc/apt/trusted.gpg.d/proxmox-release-bullseye.gpg",
Release::Buster => "/etc/apt/trusted.gpg.d/proxmox-release-buster.gpg",
};
@@ -281,6 +310,9 @@ fn action_add_mirror(config: &SectionConfigData) -> Result<Vec<MirrorConfig>, Er
// TODO enterprise query for key!
let url = match (release, variant) {
+ (Release::Bookworm, ProxmoxVariant::Enterprise) => format!("https://enterprise.proxmox.com/debian/{product} bookworm {product}-enterprise"),
+ (Release::Bookworm, ProxmoxVariant::NoSubscription) => format!("http://download.proxmox.com/debian/{product} bookworm {product}-no-subscription"),
+ (Release::Bookworm, ProxmoxVariant::Test) => format!("http://download.proxmox.com/debian/{product} bookworm {product}test"),
(Release::Bullseye, ProxmoxVariant::Enterprise) => format!("https://enterprise.proxmox.com/debian/{product} bullseye {product}-enterprise"),
(Release::Bullseye, ProxmoxVariant::NoSubscription) => format!("http://download.proxmox.com/debian/{product} bullseye {product}-no-subscription"),
(Release::Bullseye, ProxmoxVariant::Test) => format!("http://download.proxmox.com/debian/{product} bullseye {product}test"),
@@ -297,6 +329,7 @@ fn action_add_mirror(config: &SectionConfigData) -> Result<Vec<MirrorConfig>, Er
};
let key = match release {
+ Release::Bookworm => "/etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg",
Release::Bullseye => "/etc/apt/trusted.gpg.d/proxmox-release-bullseye.gpg",
Release::Buster => "/etc/apt/trusted.gpg.d/proxmox-release-buster.gpg",
};
--
2.30.2
^ permalink raw reply [flat|nested] 4+ messages in thread
* [pbs-devel] [PATCH proxmox-offline-mirror v2 2/2] add support for bookworm enterprise ceph repo
2023-06-12 13:37 [pbs-devel] [PATCH proxmox-offline-mirror v2 0/2] POM support bookworm releases and ceph enterprise repo Stefan Sterz
2023-06-12 13:37 ` [pbs-devel] [PATCH proxmox-offline-mirror v2 1/2] add bookworm to the list of releases Stefan Sterz
@ 2023-06-12 13:37 ` Stefan Sterz
2023-06-16 8:05 ` [pbs-devel] applied-series: [PATCH proxmox-offline-mirror v2 0/2] POM support bookworm releases and ceph enterprise repo Thomas Lamprecht
2 siblings, 0 replies; 4+ messages in thread
From: Stefan Sterz @ 2023-06-12 13:37 UTC (permalink / raw)
To: pbs-devel
the bookworm release of proxmox ve comes along with a new ceph
enterprise repo. this commit adds support for this new repo for
bookworm-based releases.
Signed-off-by: Stefan Sterz <s.sterz@proxmox.com>
---
src/bin/proxmox-offline-mirror.rs | 37 ++++++++++++++++++++++++++-----
1 file changed, 32 insertions(+), 5 deletions(-)
diff --git a/src/bin/proxmox-offline-mirror.rs b/src/bin/proxmox-offline-mirror.rs
index e2282d7..f5be2c0 100644
--- a/src/bin/proxmox-offline-mirror.rs
+++ b/src/bin/proxmox-offline-mirror.rs
@@ -1,4 +1,5 @@
use std::fmt::Display;
+use std::matches;
use std::path::Path;
use anyhow::{bail, format_err, Error};
@@ -274,8 +275,36 @@ fn action_add_mirror(config: &SectionConfigData) -> Result<Vec<MirrorConfig>, Er
Some(releases.len() - 1),
)?;
- let components =
- read_string_from_tty("Enter repository components", Some("main test"))?;
+ let (base_url, components) = if matches!(release, Release::Bookworm) {
+ let variants = &[
+ (ProxmoxVariant::Enterprise, "Enterprise repository"),
+ (ProxmoxVariant::NoSubscription, "No-Subscription repository"),
+ (ProxmoxVariant::Test, "Test repository"),
+ ];
+
+ let variant =
+ read_selection_from_tty("Select repository variant", variants, Some(0))?;
+
+ match variant {
+ ProxmoxVariant::Enterprise => (
+ "https://enterprise.proxmox.com/debian/ceph",
+ "enterprise".to_string(),
+ ),
+ ProxmoxVariant::NoSubscription => (
+ "http://download.proxmox.com/debian/ceph",
+ "no-subscription".to_string(),
+ ),
+ ProxmoxVariant::Test => (
+ "http://download.proxmox.com/debian/ceph",
+ "test".to_string(),
+ ),
+ }
+ } else {
+ (
+ "http://download.proxmox.com/debian/ceph",
+ read_string_from_tty("Enter repository components", Some("main test"))?,
+ )
+ };
let key = match release {
Release::Bookworm => "/etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg",
@@ -291,9 +320,7 @@ fn action_add_mirror(config: &SectionConfigData) -> Result<Vec<MirrorConfig>, Er
CephRelease::Quincy => "quincy",
};
- let url = format!(
- "http://download.proxmox.com/debian/ceph-{ceph_release} {release} {components}"
- );
+ let url = format!("{base_url}-{ceph_release} {release} {components}");
let suggested_id = format!("ceph_{ceph_release}_{release}");
(url, key.to_string(), suggested_id, SkipConfig::default())
--
2.30.2
^ permalink raw reply [flat|nested] 4+ messages in thread
* [pbs-devel] applied-series: [PATCH proxmox-offline-mirror v2 0/2] POM support bookworm releases and ceph enterprise repo
2023-06-12 13:37 [pbs-devel] [PATCH proxmox-offline-mirror v2 0/2] POM support bookworm releases and ceph enterprise repo Stefan Sterz
2023-06-12 13:37 ` [pbs-devel] [PATCH proxmox-offline-mirror v2 1/2] add bookworm to the list of releases Stefan Sterz
2023-06-12 13:37 ` [pbs-devel] [PATCH proxmox-offline-mirror v2 2/2] add support for bookworm enterprise ceph repo Stefan Sterz
@ 2023-06-16 8:05 ` Thomas Lamprecht
2 siblings, 0 replies; 4+ messages in thread
From: Thomas Lamprecht @ 2023-06-16 8:05 UTC (permalink / raw)
To: Proxmox Backup Server development discussion, Stefan Sterz
Am 12/06/2023 um 15:37 schrieb Stefan Sterz:
> these two patches add support for the bookworm-based proxmox releases
> and also the ceph enterprise repo.
>
> changes since v1:
>
> * adapted the keys that the setup wizzard uses to match those actually
> used by debian now that bookworm has been released.
>
> Stefan Sterz (2):
> add bookworm to the list of releases
> add support for bookworm enterprise ceph repo
>
> src/bin/proxmox-offline-mirror.rs | 72 ++++++++++++++++++++++++++++---
> 1 file changed, 66 insertions(+), 6 deletions(-)
>
applied series, thanks!
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-06-16 8:05 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-06-12 13:37 [pbs-devel] [PATCH proxmox-offline-mirror v2 0/2] POM support bookworm releases and ceph enterprise repo Stefan Sterz
2023-06-12 13:37 ` [pbs-devel] [PATCH proxmox-offline-mirror v2 1/2] add bookworm to the list of releases Stefan Sterz
2023-06-12 13:37 ` [pbs-devel] [PATCH proxmox-offline-mirror v2 2/2] add support for bookworm enterprise ceph repo Stefan Sterz
2023-06-16 8:05 ` [pbs-devel] applied-series: [PATCH proxmox-offline-mirror v2 0/2] POM support bookworm releases and ceph enterprise repo Thomas Lamprecht
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.