From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id B17D71FF348 for ; Wed, 17 Apr 2024 14:32:33 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 8C6435B4C; Wed, 17 Apr 2024 14:31:46 +0200 (CEST) From: Aaron Lauterer To: pve-devel@lists.proxmox.com Date: Wed, 17 Apr 2024 14:31:04 +0200 Message-Id: <20240417123108.212720-33-a.lauterer@proxmox.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240417123108.212720-1-a.lauterer@proxmox.com> References: <20240417123108.212720-1-a.lauterer@proxmox.com> MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL -0.046 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] [PATCH installer v6 32/36] fetch-answer: move get_answer_file to utils X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" and switch to accepting the full path to the answer file. This makes it possible to use it in more situations than just the partition case. Signed-off-by: Aaron Lauterer --- .../src/fetch_plugins/partition.rs | 23 +++++-------------- .../src/fetch_plugins/utils/mod.rs | 13 ++++++++++- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/proxmox-fetch-answer/src/fetch_plugins/partition.rs b/proxmox-fetch-answer/src/fetch_plugins/partition.rs index dbe5dda..2557c59 100644 --- a/proxmox-fetch-answer/src/fetch_plugins/partition.rs +++ b/proxmox-fetch-answer/src/fetch_plugins/partition.rs @@ -1,8 +1,8 @@ -use anyhow::{Error, Result}; +use anyhow::Result; use log::info; -use std::{fs::read_to_string, path::Path}; +use std::path::PathBuf; -use crate::fetch_plugins::utils::mount_proxmoxinst_part; +use crate::fetch_plugins::utils::{get_answer_file, mount_proxmoxinst_part}; static ANSWER_FILE: &str = "answer.toml"; @@ -12,21 +12,10 @@ impl FetchFromPartition { /// Returns the contents of the answer file pub fn get_answer() -> Result { info!("Checking for answer file on partition."); - let mount_path = mount_proxmoxinst_part()?; - let answer = Self::get_answer_file(&mount_path)?; + let mut mount_path = PathBuf::from(mount_proxmoxinst_part()?); + mount_path.push(ANSWER_FILE); + let answer = get_answer_file(&mount_path)?; info!("Found answer file on partition."); Ok(answer) } - - /// Searches for answer file and returns contents if found - fn get_answer_file(mount_path: &str) -> Result { - let answer_path = Path::new(mount_path).join(ANSWER_FILE); - match answer_path.try_exists() { - Ok(true) => Ok(read_to_string(answer_path)?), - _ => Err(Error::msg(format!( - "could not find answer file expected at: {}", - answer_path.display() - ))), - } - } } diff --git a/proxmox-fetch-answer/src/fetch_plugins/utils/mod.rs b/proxmox-fetch-answer/src/fetch_plugins/utils/mod.rs index e5ea4b8..29cb37d 100644 --- a/proxmox-fetch-answer/src/fetch_plugins/utils/mod.rs +++ b/proxmox-fetch-answer/src/fetch_plugins/utils/mod.rs @@ -1,7 +1,7 @@ use anyhow::{Error, Result}; use log::{info, warn}; use std::{ - fs::{self, create_dir_all}, + fs::{self, create_dir_all, read_to_string}, path::{Path, PathBuf}, process::Command, }; @@ -83,3 +83,14 @@ fn check_if_mounted(target_path: &str) -> Result { } Ok(false) } + +/// Searches for answer file and returns contents if found +pub fn get_answer_file(path: &PathBuf) -> Result { + match path.try_exists() { + Ok(true) => Ok(read_to_string(path)?), + _ => Err(Error::msg(format!( + "could not find answer file expected at: {}", + path.display() + ))), + } +} -- 2.39.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel