github.com/hechain20/hechain@v0.0.0-20220316014945-b544036ba106/scripts/swagger.sh (about) 1 #!/bin/bash -e 2 3 # Copyright hechain All Rights Reserved. 4 # 5 # SPDX-License-Identifier: Apache-2.0 6 7 fabric_dir="$(cd "$(dirname "$0")/.." && pwd)" 8 swagger_tags="${fabric_dir}/swagger/tags.json" 9 swagger_doc="${fabric_dir}/swagger/swagger-fabric.json" 10 11 check_spec() { 12 swagger_doc_check="${fabric_dir}/swagger/swagger-fabric-check.json" 13 swagger generate spec -o "$swagger_doc_check" --scan-models --exclude-deps --input "$swagger_tags" 14 if [ -n "$(diff "$swagger_doc_check" "$swagger_doc")" ]; then 15 echo "The Fabric swagger is out of date." 16 echo "Please run '$0 generate' to update the swagger." 17 rm "$swagger_doc_check" 18 exit 1 19 fi 20 rm "$swagger_doc_check" 21 } 22 23 case "$1" in 24 # check if the swagger is up to date with the swagger 25 # options in the tree 26 "check") 27 check_spec 28 ;; 29 30 # generate the swagger 31 "generate") 32 swagger generate spec -o "$swagger_doc" --scan-models --exclude-deps --input "$swagger_tags" 33 ;; 34 35 *) 36 echo "Please specify check or generate" 37 exit 1 38 ;; 39 esac 40