From fbb05f8dee18b1c85e0df3decab77d01cb83d630 Mon Sep 17 00:00:00 2001 From: Jephte Clain Date: Thu, 8 Feb 2024 22:26:13 +0400 Subject: [PATCH] support des versions AMUE --- lib/ulib/base | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/lib/ulib/base b/lib/ulib/base index 47bd9b8..d91fe48 100644 --- a/lib/ulib/base +++ b/lib/ulib/base @@ -1424,7 +1424,7 @@ function is_archive() { name="${name%.jar}" name="${name%.war}" name="${name%.ear}" - [ "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && name="${name%.sh}" + [ -n "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && name="${name%.sh}" [ "$name" != "$1" ] } function extract_archive() { @@ -1446,7 +1446,7 @@ function extract_archive() { cd "$destdir" jar xf "$arch" "$@" ) || return - elif [ "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && endswith "$arch" .sh; then + elif [ -n "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && endswith "$arch" .sh; then ( arch="$(abspath "$arch")" cd "$destdir" @@ -1469,7 +1469,7 @@ function get_archive_basename() { basename="${basename%.jar}" basename="${basename%.war}" basename="${basename%.ear}" - [ "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && basename="${basename%.sh}" + [ -n "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && basename="${basename%.sh}" # résultat echo "$basename" } @@ -1489,10 +1489,13 @@ function get_archive_appname() { appname="${appname%.jar}" appname="${appname%.war}" appname="${appname%.ear}" - [ "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && appname="${appname%.sh}" + [ -n "$NUTOOLS_SH_ARCHIVE_SUPPORT" ] && appname="${appname%.sh}" # supprimer la version et afficher echo "$appname" | awk '{ - if (match($0, /[-_.]([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/)) { + if (match($0, /-([0-9]{5}(_(VA|VSR)[0-9]+)?)$/, vs)) { + # version style AMUE, e.g 64070 ou 64070_VA1 + print substr($0, 1, RSTART - 1) + } else if (match($0, /[-_.]([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/)) { print substr($0, 1, RSTART - 1) } else if (match($0, /([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/)) { print substr($0, 1, RSTART - 1) @@ -1511,7 +1514,10 @@ function get_archive_versionsuffix() { # --> -0.1 local basename="$(get_archive_basename "$1")" echo "$basename" | awk '{ - if (match($0, /([-_.][0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) { + if (match($0, /(-[0-9]{5}(_(VA|VSR)[0-9]+)?)$/, vs)) { + # version style AMUE, e.g 64070 ou 64070_VA1 + print vs["1"] + } else if (match($0, /([-_.][0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) { print vs["1"] } else if (match($0, /([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) { print vs["1"] @@ -1528,7 +1534,10 @@ function get_archive_version() { # --> 0.1 local basename="$(get_archive_basename "$1")" echo "$basename" | awk '{ - if (match($0, /[-_.]([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) { + if (match($0, /-([0-9]{5}(_(VA|VSR)[0-9]+)?)$/, vs)) { + # version style AMUE, e.g 64070 ou 64070_VA1 + print vs["1"] + } else if (match($0, /[-_.]([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) { print vs["1"] } else if (match($0, /([0-9]+([-_.][0-9]+)*([a-zA-Z][0-9]*|[-_.][0-9]+[a-zA-Z][0-9]*)?)$/, vs)) { print vs["1"]