build_release 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #!/bin/bash
  2. set -e
  3. TYPE=$1
  4. HARD_RELEASE="2.x"
  5. HARD_RC="2.x-RC"
  6. LIVE_URL="staging.boot.netboot.xyz"
  7. DOCKER_FILE="Dockerfile-build.production"
  8. # Set boot domain
  9. if [[ "${TYPE}" == "dev" ]]; then
  10. BOOT_DOMAIN="s3.amazonaws.com/${BUCKET_DEV}/${TRAVIS_COMMIT}"
  11. BOOT_VERSION="Development"
  12. elif [[ "${TYPE}" == "pr" ]]; then
  13. BOOT_DOMAIN="test.com"
  14. BOOT_VERSION="test"
  15. DOCKER_FILE="Dockerfile-build"
  16. elif [[ "${TYPE}" == "rc" ]]; then
  17. BOOT_VERSION=$(cat version.txt)-RC
  18. BOOT_DOMAIN="${LIVE_URL}/${BOOT_VERSION}"
  19. elif [[ "${TYPE}" == "release" ]]; then
  20. BOOT_VERSION=$(cat version.txt)
  21. BOOT_DOMAIN="${LIVE_URL}/${BOOT_VERSION}"
  22. fi
  23. sed -i \
  24. "/^#boot_version/c\boot_version: \"${BOOT_VERSION}\"" \
  25. user_overrides.yml
  26. sed -i \
  27. "/^#boot_domain/c\boot_domain: ${BOOT_DOMAIN}" \
  28. user_overrides.yml
  29. # Build release
  30. docker build -t localbuild -f ${DOCKER_FILE} .
  31. docker run --rm -it -v $(pwd):/buildout localbuild
  32. # Generate folder outputs
  33. mkdir -p s3out
  34. cp -r buildout/* s3out/
  35. mkdir -p githubout
  36. mv buildout/ipxe/* githubout/
  37. cd buildout
  38. rm -Rf ipxe
  39. tar -czf menus.tar.gz *
  40. mv menus.tar.gz ../githubout
  41. cd ..
  42. # Latest style endpoints for RC and Live
  43. if [[ "${TYPE}" == "release" ]] || [[ "${TYPE}" == "rc" ]]; then
  44. rm -Rf buildout/
  45. if [[ "${TYPE}" == "release" ]]; then
  46. sed -i \
  47. -e "/^boot_version/c\boot_version: \"${HARD_RELEASE}\"" \
  48. -e "/^boot_domain/c\boot_domain: ${LIVE_URL}" \
  49. user_overrides.yml
  50. docker build -t localbuild -f ${DOCKER_FILE} .
  51. docker run --rm -it -v $(pwd):/buildout localbuild
  52. fi
  53. if [[ "${TYPE}" == "rc" ]]; then
  54. sed -i \
  55. -e "/^boot_version/c\boot_version: \"${HARD_RC}\"" \
  56. -e "/^boot_domain/c\boot_domain: ${LIVE_URL}/rc" \
  57. user_overrides.yml
  58. docker build -t localbuild -f ${DOCKER_FILE} .
  59. docker run --rm -it -v $(pwd):/buildout localbuild
  60. fi
  61. mkdir -p s3out-latest
  62. cp -r buildout/* s3out-latest/
  63. fi