installLabkey.sh 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. #!/bin/bash
  2. #binaries available at labkey-public/Resources
  3. #and
  4. #https://www.labkey.org/Documentation/list-grid.view?listId=634&query.ignoreFilter=1
  5. #recent ones, here
  6. #https://www.labkey.org/Documentation/wiki-page.view?name=prevReleases
  7. . $(dirname $0)/env.sh
  8. LABKEY=LabKey22.3.2-3-community
  9. if [ $# -gt 0 ] ;
  10. then
  11. case $1 in
  12. 18.1)
  13. LABKEY=LabKey18.1-57017.17-professional-bin;;
  14. 18|18.3)
  15. LABKEY=LabKey18.3.3-62784.7-community-bin;;
  16. 19|19.3)
  17. LABKEY=LabKey19.3.10-65330.20-community-bin;;
  18. 20|20.11)
  19. LABKEY=LabKey20.11.8-10-community;;
  20. 21|21.11)
  21. LABKEY=LabKey21.11.11-14-community;;
  22. 22|22.3)
  23. LABKEY=LabKey22.3.2-3-community;;
  24. 23|23.11)
  25. LABKEY=LabKey23.11.11-11-13-community;;
  26. *)
  27. echo "Failed to find appropriate version for $1"
  28. exit 1;
  29. esac;
  30. fi;
  31. TARGET=${LABKEY_DIR}
  32. if [ $# -gt 1 ] ;
  33. then
  34. TARGET=$2;
  35. fi;
  36. echo "Using $LABKEY; setting up in $TARGET";
  37. #full path to source
  38. SFW_SRC=$HOME/packages/$LABKEY.tar.gz
  39. #this is temp only
  40. TMP_DIR=$HOME/tmp
  41. if [ ! -d ${TMP_DIR} ] ;
  42. then
  43. mkdir ${TMP_DIR};
  44. fi;
  45. #target LabkeyDir
  46. #is there anything relevant in $TARGET?
  47. if [ ! -d $TARGET ] ;
  48. then
  49. mkdir $TARGET;
  50. fi;
  51. #unpack to ${TMP_DIR}/$LABKEY
  52. TMP_LABKEY=${TMP_DIR}/$LABKEY;
  53. #make sure we are starting from a clean slate
  54. if [ -d ${TMP_LABKEY} ] ; then
  55. rm -rf ${TMP_LABKEY};
  56. fi;
  57. #untar in ${TMP_DIR}
  58. cd ${TMP_DIR} && tar xvzf ${SFW_SRC};
  59. echo "Using distribution in ${TMP_LABKEY}";
  60. #copy from $TMP_LABKEY to labkey space in docker
  61. LABKEY_SRC_DIRS=("labkeywebapp" "modules" "pipeline-lib")
  62. for d in ${LABKEY_SRC_DIRS[@]} ;
  63. do
  64. mv ${TMP_LABKEY}/$d $TARGET/$d;
  65. done;
  66. #check if required dirs are missing and create them
  67. LABKEY_DIRS=("files" "externalModules")
  68. for d in ${LABKEY_DIRS[@]} ;
  69. do
  70. if [ ! -d $TARGET/$d ] ; then
  71. mkdir $TARGET/$d;
  72. fi;
  73. done;
  74. #tomcat-lib goes to tomcat user space in docker
  75. mv ${TMP_LABKEY}/tomcat-lib ${TOMCAT_DIR}/lib
  76. echo "Cleanup of tem directory";
  77. rm -rf ${TMP_LABKEY}
  78. echo "Done"
  79. echo "Change COMPOSE to appropriate yaml in bin/env.sh!"