@starship-ci/client
Version:
Starship CI Client
104 lines (103 loc) • 2.81 kB
TypeScript
import { StarshipConfig } from './config';
import { Ports } from './config';
import { Dependency } from './deps';
export interface StarshipContext {
name?: string;
config?: string;
repo?: string;
repoUrl?: string;
chart?: string;
version?: string;
namespace?: string;
verbose?: boolean;
curdir?: string;
timeout?: string;
restartThreshold?: number;
}
export declare const defaultStarshipContext: Partial<StarshipContext>;
export interface PodPorts {
registry?: Ports;
explorer?: Ports;
chains?: {
defaultPorts?: Ports;
[chainName: string]: Ports;
};
relayers?: {
defaultPorts?: Ports;
[relayerName: string]: Ports;
};
}
export interface StarshipClientI {
ctx: StarshipContext;
version: string;
dependencies: Dependency[];
depsChecked: boolean;
config: StarshipConfig;
podPorts: PodPorts;
}
export interface PodStatus {
phase: string;
ready: boolean;
restartCount: number;
reason?: string;
}
export interface ExecOptions {
log?: boolean;
silent?: boolean;
ignoreError?: boolean;
}
export declare const formatChainID: (input: string) => string;
export declare class StarshipClient implements StarshipClientI {
ctx: StarshipContext;
version: string;
dependencies: Dependency[];
depsChecked: boolean;
config: StarshipConfig;
podPorts: PodPorts;
private podStatuses;
constructor(ctx: StarshipContext);
private exec;
private log;
private exit;
private checkDependencies;
setup(): void;
private loadYaml;
private saveYaml;
loadConfig(): void;
saveConfig(): void;
savePodPorts(filename: string): void;
loadPodPorts(filename: string): void;
setConfig(config: StarshipConfig): void;
setContext(ctx: StarshipContext): void;
setPodPorts(ports: PodPorts): void;
private overrideNameAndVersion;
getArgs(): string[];
getDeployArgs(): string[];
test(): void;
stop(): Promise<void>;
start(): Promise<void>;
setupHelm(): void;
private ensureFileExists;
deploy(options?: string[]): void;
debug(): void;
deleteHelm(): void;
getPods(): void;
checkConnection(): void;
private getPodNames;
areAllPodsRunning(): boolean;
private checkPodStatus;
private setPodStatues;
waitForPods(): Promise<void>;
waitForPodsTermination(): Promise<void>;
private displayPodStatuses;
checkImagePullFailures(podName: string, exitEarly?: boolean): void;
private getPodEventsFromDescribe;
private forwardPort;
private forwardPortCometmock;
private forwardPortRelayer;
private forwardPortService;
startPortForward(): void;
private getForwardPids;
stopPortForward(): void;
printForwardPids(): void;
}