@hashgraph/solo
Version:
An opinionated CLI tool to deploy and manage private Hedera Networks.
39 lines (38 loc) • 1.7 kB
TypeScript
import { BaseDependencyManager } from './base-dependency-manager.js';
import { PackageDownloader } from '../package-downloader.js';
import { Zippy } from '../zippy.js';
import { PodmanMode } from '../../types/index.js';
export declare class PodmanDependencyManager extends BaseDependencyManager {
private readonly zippy;
protected readonly helpersDirectory: string;
protected checksum: string;
protected releaseBaseUrl: string;
protected artifactFileName: string;
protected artifactVersion: string;
constructor(downloader: PackageDownloader, installationDirectory: string, osArch: string, podmanVersion: string, zippy: Zippy, helpersDirectory: string);
/**
* Get the Podman artifact name based on version, OS, and architecture
*/
protected getArtifactName(): string;
get mode(): PodmanMode;
getVersion(executableWithPath: string): Promise<string>;
/**
* Fetches the latest release information from GitHub API
* @returns Promise with the release base URL, asset name, digest, and version
*/
private fetchReleaseInfo;
shouldInstall(): Promise<boolean>;
protected preInstall(): Promise<void>;
protected getDownloadURL(): string;
/**
* Handle any post-download processing before copying to destination
* Child classes can override this for custom extraction or processing
*/
protected processDownloadedPackage(packageFilePath: string, temporaryDirectory: string): Promise<string[]>;
protected getChecksumURL(): string;
/**
* Create a custom containers.conf file for Podman and set the CONTAINERS_CONF env variable
* @private
*/
setupConfig(): Promise<void>;
}