From a8c33bf93132425a617381e4aa9a6f0e8e0ddf5b Mon Sep 17 00:00:00 2001 From: Greg Magolan Date: Fri, 18 Nov 2022 08:41:53 -0800 Subject: [PATCH] fix(language-service): update packages/language-service/build.sh script to work with vscode-ng-language-service's new Bazel build (#48120) Part of fix for angular/vscode-ng-language-service#1815 PR Close #48120 --- packages/language-service/build.sh | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/packages/language-service/build.sh b/packages/language-service/build.sh index 0854010cd3a68..df0624356e68c 100755 --- a/packages/language-service/build.sh +++ b/packages/language-service/build.sh @@ -13,7 +13,31 @@ if [[ -z "${extension_repo}" ]]; then exit 1 fi +# sedi makes `sed -i` work on both OSX & Linux +# See https://stackoverflow.com/questions/2320564/i-need-my-sed-i-command-for-in-place-editing-to-work-with-both-gnu-sed-and-bsd +_sedi () { + case $(uname) in + Darwin*) sedi=('-i' '') ;; + *) sedi=('-i') ;; + esac + + sed "${sedi[@]}" "$@" +} + yarn bazel build --config=release //packages/language-service:npm_package pushd "${extension_repo}" -yarn add @angular/language-service@file:"${bazel_bin}/packages/language-service/npm_package" +rm -rf .angular_packages/language-service +mkdir -p .angular_packages/language-service +cp -r "${bazel_bin}/packages/language-service/npm_package/" .angular_packages/language-service +chmod -R +w .angular_packages/language-service +cat <> .angular_packages/language-service/BUILD.bazel +load("@aspect_rules_js//npm:defs.bzl", "npm_package") +npm_package( + name = "language-service", + srcs = glob(["**"], exclude = ["BUILD.bazel"]), + visibility = ["//visibility:public"], +) +EOT +_sedi 's#\# PLACE_HOLDER_FOR_packages/language-service/build.sh_IN_angular_REPO#data = ["//.angular_packages/language-service:package.json"], \# FOR TESTING ONLY! DO NOT COMMIT THIS LINE!#' WORKSPACE +yarn add @angular/language-service@file:".angular_packages/language-service" popd