From 516d99a74f2ea63e8948fbbbfff68bd862f9461e Mon Sep 17 00:00:00 2001 From: hobbyquaker Date: Fri, 6 Mar 2020 17:12:15 +0100 Subject: [PATCH] handle scoped modules (#318) --- addon_files/redmatic/bin/redmaticVersions | 39 +++++++++++------------ 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/addon_files/redmatic/bin/redmaticVersions b/addon_files/redmatic/bin/redmaticVersions index 01e07713..b2f77c23 100755 --- a/addon_files/redmatic/bin/redmaticVersions +++ b/addon_files/redmatic/bin/redmaticVersions @@ -14,29 +14,26 @@ source $ADDON_DIR/versions JO_ARGS="" -# TODO handle scoped packages -for dir in $GLOBAL_MODULES/* -do - dir=${dir%*/} - PKG=${dir##*/} - PKGJSON=$GLOBAL_MODULES/$PKG/package.json - if [[ -f $PKGJSON ]]; then - JO_ARGS="$JO_ARGS $PKG=`jq -r '.version' $GLOBAL_MODULES/$PKG/package.json`" - fi -done - -for dir in $LOCAL_MODULES/* -do - dir=${dir%*/} - PKG=${dir##*/} - PKGJSON=$LOCAL_MODULES/$PKG/package.json - if [[ -f $PKGJSON ]]; then - JO_ARGS="$JO_ARGS $PKG=`jq -r '.version' $LOCAL_MODULES/$PKG/package.json`" - fi -done +scan_dir() +{ + for dir in $1/* + do + dir=${dir%*/} + PKG=${dir##*/} + PKGJSON=$1/$PKG/package.json + if [[ -f $PKGJSON ]]; then + JO_ARGS="$JO_ARGS `jq -r '.name' $1/$PKG/package.json`=`jq -r '.version' $1/$PKG/package.json`" + fi + case $PKG in @*) + scan_dir "$1/$PKG" + esac + done +} + +scan_dir $GLOBAL_MODULES +scan_dir $LOCAL_MODULES jo -p ccu=`(cat /VERSION && echo -n "deviceTypes=" && $ADDON_DIR/bin/deviceTypes) | jo` \ redmatic=$VERSION_ADDON \ nodejs=`node --version | cut -c 2-` \ $JO_ARGS -