pmcf 2.55.0 → 2.56.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pmcf",
3
- "version": "2.55.0",
3
+ "version": "2.56.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
package/src/module.mjs CHANGED
@@ -21,6 +21,8 @@ export * from "./services/bind.mjs";
21
21
  export * from "./services/chrony.mjs";
22
22
  export * from "./services/kea.mjs";
23
23
  export * from "./services/systemd-journal.mjs";
24
+ export * from "./services/systemd-journal-remote.mjs";
25
+ export * from "./services/systemd-journal-upload.mjs";
24
26
  export * from "./services/systemd-timesyncd.mjs";
25
27
  export * from "./services/systemd-resolved.mjs";
26
28
  export * from "./types.mjs";
package/src/service.mjs CHANGED
@@ -13,8 +13,7 @@ const ServiceTypes = {
13
13
  "pacman-repo": {
14
14
  extends: ["https"]
15
15
  },
16
- ntp: { endpoints: [{ protocol: "udp", port: 123, tls: false, isPool: false }] },
17
- //bind: { extends: ["dns"] },
16
+ ntp: { endpoints: [{ protocol: "udp", port: 123, tls: false }] },
18
17
  dns: { endpoints: [{ protocol: "udp", port: 53, tls: false }] },
19
18
  ldap: { endpoints: [{ protocol: "tcp", port: 389, tls: false }] },
20
19
  ldaps: { endpoints: [{ protocol: "tcp", port: 636, tls: true }] },
@@ -0,0 +1,42 @@
1
+ import { Service, ServiceTypeDefinition } from "pmcf";
2
+ import { addType } from "../types.mjs";
3
+
4
+ const SystemdJournalRemoteServiceTypeDefinition = {
5
+ name: "systemd-journal-remote",
6
+ specializationOf: ServiceTypeDefinition,
7
+ owners: ServiceTypeDefinition.owners,
8
+ extends: ServiceTypeDefinition,
9
+ priority: 0.1,
10
+ properties: {}
11
+ };
12
+
13
+ export class SystemdJournalRemoteService extends Service {
14
+ static {
15
+ addType(this);
16
+ }
17
+
18
+ static get typeDefinition() {
19
+ return SystemdJournalRemoteServiceTypeDefinition;
20
+ }
21
+
22
+ constructor(owner, data) {
23
+ super(owner, data);
24
+ this.read(data, SystemdJournalRemoteServiceTypeDefinition);
25
+ }
26
+
27
+ get type() {
28
+ return SystemdJournalRemoteServiceTypeDefinition.name;
29
+ }
30
+
31
+ get systemdServices() {
32
+ return SystemdJournalRemoteServiceTypeDefinition.name;
33
+ }
34
+
35
+ systemdConfig(name) {
36
+ return {
37
+ serviceName: "systemd-journal-remote",
38
+ configFileName: `etc/systemd/journal-remote.conf.d/${name}.conf`,
39
+ content: ["Remote", {}]
40
+ };
41
+ }
42
+ }
@@ -0,0 +1,44 @@
1
+ import { Service, ServiceTypeDefinition } from "pmcf";
2
+ import { addType } from "../types.mjs";
3
+
4
+ const SystemdJournalUploadServiceTypeDefinition = {
5
+ name: "systemd-journal-upload",
6
+ specializationOf: ServiceTypeDefinition,
7
+ owners: ServiceTypeDefinition.owners,
8
+ extends: ServiceTypeDefinition,
9
+ priority: 0.1,
10
+ properties: {}
11
+ };
12
+
13
+ export class SystemdJournalUploadService extends Service {
14
+ static {
15
+ addType(this);
16
+ }
17
+
18
+ static get typeDefinition() {
19
+ return SystemdJournalUploadServiceTypeDefinition;
20
+ }
21
+
22
+ constructor(owner, data) {
23
+ super(owner, data);
24
+ this.read(data, SystemdJournalUploadServiceTypeDefinition);
25
+ }
26
+
27
+ get type() {
28
+ return SystemdJournalUploadServiceTypeDefinition.name;
29
+ }
30
+
31
+ get systemdServices() {
32
+ return SystemdJournalUploadServiceTypeDefinition.name;
33
+ }
34
+
35
+ systemdConfig(name) {
36
+ return {
37
+ serviceName: "systemd-journal-upload",
38
+ configFileName: `etc/systemd/journal-upload.conf.d/${name}.conf`,
39
+ content: ["Upload", {
40
+ URL : ""
41
+ }]
42
+ };
43
+ }
44
+ }
@@ -21,6 +21,8 @@ export * from "./services/bind.mjs";
21
21
  export * from "./services/chrony.mjs";
22
22
  export * from "./services/kea.mjs";
23
23
  export * from "./services/systemd-journal.mjs";
24
+ export * from "./services/systemd-journal-remote.mjs";
25
+ export * from "./services/systemd-journal-upload.mjs";
24
26
  export * from "./services/systemd-timesyncd.mjs";
25
27
  export * from "./services/systemd-resolved.mjs";
26
28
  export * from "./types.mjs";
@@ -0,0 +1,254 @@
1
+ export class SystemdJournalRemoteService extends Service {
2
+ static get typeDefinition(): {
3
+ name: string;
4
+ specializationOf: {
5
+ name: string;
6
+ owners: string[];
7
+ priority: number;
8
+ extends: {
9
+ name: string;
10
+ owners: any[];
11
+ properties: {
12
+ owner: {
13
+ type: string;
14
+ collection: boolean;
15
+ writeable: boolean;
16
+ };
17
+ type: {
18
+ type: string;
19
+ collection: boolean;
20
+ writeable: boolean;
21
+ };
22
+ name: {
23
+ type: string;
24
+ collection: boolean;
25
+ identifier: boolean;
26
+ writeable: boolean;
27
+ };
28
+ description: {
29
+ type: string;
30
+ collection: boolean;
31
+ writeable: boolean;
32
+ };
33
+ priority: {
34
+ type: string;
35
+ collection: boolean;
36
+ writeable: boolean;
37
+ };
38
+ directory: {
39
+ type: string;
40
+ collection: boolean;
41
+ writeable: boolean;
42
+ };
43
+ packaging: {
44
+ type: string;
45
+ collection: boolean;
46
+ writeable: boolean;
47
+ };
48
+ tags: {
49
+ type: string;
50
+ collection: boolean;
51
+ writeable: boolean;
52
+ };
53
+ };
54
+ };
55
+ specializations: {};
56
+ factoryFor(owner: any, value: any): any;
57
+ properties: {
58
+ alias: {
59
+ type: string;
60
+ collection: boolean;
61
+ writeable: boolean;
62
+ };
63
+ weight: {
64
+ type: string;
65
+ collection: boolean;
66
+ writeable: boolean;
67
+ default: number;
68
+ };
69
+ systemd: {
70
+ type: string;
71
+ collection: boolean;
72
+ writeable: boolean;
73
+ };
74
+ port: {
75
+ type: string;
76
+ collection: boolean;
77
+ writeable: boolean;
78
+ };
79
+ protocol: {
80
+ type: string;
81
+ collection: boolean;
82
+ writeable: boolean;
83
+ values: string[];
84
+ };
85
+ type: {
86
+ type: string;
87
+ collection: boolean;
88
+ writeable: boolean;
89
+ };
90
+ tls: {
91
+ type: string;
92
+ collection: boolean;
93
+ writeable: boolean;
94
+ default: boolean;
95
+ };
96
+ hostName: {
97
+ type: string;
98
+ collection: boolean;
99
+ writeable: boolean;
100
+ };
101
+ cidrAddresses: {
102
+ type: string;
103
+ collection: boolean;
104
+ writeable: boolean;
105
+ };
106
+ cidrAddress: {
107
+ type: string;
108
+ collection: boolean;
109
+ writeable: boolean;
110
+ };
111
+ addresses: {
112
+ type: string;
113
+ collection: boolean;
114
+ writeable: boolean;
115
+ };
116
+ address: {
117
+ type: string;
118
+ collection: boolean;
119
+ writeable: boolean;
120
+ };
121
+ };
122
+ };
123
+ owners: string[];
124
+ extends: {
125
+ name: string;
126
+ owners: string[];
127
+ priority: number;
128
+ extends: {
129
+ name: string;
130
+ owners: any[];
131
+ properties: {
132
+ owner: {
133
+ type: string;
134
+ collection: boolean;
135
+ writeable: boolean;
136
+ };
137
+ type: {
138
+ type: string;
139
+ collection: boolean;
140
+ writeable: boolean;
141
+ };
142
+ name: {
143
+ type: string;
144
+ collection: boolean;
145
+ identifier: boolean;
146
+ writeable: boolean;
147
+ };
148
+ description: {
149
+ type: string;
150
+ collection: boolean;
151
+ writeable: boolean;
152
+ };
153
+ priority: {
154
+ type: string;
155
+ collection: boolean;
156
+ writeable: boolean;
157
+ };
158
+ directory: {
159
+ type: string;
160
+ collection: boolean;
161
+ writeable: boolean;
162
+ };
163
+ packaging: {
164
+ type: string;
165
+ collection: boolean;
166
+ writeable: boolean;
167
+ };
168
+ tags: {
169
+ type: string;
170
+ collection: boolean;
171
+ writeable: boolean;
172
+ };
173
+ };
174
+ };
175
+ specializations: {};
176
+ factoryFor(owner: any, value: any): any;
177
+ properties: {
178
+ alias: {
179
+ type: string;
180
+ collection: boolean;
181
+ writeable: boolean;
182
+ };
183
+ weight: {
184
+ type: string;
185
+ collection: boolean;
186
+ writeable: boolean;
187
+ default: number;
188
+ };
189
+ systemd: {
190
+ type: string;
191
+ collection: boolean;
192
+ writeable: boolean;
193
+ };
194
+ port: {
195
+ type: string;
196
+ collection: boolean;
197
+ writeable: boolean;
198
+ };
199
+ protocol: {
200
+ type: string;
201
+ collection: boolean;
202
+ writeable: boolean;
203
+ values: string[];
204
+ };
205
+ type: {
206
+ type: string;
207
+ collection: boolean;
208
+ writeable: boolean;
209
+ };
210
+ tls: {
211
+ type: string;
212
+ collection: boolean;
213
+ writeable: boolean;
214
+ default: boolean;
215
+ };
216
+ hostName: {
217
+ type: string;
218
+ collection: boolean;
219
+ writeable: boolean;
220
+ };
221
+ cidrAddresses: {
222
+ type: string;
223
+ collection: boolean;
224
+ writeable: boolean;
225
+ };
226
+ cidrAddress: {
227
+ type: string;
228
+ collection: boolean;
229
+ writeable: boolean;
230
+ };
231
+ addresses: {
232
+ type: string;
233
+ collection: boolean;
234
+ writeable: boolean;
235
+ };
236
+ address: {
237
+ type: string;
238
+ collection: boolean;
239
+ writeable: boolean;
240
+ };
241
+ };
242
+ };
243
+ priority: number;
244
+ properties: {};
245
+ };
246
+ get type(): string;
247
+ get systemdServices(): string;
248
+ systemdConfig(name: any): {
249
+ serviceName: string;
250
+ configFileName: string;
251
+ content: {}[];
252
+ };
253
+ }
254
+ import { Service } from "pmcf";
@@ -0,0 +1,256 @@
1
+ export class SystemdJournalUploadService extends Service {
2
+ static get typeDefinition(): {
3
+ name: string;
4
+ specializationOf: {
5
+ name: string;
6
+ owners: string[];
7
+ priority: number;
8
+ extends: {
9
+ name: string;
10
+ owners: any[];
11
+ properties: {
12
+ owner: {
13
+ type: string;
14
+ collection: boolean;
15
+ writeable: boolean;
16
+ };
17
+ type: {
18
+ type: string;
19
+ collection: boolean;
20
+ writeable: boolean;
21
+ };
22
+ name: {
23
+ type: string;
24
+ collection: boolean;
25
+ identifier: boolean;
26
+ writeable: boolean;
27
+ };
28
+ description: {
29
+ type: string;
30
+ collection: boolean;
31
+ writeable: boolean;
32
+ };
33
+ priority: {
34
+ type: string;
35
+ collection: boolean;
36
+ writeable: boolean;
37
+ };
38
+ directory: {
39
+ type: string;
40
+ collection: boolean;
41
+ writeable: boolean;
42
+ };
43
+ packaging: {
44
+ type: string;
45
+ collection: boolean;
46
+ writeable: boolean;
47
+ };
48
+ tags: {
49
+ type: string;
50
+ collection: boolean;
51
+ writeable: boolean;
52
+ };
53
+ };
54
+ };
55
+ specializations: {};
56
+ factoryFor(owner: any, value: any): any;
57
+ properties: {
58
+ alias: {
59
+ type: string;
60
+ collection: boolean;
61
+ writeable: boolean;
62
+ };
63
+ weight: {
64
+ type: string;
65
+ collection: boolean;
66
+ writeable: boolean;
67
+ default: number;
68
+ };
69
+ systemd: {
70
+ type: string;
71
+ collection: boolean;
72
+ writeable: boolean;
73
+ };
74
+ port: {
75
+ type: string;
76
+ collection: boolean;
77
+ writeable: boolean;
78
+ };
79
+ protocol: {
80
+ type: string;
81
+ collection: boolean;
82
+ writeable: boolean;
83
+ values: string[];
84
+ };
85
+ type: {
86
+ type: string;
87
+ collection: boolean;
88
+ writeable: boolean;
89
+ };
90
+ tls: {
91
+ type: string;
92
+ collection: boolean;
93
+ writeable: boolean;
94
+ default: boolean;
95
+ };
96
+ hostName: {
97
+ type: string;
98
+ collection: boolean;
99
+ writeable: boolean;
100
+ };
101
+ cidrAddresses: {
102
+ type: string;
103
+ collection: boolean;
104
+ writeable: boolean;
105
+ };
106
+ cidrAddress: {
107
+ type: string;
108
+ collection: boolean;
109
+ writeable: boolean;
110
+ };
111
+ addresses: {
112
+ type: string;
113
+ collection: boolean;
114
+ writeable: boolean;
115
+ };
116
+ address: {
117
+ type: string;
118
+ collection: boolean;
119
+ writeable: boolean;
120
+ };
121
+ };
122
+ };
123
+ owners: string[];
124
+ extends: {
125
+ name: string;
126
+ owners: string[];
127
+ priority: number;
128
+ extends: {
129
+ name: string;
130
+ owners: any[];
131
+ properties: {
132
+ owner: {
133
+ type: string;
134
+ collection: boolean;
135
+ writeable: boolean;
136
+ };
137
+ type: {
138
+ type: string;
139
+ collection: boolean;
140
+ writeable: boolean;
141
+ };
142
+ name: {
143
+ type: string;
144
+ collection: boolean;
145
+ identifier: boolean;
146
+ writeable: boolean;
147
+ };
148
+ description: {
149
+ type: string;
150
+ collection: boolean;
151
+ writeable: boolean;
152
+ };
153
+ priority: {
154
+ type: string;
155
+ collection: boolean;
156
+ writeable: boolean;
157
+ };
158
+ directory: {
159
+ type: string;
160
+ collection: boolean;
161
+ writeable: boolean;
162
+ };
163
+ packaging: {
164
+ type: string;
165
+ collection: boolean;
166
+ writeable: boolean;
167
+ };
168
+ tags: {
169
+ type: string;
170
+ collection: boolean;
171
+ writeable: boolean;
172
+ };
173
+ };
174
+ };
175
+ specializations: {};
176
+ factoryFor(owner: any, value: any): any;
177
+ properties: {
178
+ alias: {
179
+ type: string;
180
+ collection: boolean;
181
+ writeable: boolean;
182
+ };
183
+ weight: {
184
+ type: string;
185
+ collection: boolean;
186
+ writeable: boolean;
187
+ default: number;
188
+ };
189
+ systemd: {
190
+ type: string;
191
+ collection: boolean;
192
+ writeable: boolean;
193
+ };
194
+ port: {
195
+ type: string;
196
+ collection: boolean;
197
+ writeable: boolean;
198
+ };
199
+ protocol: {
200
+ type: string;
201
+ collection: boolean;
202
+ writeable: boolean;
203
+ values: string[];
204
+ };
205
+ type: {
206
+ type: string;
207
+ collection: boolean;
208
+ writeable: boolean;
209
+ };
210
+ tls: {
211
+ type: string;
212
+ collection: boolean;
213
+ writeable: boolean;
214
+ default: boolean;
215
+ };
216
+ hostName: {
217
+ type: string;
218
+ collection: boolean;
219
+ writeable: boolean;
220
+ };
221
+ cidrAddresses: {
222
+ type: string;
223
+ collection: boolean;
224
+ writeable: boolean;
225
+ };
226
+ cidrAddress: {
227
+ type: string;
228
+ collection: boolean;
229
+ writeable: boolean;
230
+ };
231
+ addresses: {
232
+ type: string;
233
+ collection: boolean;
234
+ writeable: boolean;
235
+ };
236
+ address: {
237
+ type: string;
238
+ collection: boolean;
239
+ writeable: boolean;
240
+ };
241
+ };
242
+ };
243
+ priority: number;
244
+ properties: {};
245
+ };
246
+ get type(): string;
247
+ get systemdServices(): string;
248
+ systemdConfig(name: any): {
249
+ serviceName: string;
250
+ configFileName: string;
251
+ content: (string | {
252
+ URL: string;
253
+ })[];
254
+ };
255
+ }
256
+ import { Service } from "pmcf";