From 03c0bde3a94eebe31fa18339278150bb76788f55 Mon Sep 17 00:00:00 2001 From: Anmol Sethi Date: Mon, 11 Mar 2019 10:47:41 -0400 Subject: [PATCH] Another fix for the Dockerfile and build (#188) * Dockerfile: fix ENTRYPOINT must be provided in exec form for args from docker run to be passed correctly. See https://docs.docker.com/engine/reference/builder/#cmd * build: fix reuse of vscode repository regression See #167 --- Dockerfile | 3 +-- build/tasks.ts | 10 ++++++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index dbe56137..440cb018 100644 --- a/Dockerfile +++ b/Dockerfile @@ -28,5 +28,4 @@ RUN apt-get install -y locales && \ # We unfortunately cannot use update-locale because docker will not use the env variables # configured in /etc/default/locale so we need to set it manually. ENV LANG=en_US.UTF-8 -ENTRYPOINT code-server -CMD ["."] +ENTRYPOINT ["code-server"] diff --git a/build/tasks.ts b/build/tasks.ts index d7cc6283..4c10b1fb 100644 --- a/build/tasks.ts +++ b/build/tasks.ts @@ -10,7 +10,7 @@ const libPath = path.join(__dirname, "../lib"); const vscodePath = path.join(libPath, "vscode"); const pkgsPath = path.join(__dirname, "../packages"); const defaultExtensionsPath = path.join(libPath, "VSCode-linux-x64/resources/app/extensions"); -const vscodeVersion = "1.32"; +const vscodeVersion = "1.32.0"; const buildServerBinary = register("build:server:binary", async (runner) => { await ensureInstalled(); @@ -220,11 +220,17 @@ const ensureCloned = register("vscode:clone", async (runner) => { } else { fse.mkdirpSync(libPath); runner.cwd = libPath; - const clone = await runner.execute("git", ["clone", "https://github.com/microsoft/vscode", "--branch", `release/${vscodeVersion}`, "--single-branch", "--depth=1"]); + const clone = await runner.execute("git", ["clone", "https://github.com/microsoft/vscode", "--branch", vscodeVersion, "--single-branch", "--depth=1"]); if (clone.exitCode !== 0) { throw new Error(`Failed to clone: ${clone.exitCode}`); } } + + runner.cwd = vscodePath; + const checkout = await runner.execute("git", ["checkout", vscodeVersion]); + if (checkout.exitCode !== 0) { + throw new Error(`Failed to checkout: ${checkout.stderr}`); + } }); const ensureClean = register("vscode:clean", async (runner) => {