pmcf 3.19.4 → 3.19.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pmcf",
3
- "version": "3.19.4",
3
+ "version": "3.19.6",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
package/src/host.mjs CHANGED
@@ -305,7 +305,7 @@ export class Host extends ServiceOwner {
305
305
 
306
306
  get hostName() {
307
307
  const parts = this.name.split(/\//);
308
- return parts[parts.length - 1];
308
+ return parts[parts.length - 1].toLowerCase();
309
309
  }
310
310
 
311
311
  get foreignDomainNames() {
@@ -498,7 +498,7 @@ export class Host extends ServiceOwner {
498
498
  for (const service of this.services) {
499
499
  if (service.systemdConfigs) {
500
500
  for (const { serviceName, configFileName, content } of asArray(
501
- service.systemdConfigs(this.name)
501
+ service.expand(service.systemdConfigs(this.name))
502
502
  )) {
503
503
  await writeLines(dir, configFileName, sectionLines(...content));
504
504
 
package/src/service.mjs CHANGED
@@ -89,6 +89,14 @@ export class Service extends Base {
89
89
  return ServiceTypeDefinition;
90
90
  }
91
91
 
92
+ get isTemplate() {
93
+ // TODO
94
+ if (this.fullName.startsWith("/services")) {
95
+ return true;
96
+ }
97
+ return super.isTemplate;
98
+ }
99
+
92
100
  toString() {
93
101
  return `${super.toString()}[${this.type}]`;
94
102
  }
package/src/utils.mjs CHANGED
@@ -5,6 +5,12 @@ export function yesno(flag) {
5
5
  return flag ? "yes" : "no";
6
6
  }
7
7
 
8
+ /**
9
+ * Appends default domain if name does not already have a domain.
10
+ * @param {string} name
11
+ * @param {string} [defaultDomain]
12
+ * @returns {string|undefined}
13
+ */
8
14
  export function domainName(name, defaultDomain) {
9
15
  const dcs = name.split(".");
10
16
  return defaultDomain === undefined || dcs.length > 1
@@ -12,6 +18,12 @@ export function domainName(name, defaultDomain) {
12
18
  : [name, defaultDomain].join(".");
13
19
  }
14
20
 
21
+ /**
22
+ * Extracts domain name from a name.
23
+ * @param {string} domainName
24
+ * @param {string} [defaultDomain]
25
+ * @returns {string|undefined}
26
+ */
15
27
  export function domainFromDominName(domainName, defaultDomain) {
16
28
  const dcs = domainName.split(".");
17
29
 
package/types/host.d.mts CHANGED
@@ -231,12 +231,12 @@ export class Host extends ServiceOwner {
231
231
  get modelName(): any;
232
232
  get hostName(): string;
233
233
  get foreignDomainNames(): any[];
234
- get foreignDomains(): Set<any>;
234
+ get foreignDomains(): Set<string>;
235
235
  get domains(): Set<any>;
236
- get directDomainNames(): Set<any>;
237
- get domainNames(): Set<any>;
238
- get domainName(): any;
239
- domainNamesIn(domain: any): Generator<any, void, unknown>;
236
+ get directDomainNames(): Set<string>;
237
+ get domainNames(): Set<string>;
238
+ get domainName(): string;
239
+ domainNamesIn(domain: any): Generator<string, void, unknown>;
240
240
  get clusters(): Set<any>;
241
241
  get host(): this;
242
242
  hosts(): Generator<this, void, unknown>;
@@ -31,7 +31,7 @@ export class NetworkAddress {
31
31
  /** @type {Subnet} */ subnet: Subnet;
32
32
  /** @type {NetworkInterface} */ networkInterface: NetworkInterface;
33
33
  /** @type {string|Uint8Array|Uint16Array} */ address: string | Uint8Array | Uint16Array;
34
- get domainNames(): Set<any>;
34
+ get domainNames(): Set<string>;
35
35
  get family(): any;
36
36
  get cidrAddress(): any;
37
37
  toString(): string;
@@ -1006,6 +1006,7 @@ export class NetworkInterface extends SkeletonNetworkInterface {
1006
1006
  get gatewayAddress(): any;
1007
1007
  set hostName(value: any);
1008
1008
  get hostName(): any;
1009
+ get domainNames(): Set<string>;
1009
1010
  set scope(value: any);
1010
1011
  get scope(): any;
1011
1012
  set hwaddr(value: any);
@@ -10,7 +10,7 @@ export class SkeletonNetworkInterface extends ServiceOwner {
10
10
  get host(): Host;
11
11
  hosts(): Generator<Host, void, unknown>;
12
12
  get network_interface(): this;
13
- get domainName(): any;
13
+ get domainName(): string;
14
14
  get domainNames(): Set<any>;
15
15
  matches(other: any): boolean;
16
16
  set network(network: any);
@@ -588,7 +588,7 @@ export class Service extends Base {
588
588
  _systemd: any;
589
589
  get host(): Host;
590
590
  hosts(): Generator<any, void, any>;
591
- get domainName(): any;
591
+ get domainName(): string;
592
592
  get networks(): Set<any>;
593
593
  get subnets(): Set<any>;
594
594
  get serviceTypeEndpoints(): any;
package/types/utils.d.mts CHANGED
@@ -1,6 +1,18 @@
1
1
  export function yesno(flag: any): "yes" | "no";
2
- export function domainName(name: any, defaultDomain: any): any;
3
- export function domainFromDominName(domainName: any, defaultDomain: any): any;
2
+ /**
3
+ * Appends default domain if name does not already have a domain.
4
+ * @param {string} name
5
+ * @param {string} [defaultDomain]
6
+ * @returns {string|undefined}
7
+ */
8
+ export function domainName(name: string, defaultDomain?: string): string | undefined;
9
+ /**
10
+ * Extracts domain name from a name.
11
+ * @param {string} domainName
12
+ * @param {string} [defaultDomain]
13
+ * @returns {string|undefined}
14
+ */
15
+ export function domainFromDominName(domainName: string, defaultDomain?: string): string | undefined;
4
16
  export function writeLines(dir: any, name: any, lines: any): Promise<void>;
5
17
  /**
6
18
  *