| #!/bin/bash |
| # ----------------------------------------------------------------------------- |
| # ONOS YANG to XML skeleton convert via pyang |
| # ----------------------------------------------------------------------------- |
| |
| [ ! -d "$ONOS_ROOT" ] && echo "ONOS_ROOT is not defined" >&2 && exit 1 |
| . $ONOS_ROOT/tools/build/envDefaults |
| |
| aux=/tmp/pyangversion |
| pyang -v $cmd > $aux |
| errorstring="Pyang no installed, please download and intall from https://github.com/mbj4668/pyang" |
| cat $aux |
| grep -q "pyang: command not found" $aux && echo $errorString && exit 1 |
| |
| grep -q "pyang 1" $aux |
| |
| if ! [ -e "$1" ]; then |
| echo "$1 input directory not found" >&2 |
| exit 1 |
| fi |
| if ! [ -d "$1" ]; then |
| echo "$1 not a directory for output" >&2 |
| exit 1 |
| fi |
| cd $1 |
| find . -name '*.yang' | while read file; do f=$(basename $file ".yang"); \ |
| directory=$ONOS_ROOT/drivers/utilities/src/main/resources/${PWD##*/}; \ |
| if [ ! -d "$directory" ]; then |
| mkdir $directory; \ |
| fi |
| echo $directory/$f.xml |
| pyang -f sample-xml-skeleton $f.yang > $directory/$f.xml; done |
| exit 0 |