UNPKG

@starship-ci/generator

Version:

Kubernetes manifest generator for Starship deployments

49 lines (48 loc) 1.51 kB
import { Relayer, StarshipConfig } from '@starship-ci/types'; import { Container, EnvVar, Volume, VolumeMount } from 'kubernetesjs'; import { IGenerator, Manifest } from '../../types'; /** * Base class for relayer builders with common functionality */ export declare class BaseRelayerBuilder implements IGenerator { protected config: StarshipConfig; protected relayer: Relayer; protected generators: IGenerator[]; constructor(relayer: Relayer, config: StarshipConfig); /** * Generate all manifests for the relayer by running sub-generators */ generate(): Manifest[]; /** * Generate common metadata for relayer resources */ protected getCommonMetadata(resourceType: string): any; /** * Get chain configuration by ID */ protected getChainConfig(chainId: string): import("@starship-ci/types").Chain; /** * Get chain hostname */ protected getChainHostname(chainId: string): string; /** * Get image for relayer (custom or default) */ protected getImage(): string; /** * Generate common volumes for relayers */ protected generateVolumes(): Volume[]; /** * Generate common environment variables */ protected generateCommonEnv(): EnvVar[]; /** * Generate wait init containers for all chains */ protected generateWaitInitContainers(): Container[]; /** * Generate common volume mounts */ protected generateCommonVolumeMounts(): VolumeMount[]; }