[pdm-devel] [PATCH datacenter-manager v3 02/11] pdm-config: views: add support for views

Lukas Wagner l.wagner at proxmox.com
Thu Nov 6 14:43:44 CET 2025


This allows to read ViewConfig entries from a new config file at
/etc/proxmox-datacenter-manager/views.cfg

Signed-off-by: Lukas Wagner <l.wagner at proxmox.com>
---

Notes:
    Changes since v2:
      - Change config path to 'views.cfg' instead of 'views/filters.cfg'

 lib/pdm-config/src/lib.rs   |  2 +-
 lib/pdm-config/src/views.rs | 17 +++++++++++++++++
 2 files changed, 18 insertions(+), 1 deletion(-)
 create mode 100644 lib/pdm-config/src/views.rs

diff --git a/lib/pdm-config/src/lib.rs b/lib/pdm-config/src/lib.rs
index ac398cab..4c490541 100644
--- a/lib/pdm-config/src/lib.rs
+++ b/lib/pdm-config/src/lib.rs
@@ -1,6 +1,5 @@
 use anyhow::{format_err, Error};
 use nix::unistd::{Gid, Group, Uid, User};
-
 pub use pdm_buildcfg::{BACKUP_GROUP_NAME, BACKUP_USER_NAME};
 
 pub mod certificate_config;
@@ -8,6 +7,7 @@ pub mod domains;
 pub mod node;
 pub mod remotes;
 pub mod setup;
+pub mod views;
 
 mod config_version_cache;
 pub use config_version_cache::ConfigVersionCache;
diff --git a/lib/pdm-config/src/views.rs b/lib/pdm-config/src/views.rs
new file mode 100644
index 00000000..59c02a66
--- /dev/null
+++ b/lib/pdm-config/src/views.rs
@@ -0,0 +1,17 @@
+use anyhow::Error;
+
+use proxmox_section_config::typed::{ApiSectionDataEntry, SectionConfigData};
+
+use pdm_api_types::views::ViewConfigEntry;
+
+use pdm_buildcfg::configdir;
+
+const VIEW_CFG_FILENAME: &str = configdir!("/views.cfg");
+
+/// Get the `views.cfg` config file contents.
+pub fn config() -> Result<SectionConfigData<ViewConfigEntry>, Error> {
+    let content =
+        proxmox_sys::fs::file_read_optional_string(VIEW_CFG_FILENAME)?.unwrap_or_default();
+
+    ViewConfigEntry::parse_section_config(VIEW_CFG_FILENAME, &content)
+}
-- 
2.47.3





More information about the pdm-devel mailing list