build.sh 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. #!/bin/bash
  2. ###############################################################################
  3. # 构建 tnb 应用
  4. ###############################################################################
  5. set -e
  6. proj_dir=`pwd`
  7. env='dev'
  8. ###############################################################################
  9. # 构建依赖
  10. ###############################################################################
  11. build_dependencies() {
  12. cd ${proj_dir}
  13. git clone --depth=1 https://git.reghao.cn/reghao/jutil
  14. cd jutil
  15. mvn clean install -Dmaven.test.skip
  16. }
  17. install_dependencies() {
  18. cd ${proj_dir}
  19. mvn clean install -Dmaven.test.skip -am -pl oss/oss-api/
  20. mvn clean install -Dmaven.test.skip -am -pl oss/oss-sdk
  21. mvn clean install -Dmaven.test.skip -am -pl common
  22. mvn clean install -Dmaven.test.skip -am -pl common-auth
  23. mvn clean install -Dmaven.test.skip -am -pl account/account-api/
  24. mvn clean install -Dmaven.test.skip -am -pl user/user-api/
  25. mvn clean install -Dmaven.test.skip -am -pl message/message-api/
  26. mvn clean install -Dmaven.test.skip -am -pl content/content-api/
  27. mvn clean install -Dmaven.test.skip -am -pl file/file-api/
  28. mvn clean install -Dmaven.test.skip -am -pl search/search-api/
  29. mvn clean install -Dmaven.test.skip -am -pl data/data-api/
  30. }
  31. deploy_dependencies() {
  32. cd ${proj_dir}
  33. mvn clean deploy -Dmaven.test.skip -am -pl oss/oss-api/
  34. mvn clean deploy -Dmaven.test.skip -am -pl oss/oss-sdk
  35. mvn clean deploy -Dmaven.test.skip -am -pl common
  36. mvn clean deploy -Dmaven.test.skip -am -pl common-auth
  37. mvn clean deploy -Dmaven.test.skip -am -pl account/account-api/
  38. mvn clean deploy -Dmaven.test.skip -am -pl user/user-api/
  39. mvn clean deploy -Dmaven.test.skip -am -pl message/message-api/
  40. mvn clean deploy -Dmaven.test.skip -am -pl content/content-api/
  41. mvn clean deploy -Dmaven.test.skip -am -pl file/file-api/
  42. mvn clean deploy -Dmaven.test.skip -am -pl search/search-api/
  43. mvn clean deploy -Dmaven.test.skip -am -pl data/data-api/
  44. }
  45. ###############################################################################
  46. # 构建 tnb 应用 jar 包
  47. ###############################################################################
  48. build_jar() {
  49. cd ${proj_dir}
  50. mvn clean package -Dmaven.test.skip -P${env}
  51. # mvn clean package -Dmaven.test.skip -am -pl oss/oss-store -P${env}
  52. }
  53. ###############################################################################
  54. # 构建 tnb 应用镜像
  55. ###############################################################################
  56. build_image() {
  57. commit_id=`git rev-parse HEAD | cut -c 1-8`
  58. docker_prefix='tnb'
  59. cd ${proj_dir}/eureka/eureka-server
  60. docker build -t ${docker_prefix}/eureka:${commit_id} .
  61. cd ${proj_dir}/gateway/
  62. docker build -t ${docker_prefix}/gateway:${commit_id} .
  63. cd ${proj_dir}/account/account-service/
  64. docker build -t ${docker_prefix}/account:${commit_id} .
  65. cd ${proj_dir}/message/message-service/
  66. docker build -t ${docker_prefix}/message:${commit_id} .
  67. cd ${proj_dir}/file/file-service
  68. docker build -t ${docker_prefix}/file:${commit_id} .
  69. cd ${proj_dir}/user/user-service/
  70. docker build -t ${docker_prefix}/user:${commit_id} .
  71. cd ${proj_dir}/content/content-service/
  72. docker build -t ${docker_prefix}/content:${commit_id} .
  73. cd ${proj_dir}/search/search-service/
  74. docker build -t ${docker_prefix}/search:${commit_id} .
  75. }
  76. echo "构建第三方依赖..."
  77. #build_dependencies
  78. echo "安装 tnb 依赖到本地仓库..."
  79. #install_dependencies
  80. echo "部署 tnb 依赖到远程仓库..."
  81. #deploy_dependencies
  82. echo "构建 tnb jar 应用..."
  83. #build_jar
  84. echo "构建 tnb docker 应用..."
  85. #build_image