package_linux_reh.sh 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #!/usr/bin/env bash
  2. # shellcheck disable=SC1091
  3. set -ex
  4. if [[ "${CI_BUILD}" == "no" ]]; then
  5. exit 1
  6. fi
  7. tar -xzf ./vscode.tar.gz
  8. cd vscode || { echo "'vscode' dir not found"; exit 1; }
  9. export VSCODE_SYSROOT_PREFIX='-glibc-2.17'
  10. VSCODE_HOST_MOUNT="$( pwd )"
  11. export VSCODE_HOST_MOUNT
  12. if [[ "${VSCODE_ARCH}" == "x64" || "${VSCODE_ARCH}" == "arm64" ]]; then
  13. VSCODE_REMOTE_DEPENDENCIES_CONTAINER_NAME="vscodium/vscodium-linux-build-agent:centos7-devtoolset8-${VSCODE_ARCH}"
  14. elif [[ "${VSCODE_ARCH}" == "armhf" ]]; then
  15. VSCODE_REMOTE_DEPENDENCIES_CONTAINER_NAME="vscodium/vscodium-linux-build-agent:bionic-devtoolset-arm32v7"
  16. elif [[ "${VSCODE_ARCH}" == "ppc64le" ]]; then
  17. VSCODE_REMOTE_DEPENDENCIES_CONTAINER_NAME="vscodium/vscodium-linux-build-agent:bionic-devtoolset-ppc64le"
  18. fi
  19. export VSCODE_REMOTE_DEPENDENCIES_CONTAINER_NAME
  20. for i in {1..5}; do # try 5 times
  21. yarn --cwd build --frozen-lockfile --check-files && break
  22. if [[ $i == 3 ]]; then
  23. echo "Yarn failed too many times" >&2
  24. exit 1
  25. fi
  26. echo "Yarn failed $i, trying again..."
  27. done
  28. ./build/azure-pipelines/linux/install.sh
  29. EXPECTED_GLIBC_VERSION="2.17" EXPECTED_GLIBCXX_VERSION="3.4.22" ./build/azure-pipelines/linux/verify-glibc-requirements.sh
  30. node build/azure-pipelines/distro/mixin-npm
  31. export VSCODE_NODE_GLIBC='-glibc-2.17'
  32. yarn gulp minify-vscode-reh
  33. yarn gulp "vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}-min-ci"
  34. cd ..
  35. echo "Building and moving REH"
  36. cd "vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}"
  37. tar czf "../assets/${APP_NAME_LC}-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" .
  38. cd ..