Initial commit for OpenECOMP SDN-C OA&M
[sdnc/oam.git] / dgbuilder / tools / update_app_impl_yang.sh
1 toolsDir=$PROJECT_HOME/tools
2 appRootDir=$1
3 yangFileFullPath=$2
4 yangFile=$(basename $yangFileFullPath)
5
6 if [ "$#" != "2" ]
7 then
8         echo "Usage: $0 appRootDir yangModuleName example:$0 bwcal bwcal"
9         exit
10 fi
11 cd ${toolsDir}/tmpws
12 #cp ${toolsDir}/module-provider-impl.yang ${toolsDir}/tmpws
13
14 if [ ! -e "${toolsDir}/module-provider-impl.yang" ]
15 then
16         echo "${toolsDir}/module-provider-impl.yang should exist"
17         exit
18 fi
19
20 #echo "appRootDir:$appRootDir"
21 #echo "yangFileFullPath:$yangFileFullPath"
22 #echo "yangFile:$yangFile"
23
24 cp ${yangFileFullPath} ${appRootDir}/model/src/main/yang/${yangFile}
25 if [ "$?" != "0" ]
26 then
27         echo "Could not copy the yang file. Exiting ..."
28         exit
29 fi
30
31 moduleName=$(cat $yangFileFullPath|egrep "module .*{"|cut -d' ' -f2|cut -d'{' -f1)
32 #echo $moduleName
33 sed -i.bak s/\$MODULE/$1/g ${toolsDir}/module-provider-impl.yang
34 cp ${toolsDir}/module-provider-impl.yang ${appRootDir}/provider/src/main/yang/${appRootDir}-provider-impl.yang 
35 cd $appRootDir
36 mvn clean install  >${toolsDir}/tmpws/logs/mvn_install.log 2>&1
37 mkdir ${toolsDir}/tmpws/jars
38 cp ./model/target/${appRootDir}.model-1.0.0-SNAPSHOT.jar ${toolsDir}/tmpws/jars
39
40 mv  ${toolsDir}/output_js/${moduleName}_inputs.js ${toolsDir}/output_js/${moduleName}_inputs_prev.js >/dev/null 2>&1
41
42 ${toolsDir}/getRpcsClassFromYang.sh ${yangFileFullPath} ${toolsDir}/tmpws/${appRootDir}/model/target/${appRootDir}.model-1.0.0-SNAPSHOT.jar > ${toolsDir}/output_js/${moduleName}.js
43
44 node ${toolsDir}/dot_to_json.js ${toolsDir}/output_js/${moduleName}.js $moduleName >${toolsDir}/output_js/${moduleName}_inputs.js
45 cp ${toolsDir}/output_js/${moduleName}_inputs.js $PROJECT_HOME/generatedJS