pmcf 2.56.0 → 2.57.0

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/bin/pmcf-package CHANGED
@@ -30,8 +30,7 @@ const publishingDetails = createPublishingDetails(
30
30
  env
31
31
  );
32
32
 
33
- for (const name of args) {
34
- const object = await root.load(name);
33
+ for (const object of root.find(args)) {
35
34
  const stagingDir = join(options.output, object.fullName);
36
35
 
37
36
  for await (const { sources, outputs, properties } of object.preparePackages(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pmcf",
3
- "version": "2.56.0",
3
+ "version": "2.57.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
package/src/base.mjs CHANGED
@@ -509,6 +509,7 @@ export class Base {
509
509
  traverse(visitor, ...args) {
510
510
  const visited = new Set();
511
511
  this._traverse(visited, visitor, ...args);
512
+ return visited;
512
513
  }
513
514
 
514
515
  _traverse(visited, visitor, ...args) {
package/src/owner.mjs CHANGED
@@ -3,6 +3,7 @@ import { asIterator } from "./utils.mjs";
3
3
  import { Base } from "./base.mjs";
4
4
  import { Subnet, SUBNET_GLOBAL_IPV4, SUBNET_GLOBAL_IPV6 } from "./subnet.mjs";
5
5
  import { addType, types } from "./types.mjs";
6
+
6
7
  const OwnerTypeDefinition = {
7
8
  name: "owner",
8
9
  owners: ["location", "owner", "root"],
@@ -57,6 +58,17 @@ export class Owner extends Base {
57
58
  return false;
58
59
  }
59
60
 
61
+ *find(pattern) {
62
+ for (const node of this.traverse(() => {})) {
63
+ for (const p of pattern) {
64
+ if (node.fullName.match(p)) {
65
+ yield node;
66
+ break;
67
+ }
68
+ }
69
+ }
70
+ }
71
+
60
72
  named(name) {
61
73
  if (name[0] === "/") {
62
74
  name = name.substring(this.fullName.length + 1);
@@ -185,9 +197,10 @@ export class Owner extends Base {
185
197
  }
186
198
 
187
199
  let subnet = this.subnetForAddress(address);
188
-
200
+
189
201
  if (!subnet) {
190
- subnet = familyIP(address) === 'IPv4' ? SUBNET_GLOBAL_IPV4 : SUBNET_GLOBAL_IPV6;
202
+ subnet =
203
+ familyIP(address) === "IPv4" ? SUBNET_GLOBAL_IPV4 : SUBNET_GLOBAL_IPV6;
191
204
 
192
205
  /*
193
206
  this.error(
@@ -196,7 +209,7 @@ export class Owner extends Base {
196
209
  );
197
210
  */
198
211
  }
199
-
212
+
200
213
  return subnet;
201
214
  }
202
215
 
@@ -216,8 +229,7 @@ export class Owner extends Base {
216
229
  return this.typeList("cluster");
217
230
  }
218
231
 
219
- get bridges()
220
- {
232
+ get bridges() {
221
233
  return this._bridges;
222
234
  }
223
235
 
@@ -125,6 +125,14 @@ export class KeaService extends Service {
125
125
  }
126
126
 
127
127
  async *preparePackages(dir) {
128
+ const ctrlAgentEndpoint = this.endpoint(
129
+ e => e.type === "kea-control-agent"
130
+ );
131
+
132
+ if (!ctrlAgentEndpoint) {
133
+ return;
134
+ }
135
+
128
136
  const network = this.network;
129
137
  const host = this.host;
130
138
  const name = host.name;
@@ -151,10 +159,6 @@ export class KeaService extends Service {
151
159
  }
152
160
  };
153
161
 
154
- const ctrlAgentEndpoint = this.endpoint(
155
- e => e.type === "kea-control-agent"
156
- );
157
-
158
162
  const peers = async family =>
159
163
  (
160
164
  await Array.fromAsync(
@@ -171,13 +175,16 @@ export class KeaService extends Service {
171
175
  : "kea-control-agent")
172
176
  );
173
177
 
174
- return {
175
- name: dhcp.host.name,
176
- role: i === 0 ? "primary" : i > 1 ? "backup" : "standby",
177
- url: ctrlAgentEndpoint.url,
178
- "auto-failover": i <= 1
179
- };
180
- });
178
+ if (ctrlAgentEndpoint) {
179
+ return {
180
+ name: dhcp.host.name,
181
+ role: i === 0 ? "primary" : i > 1 ? "backup" : "standby",
182
+ url: ctrlAgentEndpoint.url,
183
+ "auto-failover": i <= 1
184
+ };
185
+ }
186
+ })
187
+ .filter(p => p != null);
181
188
 
182
189
  const loggers = [
183
190
  {
package/types/base.d.mts CHANGED
@@ -109,7 +109,7 @@ export class Base {
109
109
  finalize(action: any): void;
110
110
  execFinalize(): void;
111
111
  _execFinalize(): void;
112
- traverse(visitor: any, ...args: any[]): void;
112
+ traverse(visitor: any, ...args: any[]): Set<any>;
113
113
  _traverse(visited: any, visitor: any, ...args: any[]): boolean;
114
114
  error(...args: any[]): void;
115
115
  info(...args: any[]): void;
package/types/owner.d.mts CHANGED
@@ -134,6 +134,7 @@ export class Owner extends Base {
134
134
  _membersByType: Map<any, any>;
135
135
  _bridges: Set<any>;
136
136
  _traverse(...args: any[]): boolean;
137
+ find(pattern: any): Generator<any, void, unknown>;
137
138
  named(name: any): any;
138
139
  typeObject(typeName: any): any;
139
140
  typeList(typeName: any): any;