Hierarchy (View Summary)

Constructors

Properties

_configMaps: Map<string, any> = ...
chartManager: ChartManager
configManager: ConfigManager
depManager: DependencyManager
helm: Helm
k8Factory: K8Factory
leaseManager: LeaseManager
localConfig: LocalConfig
logger?: SoloLogger
remoteConfigManager: RemoteConfigManager

Accessors

Methods

  • Run helm install and deploy network components

    Parameters

    • argv: any

    Returns Promise<boolean>

  • Dynamically builds a class with properties from the provided list of flags and extra properties, will keep track of which properties are used. Call getUnusedConfigs() to get an array of unused properties.

    Parameters

    • configName: string
    • flags: CommandFlag[]
    • extraProperties: string[] = []

    Returns object

  • Gets a list of distinct contexts from the consensus nodes

    Returns string[]

    an array of context strings

    use one inside remote config

  • Get the list of unused configurations that were not accessed

    Parameters

    • configName: string

    Returns string[]

    an array of unused configurations

  • Parameters

    • chartDir: string
    • chartRepo: string
    • chartReleaseName: string

    Returns Promise<string>

  • Prepare the values argument for the helm chart for a given config

    Parameters

    • config: {
          app?: string;
          awsBucket: string;
          awsBucketPrefix: string;
          awsEndpoint: string;
          awsWriteAccessKey: string;
          awsWriteSecrets: string;
          backupBucket: string;
          chartDirectory?: string;
          consensusNodes: ConsensusNode[];
          debugNodeAlias?: `node${number}`;
          enablePrometheusSvcMonitor?: boolean;
          envoyIpsParsed?: Record<`node${number}`, string>;
          gcsBucket: string;
          gcsBucketPrefix: string;
          gcsEndpoint: string;
          gcsWriteAccessKey: string;
          gcsWriteSecrets: string;
          googleCredential: string;
          haproxyIpsParsed?: Record<`node${number}`, string>;
          loadBalancerEnabled: boolean;
          persistentVolumeClaims?: string;
          releaseTag?: string;
          resolvedThrottlesFile: string;
          storageType: StorageType;
          valuesFile?: string;
      }

    Returns Record<string, string>

  • Prepare values args string for each cluster-ref

    Parameters

    • config: {
          app?: string;
          awsBucket: string;
          awsBucketPrefix: string;
          awsEndpoint: string;
          awsWriteAccessKey: string;
          awsWriteSecrets: string;
          backupBucket: string;
          chartDirectory?: string;
          clusterRefs: ClusterRefs;
          consensusNodes: ConsensusNode[];
          debugNodeAlias?: `node${number}`;
          enablePrometheusSvcMonitor?: boolean;
          envoyIpsParsed?: Record<`node${number}`, string>;
          gcsBucket: string;
          gcsBucketPrefix: string;
          gcsEndpoint: string;
          gcsWriteAccessKey: string;
          gcsWriteSecrets: string;
          googleCredential: string;
          haproxyIpsParsed?: Record<`node${number}`, string>;
          loadBalancerEnabled: boolean;
          nodeAliases: string[];
          persistentVolumeClaims?: string;
          releaseTag?: string;
          resolvedThrottlesFile: string;
          storageType: StorageType;
          valuesFile?: string;
      }

    Returns Promise<Record<string, string>>

  • Run helm upgrade to refresh network components with new settings

    Parameters

    • argv: any

    Returns Promise<boolean>

  • Returns a promise that invokes the shell command

    Parameters

    • cmd: string
    • verbose: boolean = false

    Returns Promise<string[]>

  • Prepare the values files map for each cluster

    Order of precedence:

    1. Chart's default values file (if chartDirectory is set)
    2. Profile values file
    3. User's values file

    Parameters

    • clusterRefs: ClusterRefs

      the map of cluster references

    • OptionalchartDirectory: string

      the chart directory

    • OptionalprofileValuesFile: string

      the profile values file

    • OptionalvaluesFileInput: string

      the values file input string

    Returns Record<string, string>