installLabkey.sh 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  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. echo "Using $LABKEY";
  32. #full path to source
  33. SFW_SRC=$HOME/packages/$LABKEY.tar.gz
  34. #this is temp only
  35. TMP_DIR=$HOME/tmp
  36. if [ ! -d ${TMP_DIR} ] ;
  37. then
  38. mkdir ${TMP_DIR};
  39. fi;
  40. #is there anything relevant in $LABKEY_DIR?
  41. if [ ! -d $LABKEY_DIR ] ;
  42. then
  43. mkdir $LABKEY_DIR;
  44. fi;
  45. #unpack to ${TMP_DIR}/$LABKEY
  46. TMP_LABKEY=${TMP_DIR}/$LABKEY;
  47. #make sure we are starting from a clean slate
  48. if [ -d ${TMP_LABKEY} ] ; then
  49. rm -rf ${TMP_LABKEY};
  50. fi;
  51. #untar in ${TMP_DIR}
  52. cd ${TMP_DIR} && tar xvzf ${SFW_SRC};
  53. echo "Using distribution in ${TMP_LABKEY}";
  54. #copy from $TMP_LABKEY to labkey space in docker
  55. LABKEY_SRC_DIRS=("labkeywebapp" "modules" "pipeline-lib")
  56. for d in ${LABKEY_SRC_DIRS[@]} ;
  57. do
  58. mv ${TMP_LABKEY}/$d ${LABKEY_DIR}/$d;
  59. done;
  60. #check if required dirs are missing and create them
  61. LABKEY_DIRS=("files" "externalModules")
  62. for d in ${LABKEY_DIRS[@]} ;
  63. do
  64. if [ ! -d ${LABKEY_DIR}/$d ] ; then
  65. mkdir ${LABKEY_DIR}/$d;
  66. fi;
  67. done;
  68. #tomcat-lib goes to tomcat user space in docker
  69. mv ${TMP_LABKEY}/tomcat-lib ${TOMCAT_DIR}/lib
  70. echo "Cleanup of tem directory";
  71. rm -rf ${TMP_LABKEY}
  72. echo "Done"
  73. echo "Change COMPOSE to appropriate yaml in bin/env.sh!"