fix: Use leniency for semver parsing (#184)
This commit is contained in:
parent
e6905b4fcc
commit
abedf4fc6b
4 changed files with 46 additions and 3 deletions
30
Cargo.lock
generated
30
Cargo.lock
generated
|
|
@ -203,6 +203,7 @@ dependencies = [
|
|||
"dunce",
|
||||
"env_logger",
|
||||
"fuzzy-matcher",
|
||||
"lenient_semver",
|
||||
"log",
|
||||
"once_cell",
|
||||
"open",
|
||||
|
|
@ -812,6 +813,35 @@ version = "1.4.0"
|
|||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
||||
|
||||
[[package]]
|
||||
name = "lenient_semver"
|
||||
version = "0.4.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "de8de3f4f3754c280ce1c8c42ed8dd26a9c8385c2e5ad4ec5a77e774cea9c1ec"
|
||||
dependencies = [
|
||||
"lenient_semver_parser",
|
||||
"semver",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "lenient_semver_parser"
|
||||
version = "0.4.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7f650c1d024ddc26b4bb79c3076b30030f2cf2b18292af698c81f7337a64d7d6"
|
||||
dependencies = [
|
||||
"lenient_semver_version_builder",
|
||||
"semver",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "lenient_semver_version_builder"
|
||||
version = "0.4.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9049f8ff49f75b946f95557148e70230499c8a642bf2d6528246afc7d0282d17"
|
||||
dependencies = [
|
||||
"semver",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "libc"
|
||||
version = "0.2.153"
|
||||
|
|
|
|||
|
|
@ -60,6 +60,7 @@ clap-verbosity-flag = "2"
|
|||
clap_complete = "4"
|
||||
clap_complete_nushell = "4"
|
||||
fuzzy-matcher = "0.3"
|
||||
lenient_semver = "0.4.2"
|
||||
once_cell = "1.19.0"
|
||||
open = "5"
|
||||
os_info = "3.7" # update os module config and tests when upgrading os_info
|
||||
|
|
|
|||
|
|
@ -30,6 +30,13 @@ test-secureblue:
|
|||
|
||||
DO +RUN_TESTS
|
||||
|
||||
test-secureblue-ucore:
|
||||
FROM +build-template --src=template-secureblue-ucore
|
||||
WORKDIR /tmp/test
|
||||
COPY ./test-scripts/secureblue/*.sh ./
|
||||
|
||||
DO +RUN_TESTS
|
||||
|
||||
build-template:
|
||||
ARG --required src
|
||||
FROM DOCKERFILE \
|
||||
|
|
@ -50,7 +57,13 @@ template-legacy-containerfile:
|
|||
|
||||
template-secureblue:
|
||||
FROM +secureblue-base
|
||||
RUN bluebuild -vv template -o Containerfile config/recipes/general/recipe-silverblue-nvidia.yml
|
||||
RUN bluebuild -vv template -o Containerfile recipes/general/recipe-silverblue-nvidia.yml
|
||||
|
||||
SAVE ARTIFACT /test
|
||||
|
||||
template-secureblue-ucore:
|
||||
FROM +secureblue-base
|
||||
RUN bluebuild -vv template -o Containerfile recipes/server/recipe-server-main.yml
|
||||
|
||||
SAVE ARTIFACT /test
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
use blue_build_utils::constants::IMAGE_VERSION_LABEL;
|
||||
use semver::Version;
|
||||
use serde::Deserialize;
|
||||
use serde_json::Value;
|
||||
use std::collections::HashMap;
|
||||
|
|
@ -20,7 +19,7 @@ impl ImageMetadata {
|
|||
self.labels
|
||||
.get(IMAGE_VERSION_LABEL)?
|
||||
.as_str()
|
||||
.and_then(|v| Version::parse(v).ok())?
|
||||
.and_then(|v| lenient_semver::parse(v).ok())?
|
||||
.major,
|
||||
)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue