UNPKG

@deploystack/docker-to-iac

Version:

Translate docker run and docker compose file to Infrastructure as Code

55 lines (54 loc) 1.49 kB
import { ApplicationConfig } from '../types/container-config'; export type FileOutput = { content: any; format: TemplateFormat; isMain?: boolean; }; export type ParserFileConfig = { path: string; templateFormat: TemplateFormat; isMain?: boolean; description?: string; }; export type ParserConfig = { files: ParserFileConfig[]; cpu?: any; memory?: any; diskSizeGB?: number; region?: string; subscriptionName?: string; }; export type ParserInfo = { providerWebsite: string; providerName: string; providerNameAbbreviation: string; languageOfficialDocs: string; languageAbbreviation: string; languageName: string; defaultParserConfig: ParserConfig; }; export declare enum RegistryType { DOCKER_HUB = "DOCKER_HUB", GHCR = "GHCR" } export interface DockerImageInfo { registry_type: RegistryType; registry?: string; repository: string; tag?: string; digest?: string; } export declare enum TemplateFormat { json = "json", yaml = "yaml", text = "text" } export declare function formatResponse(response: string, templateFormat: TemplateFormat): any; export declare abstract class BaseParser { parse(config: ApplicationConfig, templateFormat?: TemplateFormat): any; abstract parseFiles(config: ApplicationConfig): { [path: string]: FileOutput; }; abstract getInfo(): ParserInfo; protected formatFileContent(content: any, format: TemplateFormat): string; }