From 4a532f6f2591e371bd20095ba02f0831f53bce36 Mon Sep 17 00:00:00 2001 From: HaveAGitGat <43864057+HaveAGitGat@users.noreply.github.com> Date: Tue, 5 Sep 2023 08:32:39 +0100 Subject: [PATCH] Install deps if possible --- .../runClassicFilterPlugin/1.0.0/index.js | 17 ++++++++++++++++- .../runClassicTranscodePlugin/1.0.0/index.js | 19 +++++++++++++++++-- .../runClassicFilterPlugin/1.0.0/index.ts | 11 +++++++++++ .../runClassicTranscodePlugin/1.0.0/index.ts | 11 +++++++++++ .../1.0.0/interfaces/interfaces.ts | 1 + 5 files changed, 56 insertions(+), 3 deletions(-) diff --git a/FlowPlugins/CommunityFlowPlugins/classic/runClassicFilterPlugin/1.0.0/index.js b/FlowPlugins/CommunityFlowPlugins/classic/runClassicFilterPlugin/1.0.0/index.js index 33b6efe..61ea319 100644 --- a/FlowPlugins/CommunityFlowPlugins/classic/runClassicFilterPlugin/1.0.0/index.js +++ b/FlowPlugins/CommunityFlowPlugins/classic/runClassicFilterPlugin/1.0.0/index.js @@ -110,6 +110,21 @@ var plugin = function (args) { return __awaiter(void 0, void 0, void 0, function + 'Operation: Filter. This classic plugin has Operation: ').concat(classicPlugin.details().Operation) + 'Please use the Run Classic Transcode Flow Plugin plugin instead.'); } + if (!Array.isArray(classicPlugin.dependencies)) return [3 /*break*/, 7]; + if (!args.installClassicPluginDeps) return [3 /*break*/, 5]; + args.jobLog("Installing dependencies for ".concat(pluginSourceId)); + return [4 /*yield*/, args.installClassicPluginDeps(classicPlugin.dependencies)]; + case 4: + _a.sent(); + return [3 /*break*/, 6]; + case 5: + args.jobLog("Not installing dependencies for ".concat(pluginSourceId, ", please update Tdarr")); + _a.label = 6; + case 6: return [3 /*break*/, 8]; + case 7: + args.jobLog("No depedencies to install for ".concat(pluginSourceId)); + _a.label = 8; + case 8: container = (0, fileUtils_1.getContainer)(args.inputFileObj._id); cacheFilePath = "".concat((0, fileUtils_1.getPluginWorkDir)(args), "/").concat((0, fileUtils_1.getFileName)(args.inputFileObj._id), ".").concat(container); otherArguments = { @@ -126,7 +141,7 @@ var plugin = function (args) { return __awaiter(void 0, void 0, void 0, function job: args.job, }; return [4 /*yield*/, classicPlugin.plugin(args.inputFileObj, args.librarySettings, args.inputs, otherArguments)]; - case 4: + case 9: result = _a.sent(); args.jobLog(JSON.stringify(result, null, 2)); outputNumber = (result === null || result === void 0 ? void 0 : result.processFile) ? 1 : 2; diff --git a/FlowPlugins/CommunityFlowPlugins/classic/runClassicTranscodePlugin/1.0.0/index.js b/FlowPlugins/CommunityFlowPlugins/classic/runClassicTranscodePlugin/1.0.0/index.js index 66cbb6c..4a78a57 100644 --- a/FlowPlugins/CommunityFlowPlugins/classic/runClassicTranscodePlugin/1.0.0/index.js +++ b/FlowPlugins/CommunityFlowPlugins/classic/runClassicTranscodePlugin/1.0.0/index.js @@ -122,6 +122,21 @@ var plugin = function (args) { return __awaiter(void 0, void 0, void 0, function + 'Operation: Transcode. This classic plugin has Operation: ').concat(classicPlugin.details().Operation) + 'Please use the Run Classic Filter Flow Plugin plugin instead.'); } + if (!Array.isArray(classicPlugin.dependencies)) return [3 /*break*/, 7]; + if (!args.installClassicPluginDeps) return [3 /*break*/, 5]; + args.jobLog("Installing dependencies for ".concat(pluginSourceId)); + return [4 /*yield*/, args.installClassicPluginDeps(classicPlugin.dependencies)]; + case 4: + _d.sent(); + return [3 /*break*/, 6]; + case 5: + args.jobLog("Not installing dependencies for ".concat(pluginSourceId, ", please update Tdarr")); + _d.label = 6; + case 6: return [3 /*break*/, 8]; + case 7: + args.jobLog("No depedencies to install for ".concat(pluginSourceId)); + _d.label = 8; + case 8: container = (0, fileUtils_1.getContainer)(args.inputFileObj._id); cacheFilePath = "".concat((0, fileUtils_1.getPluginWorkDir)(args), "/").concat((0, fileUtils_1.getFileName)(args.inputFileObj._id), ".").concat(container); otherArguments = { @@ -138,7 +153,7 @@ var plugin = function (args) { return __awaiter(void 0, void 0, void 0, function job: args.job, }; return [4 /*yield*/, classicPlugin.plugin(args.inputFileObj, args.librarySettings, args.inputs, otherArguments)]; - case 4: + case 9: result = _d.sent(); args.jobLog(JSON.stringify(result, null, 2)); if (!result) { @@ -252,7 +267,7 @@ var plugin = function (args) { return __awaiter(void 0, void 0, void 0, function updateWorker: args.updateWorker, }); return [4 /*yield*/, cli.runCli()]; - case 5: + case 10: res = _d.sent(); if (res.cliExitCode !== 0) { args.jobLog("Running ".concat(cliPath, " failed")); diff --git a/FlowPluginsTs/CommunityFlowPlugins/classic/runClassicFilterPlugin/1.0.0/index.ts b/FlowPluginsTs/CommunityFlowPlugins/classic/runClassicFilterPlugin/1.0.0/index.ts index c1e90dc..447d9cf 100644 --- a/FlowPluginsTs/CommunityFlowPlugins/classic/runClassicFilterPlugin/1.0.0/index.ts +++ b/FlowPluginsTs/CommunityFlowPlugins/classic/runClassicFilterPlugin/1.0.0/index.ts @@ -81,6 +81,17 @@ const plugin = async (args: IpluginInputArgs): Promise => { ); } + if (Array.isArray(classicPlugin.dependencies)) { + if (args.installClassicPluginDeps) { + args.jobLog(`Installing dependencies for ${pluginSourceId}`); + await args.installClassicPluginDeps(classicPlugin.dependencies); + } else { + args.jobLog(`Not installing dependencies for ${pluginSourceId}, please update Tdarr`); + } + } else { + args.jobLog(`No depedencies to install for ${pluginSourceId}`); + } + const container = getContainer(args.inputFileObj._id); const cacheFilePath = `${getPluginWorkDir(args)}/${getFileName(args.inputFileObj._id)}.${container}`; diff --git a/FlowPluginsTs/CommunityFlowPlugins/classic/runClassicTranscodePlugin/1.0.0/index.ts b/FlowPluginsTs/CommunityFlowPlugins/classic/runClassicTranscodePlugin/1.0.0/index.ts index 91dcb07..bc1336b 100644 --- a/FlowPluginsTs/CommunityFlowPlugins/classic/runClassicTranscodePlugin/1.0.0/index.ts +++ b/FlowPluginsTs/CommunityFlowPlugins/classic/runClassicTranscodePlugin/1.0.0/index.ts @@ -84,6 +84,17 @@ const plugin = async (args: IpluginInputArgs): Promise => { ); } + if (Array.isArray(classicPlugin.dependencies)) { + if (args.installClassicPluginDeps) { + args.jobLog(`Installing dependencies for ${pluginSourceId}`); + await args.installClassicPluginDeps(classicPlugin.dependencies); + } else { + args.jobLog(`Not installing dependencies for ${pluginSourceId}, please update Tdarr`); + } + } else { + args.jobLog(`No depedencies to install for ${pluginSourceId}`); + } + const container = getContainer(args.inputFileObj._id); let cacheFilePath = `${getPluginWorkDir(args)}/${getFileName(args.inputFileObj._id)}.${container}`; diff --git a/FlowPluginsTs/FlowHelpers/1.0.0/interfaces/interfaces.ts b/FlowPluginsTs/FlowHelpers/1.0.0/interfaces/interfaces.ts index 6af537d..8173399 100644 --- a/FlowPluginsTs/FlowHelpers/1.0.0/interfaces/interfaces.ts +++ b/FlowPluginsTs/FlowHelpers/1.0.0/interfaces/interfaces.ts @@ -134,6 +134,7 @@ export interface IpluginInputArgs { // eslint-disable-next-line @typescript-eslint/no-explicit-any axios: any, }, + installClassicPluginDeps: (deps: string[]) => void, } export interface IflowTemplate {