pmcf 1.31.2 → 1.31.3

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.
@@ -91,6 +91,8 @@ async function generateNamedDefs(owner, targetDir) {
91
91
  }
92
92
  }
93
93
 
94
+ const hosts = new Set();
95
+
94
96
  for await (const {
95
97
  address,
96
98
  networkInterface
@@ -104,25 +106,29 @@ async function generateNamedDefs(owner, targetDir) {
104
106
  )
105
107
  );
106
108
 
107
- for (const service of host.services()) {
108
- if (service.master && service.alias) {
109
- zone.records.add(
110
- createRecord(service.alias, "CNAME", `${host.domainName}.`)
111
- );
112
- }
113
-
114
- if (service.srvPrefix) {
115
- zone.records.add(
116
- createRecord(
117
- `${service.srvPrefix}.${host.domainName}.`,
118
- "SRV",
119
- `${String(service.priority).padStart(4)} ${String(
120
- service.weight
121
- ).padStart(3)} ${String(service.port).padStart(5)} ${
122
- host.domainName
123
- }.`
124
- )
125
- );
109
+ if (!hosts.has(host)) {
110
+ hosts.add(host);
111
+ for (const service of host.services()) {
112
+ //console.log(service.name);
113
+ if (service.master && service.alias) {
114
+ zone.records.add(
115
+ createRecord(service.alias, "CNAME", `${host.domainName}.`)
116
+ );
117
+ }
118
+
119
+ if (dns.srvRecords && service.srvPrefix) {
120
+ zone.records.add(
121
+ createRecord(
122
+ `${service.srvPrefix}.${host.domainName}.`,
123
+ "SRV",
124
+ `${String(service.priority).padStart(4)} ${String(
125
+ service.weight
126
+ ).padStart(3)} ${String(service.port).padStart(5)} ${
127
+ host.domainName
128
+ }.`
129
+ )
130
+ );
131
+ }
126
132
  }
127
133
  }
128
134
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pmcf",
3
- "version": "1.31.2",
3
+ "version": "1.31.3",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
package/src/dns.mjs CHANGED
@@ -5,6 +5,7 @@ export class DNSService extends Base {
5
5
  allowedUpdates = [];
6
6
  recordTTL = "1W";
7
7
  soaUpdates = [36000, 72000, 600000, 60000];
8
+ srvRecords = true;
8
9
 
9
10
  forwardsTo = [];
10
11
 
package/types/dns.d.mts CHANGED
@@ -2,6 +2,7 @@ export class DNSService extends Base {
2
2
  allowedUpdates: any[];
3
3
  recordTTL: string;
4
4
  soaUpdates: number[];
5
+ srvRecords: boolean;
5
6
  forwardsTo: any[];
6
7
  services(): AsyncGenerator<any, void, any>;
7
8
  get domains(): any[];