@hashgraph/solo
Version:
An opinionated CLI tool to deploy and manage private Hedera Networks.
32 lines (31 loc) • 1.23 kB
TypeScript
import { type NamespaceName } from '../../../types/namespace/namespace-name.js';
import { type NodeAlias, type NodeAliases } from '../../../types/aliases.js';
import { type ConsensusNode } from '../../../core/model/consensus-node.js';
import { type PodReference } from '../../../integration/kube/resources/pod/pod-reference.js';
import { type NodeServiceMapping } from '../../../types/mappings/node-service-mapping.js';
export interface NodeCommonConfigClass {
namespace: NamespaceName;
deployment: string;
consensusNodes: ConsensusNode[];
contexts: string[];
quiet: boolean;
keysDir: string;
stagingDir: string;
}
export interface NodeCommonConfigWithNodeAliases extends NodeCommonConfigClass {
nodeAliases: NodeAliases;
nodeAliasesUnparsed: string;
}
export interface NodeCommonConfigWithNodeAlias extends NodeCommonConfigClass {
nodeAlias: NodeAlias;
}
export interface CheckedNodesConfigClass extends NodeCommonConfigClass {
podRefs: Record<NodeAlias, PodReference>;
skipStop: boolean;
existingNodeAliases: NodeAliases;
allNodeAliases: NodeAliases;
serviceMap: NodeServiceMapping;
}
export interface CheckedNodesContext {
config: CheckedNodesConfigClass;
}