@ordino.ai/cli
Version:
ordino.ai global command line interface
65 lines (60 loc) • 2.33 kB
text/typescript
import path from "path";
import fs from "fs";
import type { Environment } from "../createStandardBoilerplate";
import { Platformtype } from "../../models/models";
export function updatePackageJsonEngine(
appPath: string,
environment: Environment,
platform: Platformtype
) {
const packageJsonPath = path.join(appPath, "package.json");
if (fs.existsSync(packageJsonPath)) {
try {
const packageData = JSON.parse(fs.readFileSync(packageJsonPath, "utf8"));
if (
packageData.devDependencies &&
packageData.devDependencies["@ordino.ai/ordino-engine"]
) {
let finalEngineVersion: string | undefined = undefined;
if (platform === Platformtype.Playwright) {
if (environment === "production") {
finalEngineVersion = "1.0.0-pw.16";
} else {
finalEngineVersion = "1.0.0-staging-pw.30";
}
} else if (platform === Platformtype.Cypress) {
if (environment === "production") {
finalEngineVersion = "2.2.0-cy.11";
} else {
finalEngineVersion = "2.2.0-staging-cy.13";
}
}
if (finalEngineVersion) {
if (packageData.devDependencies["@ordino.ai/ordino-engine"] !== finalEngineVersion) {
packageData.devDependencies["@ordino.ai/ordino-engine"] = finalEngineVersion;
fs.writeFileSync(
packageJsonPath,
JSON.stringify(packageData, null, 2),
"utf8"
);
console.log(
`package.json @ordino.ai/ordino-engine version updated to ${finalEngineVersion} for platform: ${platform}, environment: ${environment}`
);
} else {
console.log(
`package.json @ordino.ai/ordino-engine version already ${finalEngineVersion} for platform: ${platform}, environment: ${environment}. No update needed.`
);
}
} else {
console.warn(
`finalEngineVersion was not set for platform: ${platform}, environment: ${environment}. Engine version not updated.`
);
}
}
} catch (error) {
console.error("Failed to update package.json engine version:", error);
}
} else {
console.warn("package.json not found, skipping engine update.");
}
}