diff options
| -rw-r--r-- | mullvad-update/meta/src/artifacts.rs | 18 | ||||
| -rw-r--r-- | mullvad-update/meta/src/platform.rs | 2 |
2 files changed, 15 insertions, 5 deletions
diff --git a/mullvad-update/meta/src/artifacts.rs b/mullvad-update/meta/src/artifacts.rs index 907b49bbe7..8617c0deaf 100644 --- a/mullvad-update/meta/src/artifacts.rs +++ b/mullvad-update/meta/src/artifacts.rs @@ -12,6 +12,7 @@ use mullvad_update::{format, hash}; /// See [crate::config::Config::base_urls] for the assumptions made. pub async fn generate_installer_details( architecture: format::Architecture, + version: &mullvad_version::Version, base_urls: &[String], artifact: &Path, ) -> anyhow::Result<format::Installer> { @@ -36,7 +37,7 @@ pub async fn generate_installer_details( .file_name() .and_then(|f| f.to_str()) .context("Unexpected filename")?; - let urls = derive_urls(base_urls, filename); + let urls = derive_urls(base_urls, version, filename); Ok(format::Installer { architecture, @@ -46,12 +47,16 @@ pub async fn generate_installer_details( }) } -fn derive_urls(base_urls: &[String], filename: &str) -> Vec<String> { +fn derive_urls( + base_urls: &[String], + version: &mullvad_version::Version, + filename: &str, +) -> Vec<String> { base_urls .iter() .map(|base_url| { let url = base_url.strip_suffix("/").unwrap_or(base_url); - format!("{url}/{}", filename) + format!("{url}/{version}/{}", filename) }) .collect() } @@ -69,8 +74,11 @@ mod test { ]; assert_eq!( - &derive_urls(&base_urls, "test.exe"), - &["https://fake1.fake/test.exe", "https://fake2.fake/test.exe",] + &derive_urls(&base_urls, &"2025.1".parse().unwrap(), "test.exe"), + &[ + "https://fake1.fake/2025.1/test.exe", + "https://fake2.fake/2025.1/test.exe" + ], ); } } diff --git a/mullvad-update/meta/src/platform.rs b/mullvad-update/meta/src/platform.rs index a781362d76..4a75df736d 100644 --- a/mullvad-update/meta/src/platform.rs +++ b/mullvad-update/meta/src/platform.rs @@ -307,6 +307,7 @@ impl Platform { installers.push( artifacts::generate_installer_details( format::Architecture::Arm64, + version, base_urls, &artifact, ) @@ -317,6 +318,7 @@ impl Platform { installers.push( artifacts::generate_installer_details( format::Architecture::X86, + version, base_urls, &artifact, ) |
