UNPKG

pmcf

Version:

Poor mans configuration management

360 lines (359 loc) 11.8 kB
export class Cluster extends Host { static get typeDefinition(): { name: string; owners: (string | { name: string; owners: string[]; priority: number; extends: { name: string; owners: any[]; properties: { owner: { type: string; collection: boolean; writeable: boolean; }; type: { type: string; collection: boolean; writeable: boolean; }; name: { type: string; collection: boolean; identifier: boolean; writeable: boolean; }; description: { type: string; collection: boolean; writeable: boolean; }; priority: { type: string; collection: boolean; writeable: boolean; }; directory: { type: string; collection: boolean; writeable: boolean; }; packaging: { type: string; collection: boolean; writeable: boolean; }; tags: { type: string; collection: boolean; writeable: boolean; }; }; }; properties: { networks: { type: string; collection: boolean; writeable: boolean; }; hosts: { type: string; collection: boolean; writeable: boolean; }; clusters: { type: string; collection: boolean; writeable: boolean; }; subnets: { type: { name: string; owners: string[]; priority: number; constructWithIdentifierOnly: boolean; properties: { address: { type: string; collection: boolean; writeable: boolean; identifier: boolean; }; networks: { type: string; collection: boolean; writeable: boolean; }; prefixLength: { type: string; collection: boolean; writeable: boolean; }; }; }; collection: boolean; writeable: boolean; }; country: { type: string; collection: boolean; writeable: boolean; }; domain: { type: string; collection: boolean; writeable: boolean; }; domains: { type: string; collection: boolean; writeable: boolean; }; timezone: { type: string; collection: boolean; writeable: boolean; }; architectures: { type: string; collection: boolean; writeable: boolean; }; locales: { type: string; collection: boolean; writeable: boolean; }; administratorEmail: { type: string; collection: boolean; writeable: boolean; }; }; })[]; priority: number; extends: { name: string; priority: number; owners: string[]; extends: { name: string; owners: any[]; properties: { owner: { type: string; collection: boolean; writeable: boolean; }; type: { type: string; collection: boolean; writeable: boolean; }; name: { type: string; collection: boolean; identifier: boolean; writeable: boolean; }; description: { type: string; collection: boolean; writeable: boolean; }; priority: { type: string; collection: boolean; writeable: boolean; }; directory: { type: string; collection: boolean; writeable: boolean; }; packaging: { type: string; collection: boolean; writeable: boolean; }; tags: { type: string; collection: boolean; writeable: boolean; }; }; }; properties: { networkInterfaces: { type: string; collection: boolean; writeable: boolean; }; services: { type: string; collection: boolean; writeable: boolean; }; aliases: { type: string; collection: boolean; writeable: boolean; }; os: { type: string; collection: boolean; writeable: boolean; values: string[]; }; "machine-id": { type: string; collection: boolean; writeable: boolean; }; distribution: { type: string; collection: boolean; writeable: boolean; }; deployment: { type: string; collection: boolean; writeable: boolean; values: string[]; }; weight: { type: string; collection: boolean; writeable: boolean; }; serial: { type: string; collection: boolean; writeable: boolean; }; vendor: { type: string; collection: boolean; writeable: boolean; }; chassis: { type: string; collection: boolean; writeable: boolean; values: string[]; }; architecture: { type: string; collection: boolean; writeable: boolean; values: string[]; }; replaces: { type: string; collection: boolean; writeable: boolean; }; depends: { type: string; collection: boolean; writeable: boolean; }; provides: { type: string; collection: boolean; writeable: boolean; }; extends: { type: string; collection: boolean; writeable: boolean; }; model: { type: string; collection: boolean; writeable: boolean; }; isModel: { type: string; collection: boolean; writeable: boolean; }; hostName: { type: string; collection: boolean; writeable: boolean; }; cidrAddresses: { type: string; collection: boolean; writeable: boolean; }; cidrAddress: { type: string; collection: boolean; writeable: boolean; }; addresses: { type: string; collection: boolean; writeable: boolean; }; address: { type: string; collection: boolean; writeable: boolean; }; }; }; properties: { routerId: { type: string; collection: boolean; writeable: boolean; }; masters: { type: string; collection: boolean; writeable: boolean; }; backups: { type: string; collection: boolean; writeable: boolean; }; members: { type: string; collection: boolean; writeable: boolean; }; checkInterval: { type: string; collection: boolean; writeable: boolean; }; }; }; _masters: Set<any>; _backups: Set<any>; routerId: number; checkInterval: number; set masters(value: Set<any>); get masters(): Set<any>; set backups(value: Set<any>); get backups(): Set<any>; get members(): Set<any>; preparePackages(stagingDir: any): AsyncGenerator<{ sources: AsyncIterable<import("content-entry").ContentEntry>[]; outputs: any; properties: { name: string; description: string; access: string; dependencies: string[]; replaces: string[]; }; }, void, unknown>; } import { Host } from "./host.mjs";