docker_authcenterserver_build.sh 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. #!/bin/sh
  2. PROPERTIES="build.properties"
  3. PRODUCT_NAME="AUTHCENTER_SERVER"
  4. DEPENDENCY="dependencies"
  5. RED_COLOE='\E[31m'
  6. GREEN_COLOR='\E[32m'
  7. YELLOW_COLOR='\E[33m'
  8. BLUE_COLOR='\E[34m'
  9. REDB_COLOE='\E[1;31m'
  10. GREENB_COLOR='\E[1;32m'
  11. YELLOWB_COLOR='\E[1;33m'
  12. BLUEB_COLOR='\E[1;34m'
  13. RES='\E[0m'
  14. log_info() {
  15. echo -e "${GREEN_COLOR}$1${RES}"
  16. }
  17. log_info_wait() {
  18. echo -en "${GREEN_COLOR}$1${RES}"
  19. }
  20. log_error() {
  21. echo -e "${REDB_COLOE}$1${RES}"
  22. }
  23. log_success() {
  24. echo -e "${GREENB_COLOR}$1${RES}"
  25. }
  26. clean_up() {
  27. rm -rf ${BUILD}
  28. exit 1
  29. }
  30. die() {
  31. log_error "$1"
  32. clean_up
  33. }
  34. trap clean_up SIGINT SIGTERM
  35. if [ ! -f ${PROPERTIES} ]; then
  36. die "${PROPERTIES} is not exists."
  37. fi
  38. NEName="AuthCenter_Server"
  39. Version=$(grep 'ProductVersion=' ${PROPERTIES} | cut -d'=' -f2)
  40. Module=$(grep 'Module=' ${PROPERTIES} | cut -d'=' -f2)
  41. Provider="SVI 视维"
  42. BuildTime=$(date +"%Y-%m-%d %H:%M:%S")
  43. BuildVersion=$(date +"%Y%m%d")
  44. OUTPUT="output"
  45. OUTPUTPATH="${PWD}/output/"
  46. rm -rf ${OUTPUTPATH}
  47. mkdir -p ${OUTPUTPATH}
  48. cd ..
  49. PYINSTALLERBUILD=pyinstaller_build
  50. PYINSTALLERDIST=pyinstaller_dist
  51. SOURCEFILE=authcenter.py
  52. PYINSTALLSOFTWARE=${PYINSTALLERDIST}/software
  53. PYINSTALLERNAME=${SOURCEFILE%.*}
  54. log_info_wait "Start to Pyinstaller ..."
  55. rm -rf ${PYINSTALLERDIST}
  56. pyinstaller --distpath ${PYINSTALLERDIST} --workpath ${PYINSTALLERBUILD} ${SOURCEFILE}
  57. mv ${PYINSTALLERDIST}/${PYINSTALLERNAME} ${PYINSTALLSOFTWARE}
  58. if [ $? -ne 0 ]; then
  59. die " [FAIL]"
  60. fi
  61. cp -arf ./sql/ ${PYINSTALLSOFTWARE}
  62. if [ $? -ne 0 ]; then
  63. die " [FAIL]"
  64. fi
  65. cp -r ./etc/ ${PYINSTALLSOFTWARE}
  66. if [ $? -ne 0 ]; then
  67. die " [FAIL]"
  68. fi
  69. mkdir -p ${PYINSTALLSOFTWARE}/logsuite
  70. cp -af docker_conf/docker_authcenter.conf ${PYINSTALLSOFTWARE}/etc/authcenter.conf
  71. if [ $? -ne 0 ]; then
  72. die " [FAIL]"
  73. fi
  74. cp -af docker_conf/docker_logdb.conf ${PYINSTALLSOFTWARE}/logsuite/logdb.conf
  75. if [ $? -ne 0 ]; then
  76. die " [FAIL]"
  77. fi
  78. cp -af logsuite/LogSuite.conf ${PYINSTALLSOFTWARE}/logsuite/LogSuite.conf
  79. if [ $? -ne 0 ]; then
  80. die " [FAIL]"
  81. fi
  82. cp -af docker_conf/docker_casclient.ini ${PYINSTALLSOFTWARE}/etc/casclient.ini
  83. if [ $? -ne 0 ]; then
  84. die " [FAIL]"
  85. fi
  86. cp -ar casclient/cas_lib ${PYINSTALLSOFTWARE}
  87. if [ $? -ne 0 ]; then
  88. die " [FAIL]"
  89. fi
  90. cp -ar docker/* ${PYINSTALLERDIST}
  91. if [ $? -ne 0 ]; then
  92. die " [FAIL]"
  93. fi
  94. pwd
  95. touch version
  96. echo "NEName=${NEName}" > version
  97. echo "Version=${Version}" >> version
  98. echo "Provider=${Provider}" >> version
  99. echo "BuildTime=${BuildTime}" >> version
  100. mv version ${PYINSTALLERDIST}
  101. PACKAGENAME=${PRODUCT_NAME}_${Version}_${BuildVersion}_${Module}
  102. mv ${PYINSTALLERDIST} ${PACKAGENAME}
  103. log_info_wait "Start to pack ${NEName}..."
  104. # SVNVERSION=$(svnversion -c |sed 's/^.*://' |sed 's/[A-Z]*$//')
  105. tar -zcvf ${OUTPUTPATH}/${PRODUCT_NAME}_${Version}_${BuildVersion}_${Module}.tar.gz ${PACKAGENAME} --exclude=.svn &> /dev/null
  106. if [ $? -eq 0 ]; then
  107. log_success " [OK]"
  108. else
  109. die " [FAIL]"
  110. fi
  111. rm -rf ${PACKAGENAME} ${PYINSTALLERBUILD} *.spec
  112. exit 0