UNPKG

@zombienet/orchestrator

Version:

ZombieNet aim to be a testing framework for substrate based blockchains, providing a simple cli tool that allow users to spawn and test ephemeral Substrate based networks

67 lines (66 loc) 3.7 kB
import { fileMap } from "../../types"; import { Client, RunCommandOptions, RunCommandResponse } from "../client"; export interface ReplaceMapping { [propertyName: string]: string; } export declare function initClient(configPath: string, namespace: string, tmpDir: string): KubeClient; export declare class KubeClient extends Client { namespace: string; chainId?: string; configPath: string; debug: boolean; timeout: number; command: string; tmpDir: string; podMonitorAvailable: boolean; localMagicFilepath: string; remoteDir: string; dataDir: string; inCI: boolean; fileServerIP?: string; constructor(configPath: string, namespace: string, tmpDir: string); validateAccess(): Promise<boolean>; createNamespace(): Promise<void>; spawnFromDef(podDef: any, filesToCopy?: fileMap[], keystore?: string, chainSpecId?: string, dbSnapshot?: string, longRunning?: boolean): Promise<void>; putLocalMagicFile(name: string, container?: string): Promise<void>; createResource(resourseDef: any, scoped?: boolean): Promise<void>; waitPodReady(pod: string): Promise<void>; waitContainerInState(pod: string, container: string, state: string): Promise<void>; waitLog(pod: string, container: string, log: string): Promise<void>; waitTransferContainerReady(pod: string): Promise<void>; createStaticResource(filename: string, scopeNamespace?: string, replacements?: { [properyName: string]: string; }): Promise<void>; createPodMonitor(filename: string, chain: string): Promise<void>; updateResource(filename: string, scopeNamespace?: string, replacements?: ReplaceMapping): Promise<void>; copyFileToPod(identifier: string, localFilePath: string, podFilePath: string, container?: string | undefined, unique?: boolean): Promise<void>; copyFileFromPod(identifier: string, podFilePath: string, localFilePath: string, container?: string | undefined): Promise<void>; runningOnMinikube(): Promise<boolean>; destroyNamespace(): Promise<void>; getNodeIP(identifier: string): Promise<string>; getNodeInfo(identifier: string, port?: number): Promise<[string, number]>; staticSetup(settings: any): Promise<void>; checkFileServer(): Promise<boolean>; spawnBackchannel(): Promise<void>; setupCleaner(): Promise<NodeJS.Timer>; cronJobCleanerSetup(): Promise<void>; upsertCronJob(minutes?: number): Promise<void>; isNamespaceActive(): Promise<boolean>; startPortForwarding(port: number, identifier: string, namespace?: string, localPort?: number): Promise<number>; getNodeLogs(podName: string, since?: number | undefined, withTimestamp?: boolean): Promise<string>; gzippedLogFiles(podName: string): Promise<string[]>; getNodeLogsFromKube(podName: string, since?: number | undefined, withTimestamp?: boolean): Promise<string>; readgzippedLogFile(podName: string, file: string): Promise<string>; getPodInfo(podName: string): Promise<string[]>; dumpLogs(path: string, podName: string): Promise<void>; runCommand(args: string[], opts?: RunCommandOptions): Promise<RunCommandResponse>; runScript(identifier: string, scriptPath: string, args?: string[]): Promise<RunCommandResponse>; isPodMonitorAvailable(): Promise<boolean>; getPauseArgs(name: string): string[]; getResumeArgs(name: string): string[]; restartNode(name: string, timeout: number | null): Promise<boolean>; spawnIntrospector(wsUri: string): Promise<void>; uploadToFileserver(localFilePath: string, fileName: string, fileHash: string): Promise<void>; getLogsCommand(name: string): string; injectChaos(chaosSpecs: any[]): Promise<void>; }