From 15879e92121ca6b2fb536b13f1370409fe98dbf4 Mon Sep 17 00:00:00 2001 From: Amin Yahyaabadi Date: Tue, 14 Sep 2021 03:06:51 -0500 Subject: [PATCH] fix: fix the platform name for ninja --- src/ninja/ninja.ts | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/ninja/ninja.ts b/src/ninja/ninja.ts index 118aa699..8b4c73c3 100644 --- a/src/ninja/ninja.ts +++ b/src/ninja/ninja.ts @@ -5,11 +5,25 @@ import { existsSync } from "fs" import * as hasha from "hasha" import { tmpdir } from "os" +/** Get the platform name Ninja uses in their download links */ +function getNinjaPlatform(platform: NodeJS.Platform) { + switch (platform) { + case "win32": + return "win" + case "darwin": + return "mac" + case "linux": + return "linux" + default: + throw new Error(`Unsupported platform '${platform}'`) + } +} + export async function setupNinja(version: string): Promise { - const platform = process.platform + const platform = getNinjaPlatform(process.platform) // Build artifact name - const ninjaBin = platform === "win32" ? "ninja.exe" : "ninja" + const ninjaBin = platform === "win" ? "ninja.exe" : "ninja" // Restore from cache (if found). const ninjaDir = find("ninja", version)