@@ -34,60 +34,47 @@ bundle_code_server() {
3434
3535 # Adds the commit to package.json
3636 jq --slurp ' .[0] * .[1]' package.json <(
37- cat << EOF
37+ cat << EOF
3838 {
3939 "commit": "$( git rev-parse HEAD) ",
4040 "scripts": {
4141 "postinstall": "./postinstall.sh"
4242 }
4343 }
4444EOF
45- ) > " $RELEASE_PATH /package.json"
45+ ) > " $RELEASE_PATH /package.json"
4646 rsync yarn.lock " $RELEASE_PATH "
4747 rsync ci/build/npm-postinstall.sh " $RELEASE_PATH /postinstall.sh"
4848}
4949
5050bundle_vscode () {
5151 mkdir -p " $VSCODE_OUT_PATH "
52- rsync " $VSCODE_SRC_PATH /package.json" " $VSCODE_OUT_PATH "
5352 rsync " $VSCODE_SRC_PATH /yarn.lock" " $VSCODE_OUT_PATH "
54- rsync " $VSCODE_SRC_PATH /node_modules" " $VSCODE_OUT_PATH "
5553 rsync " $VSCODE_SRC_PATH /out-vscode${MINIFY+-min} /" " $VSCODE_OUT_PATH /out"
54+
5655 rsync " $VSCODE_SRC_PATH /.build/extensions/" " $VSCODE_OUT_PATH /extensions"
56+ rm -Rf " $VSCODE_OUT_PATH /extensions/node_modules"
57+ rsync " $VSCODE_SRC_PATH /extensions/package.json" " $VSCODE_OUT_PATH /extensions"
58+ rsync " $VSCODE_SRC_PATH /extensions/yarn.lock" " $VSCODE_OUT_PATH /extensions"
59+ rsync " $VSCODE_SRC_PATH /extensions/postinstall.js" " $VSCODE_OUT_PATH /extensions"
5760
5861 mkdir -p " $VSCODE_OUT_PATH /resources/linux"
5962 rsync " $VSCODE_SRC_PATH /resources/linux/code.png" " $VSCODE_OUT_PATH /resources/linux/code.png"
6063
6164 # Adds the commit and date to product.json
6265 jq --slurp ' .[0] * .[1]' " $VSCODE_SRC_PATH /product.json" <(
63- cat << EOF
66+ cat << EOF
6467 {
6568 "commit": "$( git rev-parse HEAD) ",
6669 "date": $( jq -n ' now | todate' )
6770 }
6871EOF
69- ) > " $VSCODE_OUT_PATH /product.json"
70-
71- pushd " $VSCODE_OUT_PATH "
72- yarn --production --frozen-lockfile --ignore-scripts
73- popd
74-
75- # We clear any native module builds.
76- local native_modules
77- mapfile -t native_modules < <( find " $VSCODE_OUT_PATH /node_modules" -name " binding.gyp" -exec dirname {} \; )
78- local nm
79- for nm in " ${native_modules[@]} " ; do
80- rm -R " $nm /build"
81- done
82-
83- # We have to rename node_modules to node_modules.bundled to avoid them being ignored by yarn.
84- local node_modules
85- mapfile -t node_modules < <( find " $VSCODE_OUT_PATH " -depth -name " node_modules" )
86- local nm
87- for nm in " ${node_modules[@]} " ; do
88- rm -Rf " $nm .bundled"
89- mv " $nm " " $nm .bundled"
90- done
72+ ) > " $VSCODE_OUT_PATH /product.json"
73+
74+ # We remove the scripts field so that later on we can run
75+ # yarn to fetch node_modules if necessary without build scripts running.
76+ # We cannot use --no-scripts because we still want dependant package scripts to run.
77+ jq ' del(.scripts)' < " $VSCODE_SRC_PATH /package.json" > " $VSCODE_OUT_PATH /package.json"
9178}
9279
9380main " $@ "
0 commit comments