@hashgraph/solo
Version:
An opinionated CLI tool to deploy and manage private Hedera Networks.
60 lines (59 loc) • 3.06 kB
TypeScript
import { type UnInstallChartOptions } from '../model/install/un-install-chart-options.js';
import { type HelmClient } from '../helm-client.js';
import { type Chart } from '../model/chart.js';
import { Repository } from '../model/repository.js';
import { Release } from '../model/chart/release.js';
import { type InstallChartOptions } from '../model/install/install-chart-options.js';
import { type UpgradeChartOptions } from '../model/upgrade/upgrade-chart-options.js';
import { ReleaseItem } from '../model/release/release-item.js';
import { type TestChartOptions } from '../model/test/test-chart-options.js';
import { type SoloLogger } from '../../../core/logging/solo-logger.js';
import { AddRepoOptions } from '../model/add/add-repo-options.js';
import { SemanticVersion } from '../../../business/utils/semantic-version.js';
export declare class DefaultHelmClient implements HelmClient {
private readonly logger?;
private readonly installationDirectory?;
/**
* The name of the namespace argument.
*/
private static readonly NAMESPACE_ARG_NAME;
constructor(logger?: SoloLogger, installationDirectory?: string);
private readonly ERROR_401_REGEX;
private readonly ERROR_403_REGEX;
version(): Promise<SemanticVersion<string>>;
listRepositories(): Promise<Repository[]>;
addRepository(repository: Repository, options?: AddRepoOptions): Promise<void>;
removeRepository(repository: Repository): Promise<void>;
installChart(releaseName: string, chart: Chart, options: InstallChartOptions): Promise<Release>;
uninstallChart(releaseName: string, options: UnInstallChartOptions): Promise<void>;
testChart(releaseName: string, options: TestChartOptions): Promise<void>;
listReleases(allNamespaces: boolean, namespace?: string, kubeContext?: string): Promise<ReleaseItem[]>;
dependencyUpdate(chartName: string): Promise<void>;
upgradeChart(releaseName: string, chart: Chart, options: UpgradeChartOptions): Promise<Release>;
/**
* Applies the default namespace and authentication configuration to the given builder.
* @param _builder - The builder to apply to which the defaults should be applied
*/
private applyBuilderDefaults;
/**
* Executes the given request and returns the response as the given class.
* The request is executed using the default namespace.
*
* @param request - The request to execute
* @param responseClass - The class of the response
* @returns The response
*/
private executeAsync;
/**
* Executes the given request and returns the response as a list of the given class.
* The request is executed using the default namespace.
*
* @param request - The request to execute
* @param responseClass - The class of the response
* @returns A list of response objects
*/
private executeAsList;
private executeInternal;
updateRepositories(): Promise<void>;
pullChartPackage(chart: Chart, version: string, destinationDirectory: string): Promise<void>;
}