docker_casserver_build.sh 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. #!/bin/bash
  2. PROPERTIES="build.properties"
  3. module_server="CAS_SERVER"
  4. DEPENDENCY="dependency"
  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. CAS_CODE_DIR="/home/sviauto/.jenkins/workspace/Docker_CAS_server"
  35. TAGS_DIR="${CAS_CODE_DIR}/cas/tags_dir"
  36. bulid(){
  37. BULID_DIR="${CAS_CODE_DIR}/cas/bulid_dir"
  38. if [ -d ${BULID_DIR} ]; then
  39. echo "${BULID_DIR} exits."
  40. rm -rf ${BULID_DIR}
  41. mkdir -p ${BULID_DIR}
  42. else
  43. echo "${BULID_DIR} not exits."
  44. mkdir -p ${BULID_DIR}
  45. fi
  46. cd ${BULID_DIR}
  47. if [ -f "${BULID_DIR}/dist/CAS" ]; then
  48. echo "CAS exe exits."
  49. rm -rf CAS
  50. fi
  51. echo "${CAS_CODE_DIR}/src/CAS.py"
  52. pyinstaller -F "${CAS_CODE_DIR}/src/CAS.py"
  53. if [ $? -ne 0 ]; then
  54. die "[bulid FAIL]"
  55. else
  56. echo " [bulid OK]"
  57. fi
  58. }
  59. cp_exe() {
  60. if [ -d ${TAGS_DIR} ]; then
  61. echo "${TAGS_DIR} exits."
  62. rm -rf ${TAGS_DIR}
  63. mkdir -p ${TAGS_DIR}
  64. else
  65. echo "${TAGS_DIR} not exits."
  66. mkdir -p ${TAGS_DIR}
  67. fi
  68. cd ${TAGS_DIR}
  69. mkdir "software"
  70. mkdir "sql"
  71. if [ -f "${BULID_DIR}/dist/CAS" ]; then
  72. cp "${BULID_DIR}/dist/CAS" "${TAGS_DIR}/software/"
  73. else
  74. echo "CAS exe not exits."
  75. exit 0
  76. fi
  77. if [ $? -ne 0 ]; then
  78. die "[cp exe FAIL]"
  79. else
  80. log_success "[cp exe OK]"
  81. fi
  82. }
  83. cp_utils(){
  84. cp -r ${CAS_CODE_DIR}/src/utils ${TAGS_DIR}/software/
  85. if [ ! -d "${TAGS_DIR}/software/utils" ];then
  86. die "cp casclient FAIL"
  87. exit 0
  88. else
  89. log_success "cp utils success"
  90. cd ${TAGS_DIR}/software/utils/casclient
  91. rm -rf *.py
  92. cd ../logsuite
  93. rm -rf *.py
  94. fi
  95. cp ${CAS_CODE_DIR}/src/docker_conf.ini ${TAGS_DIR}/software/conf.ini
  96. cp -r ${CAS_CODE_DIR}/src/lib ${TAGS_DIR}/software/
  97. cp -rp ${CAS_CODE_DIR}/docker/* ${TAGS_DIR}/
  98. cp ${CAS_CODE_DIR}/etc/docker_setup.sql ${TAGS_DIR}/sql/setup.sql
  99. cp ${CAS_CODE_DIR}/src/utils/casclient/docker_casclient.ini ${TAGS_DIR}/software/utils/casclient/casclient.ini
  100. cp ${CAS_CODE_DIR}/src/utils/logsuite/docker_logdb.conf ${TAGS_DIR}/software/utils/logsuite/logdb.conf
  101. }
  102. NEName="CAS_server"
  103. Version=$(grep 'ProductVersion=' ${CAS_CODE_DIR}/build/build.properies | cut -d'=' -f2)
  104. Module=$(grep 'Module=' ${CAS_CODE_DIR}/build/build.properies | cut -d'=' -f2)
  105. Provider="Sowell 视维"
  106. BuildTime=$(date +"%Y-%m-%d %H:%M:%S")
  107. BuildVersion=$(date +"%Y%m%d")
  108. write_version(){
  109. echo "NEName=${NEName}" > ${TAGS_DIR}/version
  110. echo "Version=${Version}"
  111. echo "Version=${Version}" >> ${TAGS_DIR}/version
  112. echo "Provider=${Provider}" >> ${TAGS_DIR}/version
  113. echo "BuildTime=${BuildTime}" >> ${TAGS_DIR}/version
  114. }
  115. tags_dir(){
  116. cd ${CAS_CODE_DIR}/cas
  117. mv tags_dir ${module_server}_${Version}_${BuildVersion}_${Module}
  118. TAG=${module_server}_${Version}_${BuildVersion}_${Module}
  119. tar -zcvf ${module_server}_${Version}_${BuildVersion}_${Module}.tar.gz ${TAG} --exclude=.svn
  120. if [ $? -eq 0 ]; then
  121. log_success " [OK]"
  122. else
  123. die " [FAIL]"
  124. fi
  125. rm -rf ${TAG}
  126. }
  127. #安装依赖�?
  128. #编译
  129. bulid
  130. #cp可执行程�?
  131. cp_exe
  132. #cp工具和sql、以及命�?
  133. cp_utils
  134. #写版�?
  135. write_version
  136. #打包
  137. tags_dir
  138. exit 0