From 8bcb9e291a8ae6610170e9b4a1765b9ef607b1f7 Mon Sep 17 00:00:00 2001 From: pabloFuente Date: Tue, 28 Apr 2020 16:27:30 +0200 Subject: [PATCH 1/2] update-tutorials.sh script updated --- update-tutorials.sh | 100 ++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 92 insertions(+), 8 deletions(-) diff --git a/update-tutorials.sh b/update-tutorials.sh index 983fcf5b..653d539e 100755 --- a/update-tutorials.sh +++ b/update-tutorials.sh @@ -1,7 +1,50 @@ -#!/bin/bash -x +#!/bin/bash +set -eo pipefail + +if [[ -z "$FROM_VERSION" || -z "$TO_VERSION" ]]; then + echo + echo "Examples of use: " + echo " FROM_VERSION=2.12.0 TO_VERSION=2.13.0 ${0}" + echo " FROM_VERSION=2.12.0 TO_VERSION=2.13.0 FROM_VERSION_SDK=2.12.0 TO_VERSION_SDK=2.13.0 ${0}" + echo + exit 1 +fi + +if [[ -z "$FROM_VERSION_SDK" || -z "$TO_VERSION_SDK" ]]; then + echo + echo "No FROM_VERSION_SDK and TO_VERSION_SDK properties provided. Server SDKs depdendencies won't be updated." + echo "To update also server SDKs dependencies, run the script like this:" + echo " FROM_VERSION=2.12.0 TO_VERSION=2.13.0 FROM_VERSION_SDK=2.12.0 TO_VERSION_SDK=2.13.0 ${0}" + echo + read -p "Do you still want to continue? [Y/N]" -r + echo + if [[ $REPLY =~ ^[Yy]$ ]]; then : + else + echo "Aborted" + exit 1 + fi +fi echo "## Updating openvidu-tutorials" +echo +NPM_TUTORIALS="openvidu-insecure-angular + openvidu-insecure-react + openvidu-library-angular + openvidu-library-react + openvidu-ionic + openvidu-js-node + openvidu-mvc-node + openvidu-recording-node + openvidu-react-native + openvidu-electron" + +MAVEN_TUTORIALS="openvidu-js-java + openvidu-mvc-java + openvidu-recording-java + openvidu-ipcameras" + +# Delete all package-lock.json and node_modules find -type f -name 'package-lock.json' -exec rm {} \; find -type d -name 'node_modules' -exec rm -rf {} \; @@ -14,26 +57,68 @@ find . -type f -name 'package.json' -not \( -path '*/node_modules/*' -o -path '* # Updating openvidu-angular dependencies in package.json files [openvidu-library-angular] find . -type f -name 'package.json' -not \( -path '*/node_modules/*' -o -path '*/package-lock.json' \) -exec sed -i "s/\"openvidu-angular\": \"$FROM_VERSION\"/\"openvidu-angular\": \"$TO_VERSION\"/" {} \; -# Run "npm install" in every npm project [openvidu-insecure-angular, openvidu-insecure-react, openvidu-library-angular, openvidu-library-react, openvidu-ionic, openvidu-js-node, openvidu-mvc-node, openvidu-recording-node] -for tutorial in openvidu-insecure-angular openvidu-insecure-react openvidu-library-angular openvidu-library-react openvidu-ionic openvidu-js-node openvidu-mvc-node openvidu-recording-node; do +# If server SDKs must be udpated +if [[ -n "$FROM_VERSION_SDK" && -n "$TO_VERSION_SDK" ]]; then + + # Updating openvidu-node-client dependencies in package.json files [openvidu-js-node, openvidu-mvc-node, openvidu-recording-node] + find . -type f -name 'package.json' -not \( -path '*/node_modules/*' -o -path '*/package-lock.json' \) -exec sed -i "s/\"openvidu-node-client\": \"$FROM_VERSION_SDK\"/\"openvidu-node-client\": \"$TO_VERSION_SDK\"/" {} \; + + # Updating openvidu-java-client dependencies in pom.xml files + for tutorial in ${MAVEN_TUTORIALS} + do + cd $tutorial && mvn --batch-mode versions:use-dep-version -Dincludes=io.openvidu:openvidu-java-client -DdepVersion=$TO_VERSION_SDK -DforceVersion=true && cd .. + done + +fi + +# Run "npm install" in every NPM project +for tutorial in ${NPM_TUTORIALS} +do + echo "###############################" + echo "Compiling NPM project $tutorial" + echo "###############################" + echo cd $tutorial && npm install && cd .. done -# Update every import in every *.html or *.ejs file (13 files changed) +# Run "mvn clean compile package" in every Maven project +for tutorial in ${MAVEN_TUTORIALS} +do + echo "###############################" + echo "Compiling Maven project $tutorial" + echo "###############################" + echo + cd $tutorial && mvn clean compile package && cd .. +done + +# Update every import in every *.html or *.ejs file (14 files changed) for file in *.html *.ejs; do + echo "###############################" + echo "Updating openvidu-browser import in every *.html or *.ejs file (14 files changed) -for file in *.html *.ejs; do - find . -type f -name $file -not \( -path '*/node_modules/*' -o -path '*/package-lock.json' \) -exec sed -i "s/