UNPKG

@chimoney.io/iaas-k8s-deployment

Version:

Kubernetes Infrastructure as a Service deployment package for streamlined multi-cloud environments

213 lines 5.49 kB
import type { Logger, DeploymentOptions } from "../../types/index.js"; interface HelmChartValues { companyName: string; namespace?: string; deploymentType: "shared" | "dedicated"; planTier?: string; rafikiAuth: { enabled: boolean; name: string; image: { repository: string; tag: string; pullPolicy: string; }; hpa?: { enabled: boolean; minReplicas?: number; maxReplicas?: number; targetCPUUtilizationPercentage?: number; }; ports: { main: number; grant: number; admin: number; }; service: { type: string; ports: { main: number; grant: number; admin: number; }; }; secrets: { name: string; }; }; rafikiBackend: { enabled: boolean; name: string; image: { repository: string; tag: string; pullPolicy: string; }; hpa?: { enabled: boolean; minReplicas?: number; maxReplicas?: number; targetCPUUtilizationPercentage?: number; }; ports: { openPayments: number; graphql: number; connector: number; admin: number; autopeering: number; }; service: { type: string; ports: { openPayments: number; graphql: number; connector: number; admin: number; autopeering: number; }; }; secrets: { name: string; }; }; nginx: { enabled: boolean; name: string; image: { repository: string; tag: string; pullPolicy: string; }; hpa?: { enabled: boolean; minReplicas?: number; maxReplicas?: number; targetCPUUtilizationPercentage?: number; }; ports: { http: number; }; service: { type: string; port: number; }; config?: { serverNameIlp: string; serverNameAuth: string; serverNameConnector: string; graphqlAllowedIps: Array<string>; }; configMap: { name: string; }; }; redis: { enabled: boolean; name: string; image: { repository: string; tag: string; pullPolicy: string; }; ports: { redis: number; }; service: { type: string; port: number; }; }; ingress: { enabled: boolean; name: string; className: string; annotations: Record<string, string>; hosts: { [key: string]: { host: string; paths: Array<{ path: string; pathType: string; serviceNameSuffix: string; servicePort: number; }>; }; }; }; networkPolicy?: { enabled: boolean; allowIngressFrom?: Array<Record<string, any>>; allowEgressTo?: Array<{ cidr?: string; namespaceSelector?: Record<string, any>; ports?: Array<{ port: number; protocol: string; }>; }>; allowEgressPorts?: Array<{ port: number; protocol: string; }>; }; monitoring?: { dashboards: { enabled: boolean; }; }; tierConfig?: Record<string, any>; tierResources?: { cpu?: string; memory?: string; }; tierResourceQuota?: { enabled?: boolean; requests?: Record<string, string>; limits?: Record<string, string>; claims?: Record<string, string>; }; gcp?: { backendConfig?: { healthCheck: { checkIntervalSec: number; port: number; type: string; requestPath: string; }; }; managedCertificate?: { enabled: boolean; domains: string[]; }; }; aws?: { loadBalancer?: { healthCheck: { enabled: boolean; intervalSeconds: number; path: string; port: string; protocol: string; timeoutSeconds: number; unhealthyThresholdCount: number; healthyThresholdCount: number; }; }; }; kubernetesSecrets?: { rafikiAuth: { create: boolean; name: string; stringData: Record<string, any>; }; rafikiBackend: { create: boolean; name: string; stringData: Record<string, any>; }; }; } export declare function generateDynamicHelmValues(options: DeploymentOptions, logger: Logger): HelmChartValues; export declare function mergeHelmValues(baseValues: HelmChartValues, tierValues: any, logger: Logger): any; export {}; //# sourceMappingURL=helm-values-generator.d.ts.map