@hashgraph/solo
Version:
An opinionated CLI tool to deploy and manage private Hedera Networks.
33 lines (32 loc) • 1.47 kB
TypeScript
import { BaseDependencyManager } from './base-dependency-manager.js';
import { PackageDownloader } from '../package-downloader.js';
import { Zippy } from '../zippy.js';
export declare class CraneDependencyManager extends BaseDependencyManager {
private readonly zippy;
protected checksum: string;
protected releaseBaseUrl: string;
protected artifactFileName: string;
protected artifactVersion: string;
constructor(downloader: PackageDownloader, zippy: Zippy, installationDirectory: string, osArch: string, craneVersion: string);
/**
* This class uses GitHub release discovery in preInstall(), so the artifact name
* is determined dynamically from the matching asset.
*/
protected getArtifactName(): string;
getVersion(executableWithPath: string): Promise<string>;
/**
* Match the release asset name for the current platform and architecture.
*
* Release examples observed publicly include:
* - go-containerregistry_Linux_x86_64.tar.gz
* - go-containerregistry_darwin_arm64.tar.gz
*
* We use a case-insensitive regex because historical naming appears to vary in capitalization.
*/
private getAssetPattern;
private fetchReleaseInfo;
protected preInstall(): Promise<void>;
protected getDownloadURL(): string;
protected getChecksumURL(): string;
protected processDownloadedPackage(packageFilePath: string, temporaryDirectory: string): Promise<string[]>;
}