UNPKG

@cto.ai/ops

Version:

💻 CTO.ai Ops - The CLI built for Teams 🚀

80 lines (79 loc) • 3 kB
import Docker from 'dockerode'; import Command from '../base'; import { OpCommand, OpWorkflow, RegistryAuth } from '../types'; export interface PublishInputs { opPath: string; docker: Docker; commandsAndWorkflows: string; version: string; opCommands: OpCommand[]; opWorkflows: OpWorkflow[]; existingVersions: (OpCommand | OpWorkflow)[]; } export default class Publish extends Command { static description: string; static flags: { help: import("@oclif/parser/lib/flags").IBooleanFlag<void>; }; static args: { name: string; description: string; required: boolean; }[]; docker: Docker | undefined; resolvePath: (opPath: string) => Promise<string>; checkDocker: (opPath: string) => Promise<{ opPath: string; docker: Docker; }>; getOpsAndWorkFlows: (inputs: PublishInputs) => Promise<{ opCommands: OpCommand[]; opWorkflows: OpWorkflow[]; version: string; opPath: string; docker: Docker; commandsAndWorkflows: string; existingVersions: (OpCommand | OpWorkflow)[]; }>; determineQuestions: (inputs: PublishInputs) => Promise<{ commandsAndWorkflows: string; opPath: string; docker: Docker; version: string; opCommands: OpCommand[]; opWorkflows: OpWorkflow[]; existingVersions: (OpCommand | OpWorkflow)[]; }>; selectOpsAndWorkFlows: (inputs: PublishInputs) => Promise<{ opCommands: OpCommand[]; opWorkflows: OpWorkflow[]; commandsAndWorkflows: string; opPath: string; docker: Docker; version: string; existingVersions: (OpCommand | OpWorkflow)[]; }>; selectOps: (ops: OpCommand[]) => Promise<OpCommand[]>; selectWorkflows: (workflows: OpWorkflow[]) => Promise<OpWorkflow[]>; findOpsWhereVersionAlreadyExists: (inputs: PublishInputs) => Promise<{ opCommands: (OpCommand | OpWorkflow)[]; opWorkflows: (OpCommand | OpWorkflow)[]; existingVersions: (OpCommand | OpWorkflow)[]; opPath: string; docker: Docker; commandsAndWorkflows: string; version: string; }>; filterExistingOps: (ops: any) => Promise<{ existingVersions: (OpCommand | OpWorkflow)[]; filteredOps: (OpCommand | OpWorkflow)[]; }>; getNewVersion: (inputs: PublishInputs) => Promise<PublishInputs>; getRegistryAuth: (name: string, version: string) => Promise<RegistryAuth>; publishOpsAndWorkflows: (inputs: PublishInputs) => Promise<void>; opsPublishLoop: ({ opCommands, version }: PublishInputs) => Promise<void>; workflowsPublishLoop: ({ opWorkflows, version }: PublishInputs) => Promise<void>; sendAnalytics: (publishType: string, opOrWorkflow: OpCommand | OpWorkflow) => void; _validateDescription(input: string): true | "You need to provide a publish description of your op before continuing"; run(): Promise<void>; }