@apigeeks/fbl-k8s-plugin
Version:
fbl wrapper plugin for helm and kubectl cli utilities
59 lines (58 loc) • 1.73 kB
TypeScript
import { IContext } from 'fbl';
import { IHelmChart, IHelmDeploymentInfo, IExecOutput } from '../interfaces';
export declare class K8sHelmService {
private childProcessService;
private tempPathsRegistry;
/**
* Execute "helm" command
* @param {string[]} args
* @param {string} wd
* @return {Promise<IExecOutput>}
*/
execHelmCommand(args: string[], wd?: string): Promise<IExecOutput>;
/**
* Remove helm chart
* @param {string} name
* @param {IContext} context
* @return {Promise<void>}
*/
remove(name: string, context: IContext): Promise<void>;
private createEntity;
/**
* Update or install helm chart
* @param {IHelmChart} config
* @param {string} wd working directory
* @param context
* @return {Promise<void>}
*/
updateOrInstall(config: IHelmChart, wd: string, context: IContext): Promise<void>;
/**
* List installed helms
* @returns {Promise<string[]>}
*/
listInstalledHelms(): Promise<string[]>;
/**
* Check if deployment exists
* @param {string} name
* @returns {Promise<boolean>}
*/
isDeploymentExists(name: string): Promise<boolean>;
/**
* Get k8s objects in helm
*
* @param {string} name
* @return {Promise<IK8sObject[]>}
*/
getHelmObjects(name: string): Promise<any[]>;
/**
* Get information about helm deployment
* @param {string} name
* @returns {Promise<IHelmDeploymentInfo>}
*/
getHelmDeployment(name: string): Promise<IHelmDeploymentInfo>;
/**
* @param {string} yamlValue
* @param {object} defaultValue
*/
parseYaml(yamlValue: string, defaultValue: any): any;
}