#!/usr/bin/env node // Cross-platform test script to demonstrate artifact naming for different versions const fs = require("fs"); const path = require("path"); console.log("=== Artifact Naming Test (Cross-Platform) ==="); console.log(""); // Get current version const packageJsonPath = path.join(__dirname, "..", "package.json"); const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, "utf8")); const currentVersion = packageJson.version; console.log(`Current version: ${currentVersion}`); // Function to get artifact suffix function getArtifactSuffix(version) { if (version.includes("alpha")) { return `alpha-${version}-`; } else if (version.includes("beta")) { return `beta-${version}-`; } else { return ""; } } // Test scenarios const testVersions = [ "1.0.5", // Release version "1.0.5-alpha.2", // Alpha version "1.0.5-beta.1", // Beta version "2.0.0-alpha.1", // Another alpha "1.5.0-beta.3", // Another beta ]; console.log("Test scenarios:"); console.log("=================="); testVersions.forEach((version) => { const suffix = getArtifactSuffix(version); // Different artifact names for different platforms const windowsArtifact = `imex-partner-${suffix}x64.exe`; const macArtifact = `imex-partner-${suffix}x64.dmg`; const linuxArtifact = `imex-partner-${suffix}x64.AppImage`; console.log(`Version: ${version}`); console.log(` Suffix: '${suffix}'`); console.log(` Windows: ${windowsArtifact}`); console.log(` Mac: ${macArtifact}`); console.log(` Linux: ${linuxArtifact}`); console.log(""); }); console.log("Current configuration will produce:"); const currentSuffix = getArtifactSuffix(currentVersion); console.log(` Windows: imex-partner-${currentSuffix}x64.exe`); console.log(` Mac: imex-partner-${currentSuffix}x64.dmg`); console.log(` Linux: imex-partner-${currentSuffix}x64.AppImage`); console.log(""); console.log(`Platform detected: ${process.platform}`); console.log(`Architecture: ${process.arch}`);