0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-02-02 12:50:43 -05:00

installer: Print name of installed file (denoland/deno_std#492)

Original: 1679ba0b57
This commit is contained in:
Ryan Dahl 2019-06-15 06:51:11 -07:00 committed by GitHub
parent d00a4beec4
commit fccfaeea3c

View file

@ -159,11 +159,11 @@ export async function install(
const installerDir = getInstallerDir();
createDirIfNotExists(installerDir);
const FILE_PATH = path.join(installerDir, moduleName);
const filePath = path.join(installerDir, moduleName);
let fileInfo;
try {
fileInfo = await stat(FILE_PATH);
fileInfo = await stat(filePath);
} catch (e) {
// pass
}
@ -209,9 +209,9 @@ export async function install(
// TODO: add windows Version
const template = `#/bin/sh\n${commands.join(" ")}`;
await writeFile(FILE_PATH, encoder.encode(template));
await writeFile(filePath, encoder.encode(template));
const makeExecutable = run({ args: ["chmod", "+x", FILE_PATH] });
const makeExecutable = run({ args: ["chmod", "+x", filePath] });
const { code } = await makeExecutable.status();
makeExecutable.close();
@ -219,7 +219,9 @@ export async function install(
throw new Error("Failed to make file executable");
}
console.log(`✅ Successfully installed ${moduleName}.`);
console.log(`✅ Successfully installed ${moduleName}`);
console.log(filePath);
// TODO: add Windows version
if (!checkIfExistsInPath(installerDir)) {
console.log("\n Add ~/.deno/bin to PATH");
@ -231,17 +233,17 @@ export async function install(
export async function uninstall(moduleName: string): Promise<void> {
const installerDir = getInstallerDir();
const FILE_PATH = path.join(installerDir, moduleName);
const filePath = path.join(installerDir, moduleName);
try {
await stat(FILE_PATH);
await stat(filePath);
} catch (e) {
if (e instanceof Deno.DenoError && e.kind === Deno.ErrorKind.NotFound) {
throw new Error(` ${moduleName} not found`);
}
}
await remove(FILE_PATH);
await remove(filePath);
console.log(` Uninstalled ${moduleName}`);
}