mirror of
https://github.com/coder/code-server.git
synced 2025-07-29 04:52:53 +08:00

* 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.
52 lines
1.7 KiB
TypeScript
52 lines
1.7 KiB
TypeScript
import { logger } from "@coder/logger"
|
|
import type { JSONSchemaForNPMPackageJsonFiles } from "@schemastore/package"
|
|
import * as os from "os"
|
|
import * as path from "path"
|
|
|
|
export const WORKBENCH_WEB_CONFIG_ID = "vscode-workbench-web-configuration"
|
|
|
|
export function getPackageJson(relativePath: string): JSONSchemaForNPMPackageJsonFiles {
|
|
let pkg = {}
|
|
try {
|
|
pkg = require(relativePath)
|
|
} catch (error: any) {
|
|
logger.warn(error.message)
|
|
}
|
|
|
|
return pkg
|
|
}
|
|
|
|
export const rootPath = path.resolve(__dirname, "../..")
|
|
export const vsRootPath = path.join(rootPath, "lib/vscode")
|
|
const PACKAGE_JSON = "package.json"
|
|
const pkg = getPackageJson(`${rootPath}/${PACKAGE_JSON}`)
|
|
const codePkg = getPackageJson(`${vsRootPath}/${PACKAGE_JSON}`) || { version: "0.0.0" }
|
|
export const pkgName = pkg.name || "code-server"
|
|
export const version = pkg.version || "development"
|
|
export const commit = pkg.commit || "development"
|
|
export const codeVersion = codePkg.version || "development"
|
|
export const tmpdir = path.join(os.tmpdir(), "code-server")
|
|
export const isDevMode = commit === "development"
|
|
export const httpProxyUri =
|
|
process.env.HTTPS_PROXY || process.env.https_proxy || process.env.HTTP_PROXY || process.env.http_proxy
|
|
|
|
/**
|
|
* getVersionString returns a human-readable version string suitable
|
|
* for outputting to the console.
|
|
*/
|
|
export function getVersionString(): string {
|
|
return [version, commit, "with Code", codeVersion].join(" ")
|
|
}
|
|
|
|
/**
|
|
* getVersionJsonString returns a machine-readable version string
|
|
* suitable for outputting to the console.
|
|
*/
|
|
export function getVersionJsonString(): string {
|
|
return JSON.stringify({
|
|
codeServer: version,
|
|
commit,
|
|
vscode: codeVersion,
|
|
})
|
|
}
|