21c74802e8
* Move Code to a submodule Closes #4901. * Base Code cache on hash and re-enable node_modules cache The current setup appears to only rebuild VS Code if the dependencies change but we need to rebuild it if anything changes. I also re-enabled the commented out node_modules caches. They look like they should work to me with the submodule method. I think the problem occurred because Code itself was being installed in the yarn step.
40 lines
1.2 KiB
Bash
Executable File
40 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# This is due to an upstream issue with RHEL7/CentOS 7 comptability with node-argon2
|
|
# See: https://github.com/cdr/code-server/pull/3422#pullrequestreview-677765057
|
|
export npm_config_build_from_source=true
|
|
|
|
main() {
|
|
cd "$(dirname "${0}")/../.."
|
|
|
|
source ./ci/lib.sh
|
|
|
|
rsync "$RELEASE_PATH/" "$RELEASE_PATH-standalone"
|
|
RELEASE_PATH+=-standalone
|
|
|
|
# We cannot find the path to node from $PATH because yarn shims a script to ensure
|
|
# we use the same version it's using so we instead run a script with yarn that
|
|
# will print the path to node.
|
|
local node_path
|
|
node_path="$(yarn -s node <<< 'console.info(process.execPath)')"
|
|
|
|
mkdir -p "$RELEASE_PATH/bin"
|
|
mkdir -p "$RELEASE_PATH/lib"
|
|
rsync ./ci/build/code-server.sh "$RELEASE_PATH/bin/code-server"
|
|
rsync "$node_path" "$RELEASE_PATH/lib/node"
|
|
|
|
ln -s "./bin/code-server" "$RELEASE_PATH/code-server"
|
|
ln -s "./lib/node" "$RELEASE_PATH/node"
|
|
|
|
cd "$RELEASE_PATH"
|
|
yarn --production --frozen-lockfile
|
|
|
|
# HACK: the version of Typescript vscode 1.57 uses in extensions/
|
|
# leaves a few stray symlinks. Clean them up so nfpm does not fail.
|
|
# Remove this line when its no longer needed.
|
|
rm -fr "$RELEASE_PATH/lib/vscode/extensions/node_modules/.bin"
|
|
}
|
|
|
|
main "$@"
|