pmcf
Version:
Poor mans configuration management
819 lines (818 loc) • 31.4 kB
text/typescript
export class TailscaleService extends Service {
static name: string;
static extends: {
name: string;
owners: (string | {
name: string;
owners: string[];
extends: {
name: string;
key: string;
attributes: {
owner: {
type: string;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
type: import("pacc").AttributeDefinition;
name: import("pacc").AttributeDefinition;
description: import("pacc").AttributeDefinition;
priority: import("pacc").AttributeDefinition;
directory: import("pacc").AttributeDefinition;
packaging: import("pacc").AttributeDefinition;
disabled: import("pacc").AttributeDefinition;
tags: import("pacc").AttributeDefinition;
};
};
key: string;
attributes: {
networkInterfaces: {
type: string;
collection: boolean;
isKey: boolean;
writable: boolean;
mandatory: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
services: {
type: string;
collection: boolean;
isKey: boolean;
writable: boolean;
mandatory: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
aliases: import("pacc").AttributeDefinition;
os: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
"machine-id": import("pacc").AttributeDefinition;
distribution: import("pacc").AttributeDefinition;
deployment: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
weight: import("pacc").AttributeDefinition;
serial: import("pacc").AttributeDefinition;
vendor: import("pacc").AttributeDefinition;
keymap: import("pacc").AttributeDefinition;
chassis: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
architecture: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
replaces: import("pacc").AttributeDefinition;
depends: import("pacc").AttributeDefinition;
provides: import("pacc").AttributeDefinition;
extends: {
type: string;
collection: boolean;
isKey: boolean;
writable: boolean;
mandatory: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
model: import("pacc").AttributeDefinition;
isModel: import("pacc").AttributeDefinition;
hostName: {
writable: boolean;
type: object;
isKey: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
cidrAddresses: import("pacc").AttributeDefinition;
cidrAddress: import("pacc").AttributeDefinition;
addresses: import("pacc").AttributeDefinition;
address: import("pacc").AttributeDefinition;
};
})[];
extends: {
name: string;
key: string;
attributes: {
owner: {
type: string;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
type: import("pacc").AttributeDefinition;
name: import("pacc").AttributeDefinition;
description: import("pacc").AttributeDefinition;
priority: import("pacc").AttributeDefinition;
directory: import("pacc").AttributeDefinition;
packaging: import("pacc").AttributeDefinition;
disabled: import("pacc").AttributeDefinition;
tags: import("pacc").AttributeDefinition;
};
};
specializations: {};
factoryFor(owner: any, value: any): any;
key: string;
attributes: {
alias: import("pacc").AttributeDefinition;
weight: {
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
systemd: import("pacc").AttributeDefinition;
port: import("pacc").AttributeDefinition;
protocol: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
type: import("pacc").AttributeDefinition;
types: typeof import("pacc").string_collection_attribute;
tls: import("pacc").AttributeDefinition;
hostName: {
writable: boolean;
type: object;
isKey: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
cidrAddresses: import("pacc").AttributeDefinition;
cidrAddress: import("pacc").AttributeDefinition;
addresses: import("pacc").AttributeDefinition;
address: import("pacc").AttributeDefinition;
};
};
static specializationOf: {
name: string;
owners: (string | {
name: string;
owners: string[];
extends: {
name: string;
key: string;
attributes: {
owner: {
type: string;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
type: import("pacc").AttributeDefinition;
name: import("pacc").AttributeDefinition;
description: import("pacc").AttributeDefinition;
priority: import("pacc").AttributeDefinition;
directory: import("pacc").AttributeDefinition;
packaging: import("pacc").AttributeDefinition;
disabled: import("pacc").AttributeDefinition;
tags: import("pacc").AttributeDefinition;
};
};
key: string;
attributes: {
networkInterfaces: {
type: string;
collection: boolean;
isKey: boolean;
writable: boolean;
mandatory: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
services: {
type: string;
collection: boolean;
isKey: boolean;
writable: boolean;
mandatory: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
aliases: import("pacc").AttributeDefinition;
os: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
"machine-id": import("pacc").AttributeDefinition;
distribution: import("pacc").AttributeDefinition;
deployment: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
weight: import("pacc").AttributeDefinition;
serial: import("pacc").AttributeDefinition;
vendor: import("pacc").AttributeDefinition;
keymap: import("pacc").AttributeDefinition;
chassis: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
architecture: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
replaces: import("pacc").AttributeDefinition;
depends: import("pacc").AttributeDefinition;
provides: import("pacc").AttributeDefinition;
extends: {
type: string;
collection: boolean;
isKey: boolean;
writable: boolean;
mandatory: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
model: import("pacc").AttributeDefinition;
isModel: import("pacc").AttributeDefinition;
hostName: {
writable: boolean;
type: object;
isKey: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
cidrAddresses: import("pacc").AttributeDefinition;
cidrAddress: import("pacc").AttributeDefinition;
addresses: import("pacc").AttributeDefinition;
address: import("pacc").AttributeDefinition;
};
})[];
extends: {
name: string;
key: string;
attributes: {
owner: {
type: string;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
type: import("pacc").AttributeDefinition;
name: import("pacc").AttributeDefinition;
description: import("pacc").AttributeDefinition;
priority: import("pacc").AttributeDefinition;
directory: import("pacc").AttributeDefinition;
packaging: import("pacc").AttributeDefinition;
disabled: import("pacc").AttributeDefinition;
tags: import("pacc").AttributeDefinition;
};
};
specializations: {};
factoryFor(owner: any, value: any): any;
key: string;
attributes: {
alias: import("pacc").AttributeDefinition;
weight: {
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
systemd: import("pacc").AttributeDefinition;
port: import("pacc").AttributeDefinition;
protocol: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
type: import("pacc").AttributeDefinition;
types: typeof import("pacc").string_collection_attribute;
tls: import("pacc").AttributeDefinition;
hostName: {
writable: boolean;
type: object;
isKey: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
cidrAddresses: import("pacc").AttributeDefinition;
cidrAddress: import("pacc").AttributeDefinition;
addresses: import("pacc").AttributeDefinition;
address: import("pacc").AttributeDefinition;
};
};
static owners: (string | {
name: string;
owners: string[];
extends: {
name: string;
key: string;
attributes: {
owner: {
type: string;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
type: import("pacc").AttributeDefinition;
name: import("pacc").AttributeDefinition;
description: import("pacc").AttributeDefinition;
priority: import("pacc").AttributeDefinition;
directory: import("pacc").AttributeDefinition;
packaging: import("pacc").AttributeDefinition;
disabled: import("pacc").AttributeDefinition;
tags: import("pacc").AttributeDefinition;
};
};
key: string;
attributes: {
networkInterfaces: {
type: string;
collection: boolean;
isKey: boolean;
writable: boolean;
mandatory: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
services: {
type: string;
collection: boolean;
isKey: boolean;
writable: boolean;
mandatory: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
aliases: import("pacc").AttributeDefinition;
os: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
"machine-id": import("pacc").AttributeDefinition;
distribution: import("pacc").AttributeDefinition;
deployment: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
weight: import("pacc").AttributeDefinition;
serial: import("pacc").AttributeDefinition;
vendor: import("pacc").AttributeDefinition;
keymap: import("pacc").AttributeDefinition;
chassis: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
architecture: {
values: string[];
type: object;
isKey: boolean;
writable: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
replaces: import("pacc").AttributeDefinition;
depends: import("pacc").AttributeDefinition;
provides: import("pacc").AttributeDefinition;
extends: {
type: string;
collection: boolean;
isKey: boolean;
writable: boolean;
mandatory: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
model: import("pacc").AttributeDefinition;
isModel: import("pacc").AttributeDefinition;
hostName: {
writable: boolean;
type: object;
isKey: boolean;
mandatory: boolean;
collection: boolean;
private?: boolean;
depends?: string;
description?: string;
default?: any;
set?: Function;
get?: Function;
prepareValue?: Function;
values?: Set<any>;
externalName?: string;
env?: string[] | string;
additionalValues?: object;
};
cidrAddresses: import("pacc").AttributeDefinition;
cidrAddress: import("pacc").AttributeDefinition;
addresses: import("pacc").AttributeDefinition;
address: import("pacc").AttributeDefinition;
};
})[];
static key: string;
static service: {
endpoints: {
family: string;
port: number;
protocol: string;
tls: boolean;
}[];
};
}
import { Service } from "../service.mjs";