UNPKG

trm-core

Version:

TRM (Transport Request Manager) Core

107 lines (106 loc) 2.99 kB
import { R3trans, R3transOptions } from "node-r3trans"; import { Registry } from "../../registry"; import { Transport } from "../../transport"; import { TransportBinary, TrmArtifact, TrmPackage } from "../../trmPackage"; import { Manifest, TrmManifest, TrmManifestDependency } from "../../manifest"; import { IActionContext } from ".."; import { DEVCLASS, E071, NAMESPACE, TADIR, TDEVC, TDEVCT } from "../../client"; import { PackageHierarchy } from "../../commons"; export type InstallPackageReplacements = { originalDevclass: string; installDevclass: string; }; export type InstallActionInputContextData = { systemPackages?: TrmPackage[]; r3transOptions?: R3transOptions; noR3transInfo?: boolean; noInquirer?: boolean; }; export type InstallActionInputInstallData = { import?: { timeout?: number; noLang?: boolean; noCust?: boolean; }; checks?: { safe?: boolean; noSapEntries?: boolean; noObjectTypes?: boolean; noDependencies?: boolean; }; installDevclass?: { keepOriginal?: boolean; transportLayer?: string; replacements?: InstallPackageReplacements[]; }; installTransport?: { create?: boolean; targetSystem?: string; }; }; export interface InstallActionInput { contextData?: InstallActionInputContextData; packageData: { name: string; version?: string; integrity?: string; registry: Registry; overwrite?: boolean; }; installData?: InstallActionInputInstallData; } type TransportRuntime = { binaries?: TransportBinary; instance?: Transport; }; type WorkflowRuntime = { registry: Registry; update: boolean; rollback: boolean; remotePackageData: { version: string; trmPackage: TrmPackage; artifact: TrmArtifact; manifest: Manifest; trmManifest: TrmManifest; integrity: string; }; packageTransports: { devc: TransportRuntime; tadir: TransportRuntime; lang: TransportRuntime; cust: TransportRuntime; }; packageTransportsData: { tdevc: TDEVC[]; tdevct: TDEVCT[]; tadir: TADIR[]; e071: E071[]; }; dependenciesToInstall: TrmManifestDependency[]; r3trans: R3trans; originalData: { hierarchy: PackageHierarchy; }; installData: { namespace: string; entries: E071[]; transport?: Transport; }; generatedData: { devclass: DEVCLASS[]; namespace: NAMESPACE; }; }; export type InstallActionOutput = { trmPackage: TrmPackage; registry: Registry; installTransport?: Transport; }; export interface InstallWorkflowContext extends IActionContext { rawInput: InstallActionInput; runtime?: WorkflowRuntime; output?: InstallActionOutput; } export declare function install(inputData: InstallActionInput): Promise<InstallActionOutput>; export {};