Bubble proxy service
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

73 lines
2.1 KiB

  1. #!/bin/bash
  2. if [[ -z "${JOB_NAME}" ]] ; then
  3. echo "No JOB_NAME env var found"
  4. fi
  5. THISDIR=$(cd $(dirname ${0}) && pwd)
  6. case "$(uname -a | awk '{print $1}')" in
  7. Linux*)
  8. if [[ -z "${BUBBLE_DIST_HOME}" ]] ; then
  9. BUBBLE_DIST_HOME=${1:?no BUBBLE_DIST_HOME provided}
  10. MAKE_SYMLINKS=1
  11. SHA_CMD="sha256sum"
  12. fi
  13. ;;
  14. Darwin*)
  15. BUBBLE_DIST_HOME=${THISDIR}/dist
  16. rm -rf ${BUBBLE_DIST_HOME}/*
  17. MAKE_SYMLINKS=0
  18. SHA_CMD="shasum -a 256"
  19. ;;
  20. CYGWIN*)
  21. export PATH=${PATH}:/cygdrive/c/cygwin64/bin
  22. BUBBLE_DIST_HOME=${THISDIR}/dist
  23. rm -rf ${BUBBLE_DIST_HOME}/*
  24. MAKE_SYMLINKS=0
  25. SHA_CMD="sha256sum"
  26. ;;
  27. esac
  28. IS_DEV=0
  29. if [[ -z ${BUILD_NUMBER} ]] ; then
  30. BUILD_NUMBER="dev"
  31. IS_DEV=1
  32. fi
  33. BASE_VERSION="$(cat ${THISDIR}/Cargo.toml | grep -m 1 version | awk -F '"' '{print $2}')"
  34. if [[ -z ${BASE_VERSION} ]] ; then
  35. echo "No version found in Cargo.toml"
  36. exit 1
  37. fi
  38. BUBBLE_VERSION=${BASE_VERSION}.${BUILD_NUMBER}
  39. FLEX_DIST_TOP=${BUBBLE_DIST_HOME}/releases/bubble-flexrouter/${JOB_NAME}
  40. FLEX_BINARY=$(find ${THISDIR}/target/release -type f -name "bubble-flexrouter*" | grep -v "bubble-flexrouter.d" | head -1)
  41. if [[ -z "${FLEX_BINARY}" ]] ; then
  42. echo "No binary found in ${THISDIR}/target/release"
  43. exit 1
  44. fi
  45. FLEX_DIST=${FLEX_DIST_TOP}/${BUBBLE_VERSION}/bubble-flexrouter.zip
  46. FLEX_DIST_DIR="$(dirname ${FLEX_DIST})"
  47. if [[ ! -d "${FLEX_DIST_DIR}" ]] ; then
  48. mkdir -p ${FLEX_DIST_DIR}
  49. fi
  50. BUILD_DIR=${THISDIR}/build/bubble-flexrouter
  51. cd ${THISDIR} && \
  52. mkdir -p ${BUILD_DIR} && \
  53. cp ${FLEX_BINARY} ${BUILD_DIR} && \
  54. cp README-release.md ${BUILD_DIR}/README.md && \
  55. cp flex_init.sh ${BUILD_DIR} && \
  56. cp flex_register.sh ${BUILD_DIR} && \
  57. echo "Building zip: ${FLEX_DIST}" && \
  58. cd build && zip -D -X -r ${FLEX_DIST} bubble-flexrouter
  59. cat ${FLEX_DIST} | ${SHA_CMD} | cut -f1 -d' ' | tr -d '\n' > ${FLEX_DIST}.sha256
  60. if [[ ${MAKE_SYMLINKS} -eq 1 ]] ; then
  61. if [[ ${IS_DEV} -eq 0 ]] ; then
  62. ln -s ${FLEX_DIST} ${FLEX_DIST_DIR}/bubble-flexrouter.zip
  63. cd ${FLEX_DIST_TOP} && rm -f latest && ln -sf ${BUBBLE_VERSION} latest
  64. echo "${BUBBLE_VERSION}" > latest.txt
  65. fi
  66. fi