Loading lint-data-models.sh +32 −4 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ if [ -f "$LOGFILE" ] ; then rm "$LOGFILE" fi echo "------ Validating all YANG, JSON and XML files ------" echo "------ Linting modified YANG files ------" # If there are no YANG, JSON or XML files, then simply exit ls | grep -q 'yang' found_data_models=$? Loading @@ -28,11 +28,39 @@ fi echo "------ pyYANG Version ------" docker run --rm -v $(pwd)/yang-models:/yang "${DOCKER_IMG}" pyang --version echo "------ Linting all YANG files ------" echo "------ Linting modified YANG files ------" # Display all errors and warnings to the user. Errors are allowed. docker pull -q "${DOCKER_IMG}" docker run --rm -v $(pwd)/yang-models:/yang "${DOCKER_IMG}" "/bin/sh" -c 'pyang --3gpp -p external-yams _3gpp-*.yang' 2>>$LOGFILE >>$LOGFILE # Linting only yang files that have changed in last commit files_changed=`git log --raw -n 1 |grep "^:.*yang-models/.*yang"| cut -d '/' -f 2` echo $files_changed external_files_changed=`git log --raw -n 1 |grep "^:.*yang-models/external-yams/.*yang"| cut -d '/' -f 2` echo $external_files_modified mkdir changed-yang-models mkdir changed-yang-models/external-yams if [ $files_changed ] ; then cd yang-models cp $files_changed ../changed-yang-models/ cd .. fi if [ $external_files_changed ] ; then cd yang-models/external-yams cp $external_files_changed ../changed-yang-models/external-yams cd ../.. fi if [ $files_changed ] || [ $external_files_changed ] ; then docker run --rm -v $(pwd)/changed-yang-models:/yang "${DOCKER_IMG}" "/bin/sh" -c 'pyang --3gpp -p external-yams _3gpp-*.yang' 2>>$LOGFILE >>$LOGFILE ret=$? else echo "-- No YANG files modified." exit 0 fi #Validate all yang files #docker run --rm -v $(pwd)/yang-models:/yang "${DOCKER_IMG}" "/bin/sh" -c 'pyang --3gpp -p external-yams _3gpp-*.yang' 2>>$LOGFILE >>$LOGFILE #ret=$? echo "Output of Linting commad saved to $LOGFILE." Loading validate-data-models.sh +2 −1 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ if [ -f "$LOGFILE" ] ; then rm "$LOGFILE" fi echo "------ Validating all YANG, JSON and XML files ------" echo "------ Validating modified YANG files ------" # If there are no YANG, JSON or XML files, then simply exit ls | grep -q 'yang' found_data_models=$? Loading @@ -27,6 +27,7 @@ fi # This must run error-free and must display all warnings to the user docker pull -q "${DOCKER_IMG}" #Validate all yang files docker run --rm -v $(pwd)/yang-models:/yang "${DOCKER_IMG}" "/bin/sh" -c 'pyang --strict -p external-yams _3gpp-*.yang' 2>>$LOGFILE >>$LOGFILE ret=$? Loading Loading
lint-data-models.sh +32 −4 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ if [ -f "$LOGFILE" ] ; then rm "$LOGFILE" fi echo "------ Validating all YANG, JSON and XML files ------" echo "------ Linting modified YANG files ------" # If there are no YANG, JSON or XML files, then simply exit ls | grep -q 'yang' found_data_models=$? Loading @@ -28,11 +28,39 @@ fi echo "------ pyYANG Version ------" docker run --rm -v $(pwd)/yang-models:/yang "${DOCKER_IMG}" pyang --version echo "------ Linting all YANG files ------" echo "------ Linting modified YANG files ------" # Display all errors and warnings to the user. Errors are allowed. docker pull -q "${DOCKER_IMG}" docker run --rm -v $(pwd)/yang-models:/yang "${DOCKER_IMG}" "/bin/sh" -c 'pyang --3gpp -p external-yams _3gpp-*.yang' 2>>$LOGFILE >>$LOGFILE # Linting only yang files that have changed in last commit files_changed=`git log --raw -n 1 |grep "^:.*yang-models/.*yang"| cut -d '/' -f 2` echo $files_changed external_files_changed=`git log --raw -n 1 |grep "^:.*yang-models/external-yams/.*yang"| cut -d '/' -f 2` echo $external_files_modified mkdir changed-yang-models mkdir changed-yang-models/external-yams if [ $files_changed ] ; then cd yang-models cp $files_changed ../changed-yang-models/ cd .. fi if [ $external_files_changed ] ; then cd yang-models/external-yams cp $external_files_changed ../changed-yang-models/external-yams cd ../.. fi if [ $files_changed ] || [ $external_files_changed ] ; then docker run --rm -v $(pwd)/changed-yang-models:/yang "${DOCKER_IMG}" "/bin/sh" -c 'pyang --3gpp -p external-yams _3gpp-*.yang' 2>>$LOGFILE >>$LOGFILE ret=$? else echo "-- No YANG files modified." exit 0 fi #Validate all yang files #docker run --rm -v $(pwd)/yang-models:/yang "${DOCKER_IMG}" "/bin/sh" -c 'pyang --3gpp -p external-yams _3gpp-*.yang' 2>>$LOGFILE >>$LOGFILE #ret=$? echo "Output of Linting commad saved to $LOGFILE." Loading
validate-data-models.sh +2 −1 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ if [ -f "$LOGFILE" ] ; then rm "$LOGFILE" fi echo "------ Validating all YANG, JSON and XML files ------" echo "------ Validating modified YANG files ------" # If there are no YANG, JSON or XML files, then simply exit ls | grep -q 'yang' found_data_models=$? Loading @@ -27,6 +27,7 @@ fi # This must run error-free and must display all warnings to the user docker pull -q "${DOCKER_IMG}" #Validate all yang files docker run --rm -v $(pwd)/yang-models:/yang "${DOCKER_IMG}" "/bin/sh" -c 'pyang --strict -p external-yams _3gpp-*.yang' 2>>$LOGFILE >>$LOGFILE ret=$? Loading