github.com/kaisawind/go-swagger@v0.19.0/fixtures/bugs/1392/gen-fixtures.sh (about)

     1  #! /bin/bash 
     2  if [[ ${1} == "--clean" ]] ; then
     3      clean=1
     4  fi
     5  # A small utility to build fixture servers
     6  # Fixtures with models only
     7  testcases="fixture-1392-1.yaml fixture-1392-2.yaml fixture-1392-3.yaml fixture-1392-4.yaml fixture-1392-5.yaml"
     8  for testcase in ${testcases} ; do
     9      target=./gen-${testcase%.*}
    10      spec=./${testcase}
    11      serverName="codegensrv"
    12      rm -rf ${target}
    13      mkdir ${target}
    14      echo "Generation for ${spec}"
    15      swagger generate server --spec ${spec} --name=${serverName} --target ${target} --output=${testcase%.*}.log
    16      # 1>x.log 2>&1
    17      #
    18      if [[ $? != 0 ]] ; then
    19          echo "Generation failed for ${spec}"
    20          exit 1
    21      fi
    22      echo "${spec}: Generation OK"
    23      if [[ ! -d ${target}/models ]] ; then
    24          echo "No model in this spec! Skipped"
    25      else
    26          echo "Building model package"
    27          (cd ${target}/models; go build)
    28          if [[ $? != 0 ]] ; then
    29              echo "Model build failed for ${spec}"
    30              failed=1
    31          fi
    32  
    33          echo "Build server"
    34          (cd ${target}/cmd/${serverName}"-server"; go build)
    35          if [[ $? != 0 ]] ; then
    36             echo "Server build failed for ${spec}"
    37             failed=1
    38          fi
    39          if [[ ${failed} == 1 ]] ; then 
    40              echo "Continue..."
    41              #exit 1
    42          else
    43          echo "${spec}: Build OK"
    44          if [[ -n ${clean} ]] ; then 
    45               rm -rf ${target}
    46          fi
    47          fi
    48      fi
    49  done
    50  # Non reg codegen
    51  # NOTE(fredbi): 
    52  # - azure: invalid spec 
    53  # - bitbucket: model does not compile
    54  # - issue72: invalid spec
    55  # - todolist.discriminator: known issue with schemavalidator
    56  testcases=`cd ../../codegen;ls -1|grep -vE 'azure|bitbucket|existing-model|issue72|todolist.simple.yml'`
    57  for testcase in ${testcases} ; do
    58      target=./gen-${testcase%.*}
    59      if [[ -f ../../codegen/${testcase} ]] ; then
    60        spec=../../codegen/${testcase}
    61      else 
    62        spec=${testcase}
    63      fi
    64      serverName="nrcodegen"
    65      rm -rf ${target}
    66      mkdir ${target}
    67      echo "Generation for ${spec}"
    68      swagger generate server --skip-validation --spec ${spec} --target ${target} --name=${serverName} --output=${testcase%.*}.log
    69      if [[ $? != 0 ]] ; then
    70          echo "Generation failed for ${spec}"
    71          exit 1
    72      fi
    73      echo "${spec}: Generation OK"
    74      (cd ${target}/cmd/${serverName}"-server"; go build)
    75      if [[ $? != 0 ]] ; then
    76          echo "Build failed for ${spec}"
    77          exit 1
    78      fi
    79      echo "${spec}: Build OK"
    80      if [[ -n ${clean} ]] ; then 
    81          rm -rf ${target}
    82      fi
    83  done
    84  # 
    85  testcases=
    86  for testcase in ${testcases} ; do
    87      target=./gen-${testcase%.*}
    88      spec=./${testcase}
    89      serverName="bugfix"
    90      rm -rf ${target}
    91      mkdir ${target}
    92      echo "Generation for ${spec}"
    93      swagger generate server --spec ${spec} --target ${target} --quiet --name=${serverName}
    94      if [[ $? != 0 ]] ; then
    95          echo "Generation failed for ${spec}"
    96          exit 1
    97      fi
    98      echo "${spec}: Generation OK"
    99      (cd ${target}/cmd/${serverName}"-server"; go build)
   100      if [[ $? != 0 ]] ; then
   101          echo "Build failed for ${spec}"
   102          exit 1
   103      fi
   104      echo "${spec}: Build OK"
   105      if [[ -n ${clean} ]] ; then 
   106          rm -rf ${target}
   107      fi
   108  done