mirror of
https://github.com/coder/code-server.git
synced 2024-12-05 07:13:06 +08:00
a1af9e2a56
* Move integration types into code-server This will be easier to maintain than to have it as a patch. * Disable connection token Using a flag means we will not need to patch it out. I think this is new from 1.64? * Add product.json to build process This way we do not have to patch it. * Ship with remote agent package.json Instead of the root one. This contains fewer dependencies. * Let Code handle errors This way we will not have to patch Code to make this work and I think it makes sense to let Code handle the request. If we do want to handle errors we can do it cleanly by patching their error handler to throw instead. * Move manifest override into code-server This way we will not have to patch it. * Move to patches - Switch submodule to track upstream - Add quilt to the process - Add patches The node-* ignore was ignoring one of the diffs so I removed it. This was added when we were curling Node as node-v{version}-darwin-x64 for the macOS build but this no longer happens (we use the Node action to install a specific version now so we just use the system-wide Node). * Use pre-packaged Code
35 lines
1021 B
Bash
Executable File
35 lines
1021 B
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
|
|
}
|
|
|
|
main "$@"
|