@ydkn/pulumi-components 0.7.14 → 0.8.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.
Files changed (167) hide show
  1. package/index.d.ts +3 -1
  2. package/index.js +3 -1
  3. package/index.js.map +1 -1
  4. package/lib/alpine/assets/init.sh +48 -0
  5. package/lib/alpine/deployment.d.ts +59 -0
  6. package/lib/alpine/deployment.js +311 -0
  7. package/lib/alpine/deployment.js.map +1 -0
  8. package/lib/alpine/index.d.ts +2 -0
  9. package/lib/alpine/index.js +3 -0
  10. package/lib/alpine/index.js.map +1 -0
  11. package/lib/blocky/deployment.d.ts +3 -0
  12. package/lib/blocky/deployment.js +6 -1
  13. package/lib/blocky/deployment.js.map +1 -1
  14. package/lib/common/componentResource.d.ts +1 -0
  15. package/lib/common/componentResource.js +10 -6
  16. package/lib/common/componentResource.js.map +1 -1
  17. package/lib/cups/deployment.js +2 -3
  18. package/lib/cups/deployment.js.map +1 -1
  19. package/lib/freeradius/deployment.d.ts +3 -0
  20. package/lib/freeradius/deployment.js +6 -1
  21. package/lib/freeradius/deployment.js.map +1 -1
  22. package/lib/grafana/alloy.d.ts +44 -0
  23. package/lib/grafana/alloy.js +266 -0
  24. package/lib/grafana/alloy.js.map +1 -0
  25. package/lib/grafana/deployment.d.ts +5 -0
  26. package/lib/grafana/deployment.js +54 -0
  27. package/lib/grafana/deployment.js.map +1 -1
  28. package/lib/grafana/index.d.ts +2 -2
  29. package/lib/grafana/index.js +2 -2
  30. package/lib/grafana/index.js.map +1 -1
  31. package/lib/hcloud/cluster.js +1 -2
  32. package/lib/hcloud/cluster.js.map +1 -1
  33. package/lib/hcloud/netbirdAgent.js +1 -1
  34. package/lib/hcloud/netbirdAgent.js.map +1 -1
  35. package/lib/hcloud/wireguard.js +1 -1
  36. package/lib/hcloud/wireguard.js.map +1 -1
  37. package/lib/k0s/cluster.js +19 -1
  38. package/lib/k0s/cluster.js.map +1 -1
  39. package/lib/kubernetes/assets/crashed-cleanup.sh +2 -2
  40. package/lib/kubernetes/crashedCleanup.js +4 -4
  41. package/lib/kubernetes/crashedCleanup.js.map +1 -1
  42. package/lib/kubernetes/helm/v3/release.d.ts +1 -1
  43. package/lib/kubernetes/helm/v3/release.js +3 -0
  44. package/lib/kubernetes/helm/v3/release.js.map +1 -1
  45. package/lib/kubernetes/v1/index.d.ts +4 -2
  46. package/lib/kubernetes/v1/index.js +2 -1
  47. package/lib/kubernetes/v1/index.js.map +1 -1
  48. package/lib/kubernetes/v1/secureIngress.js.map +1 -0
  49. package/lib/kubernetes/v1/sharedFilesystem.d.ts +9 -0
  50. package/lib/kubernetes/v1/sharedFilesystem.js +2 -0
  51. package/lib/kubernetes/v1/sharedFilesystem.js.map +1 -0
  52. package/lib/lldap/deployment.js +1 -2
  53. package/lib/lldap/deployment.js.map +1 -1
  54. package/lib/localPathProvisioner/deployment.d.ts +1 -0
  55. package/lib/localPathProvisioner/deployment.js +3 -1
  56. package/lib/localPathProvisioner/deployment.js.map +1 -1
  57. package/lib/localPathProvisioner/index.d.ts +2 -1
  58. package/lib/localPathProvisioner/index.js +2 -1
  59. package/lib/localPathProvisioner/index.js.map +1 -1
  60. package/lib/localPathProvisioner/sharedFilesystem.d.ts +36 -0
  61. package/lib/localPathProvisioner/sharedFilesystem.js +102 -0
  62. package/lib/localPathProvisioner/sharedFilesystem.js.map +1 -0
  63. package/lib/loki/deployment.d.ts +3 -0
  64. package/lib/loki/deployment.js +2 -0
  65. package/lib/loki/deployment.js.map +1 -1
  66. package/lib/metallb/helpers.d.ts +13 -0
  67. package/lib/metallb/helpers.js +48 -0
  68. package/lib/metallb/helpers.js.map +1 -0
  69. package/lib/metallb/index.d.ts +2 -1
  70. package/lib/metallb/index.js +2 -1
  71. package/lib/metallb/index.js.map +1 -1
  72. package/lib/metallb/ipAddressPool.d.ts +4 -0
  73. package/lib/metallb/ipAddressPool.js.map +1 -1
  74. package/lib/minio/operator.d.ts +1 -0
  75. package/lib/minio/operator.js +1 -0
  76. package/lib/minio/operator.js.map +1 -1
  77. package/lib/minio/tenant.js +6 -7
  78. package/lib/minio/tenant.js.map +1 -1
  79. package/lib/mongodb/cluster.d.ts +3 -0
  80. package/lib/mongodb/cluster.js +9 -3
  81. package/lib/mongodb/cluster.js.map +1 -1
  82. package/lib/mongodb/operator.d.ts +1 -0
  83. package/lib/mongodb/operator.js +1 -0
  84. package/lib/mongodb/operator.js.map +1 -1
  85. package/lib/nats/cluster.d.ts +3 -0
  86. package/lib/nats/cluster.js +1 -0
  87. package/lib/nats/cluster.js.map +1 -1
  88. package/lib/netbird/agent.js +18 -6
  89. package/lib/netbird/agent.js.map +1 -1
  90. package/lib/netbird/assets/nftables.sh +6 -6
  91. package/lib/netbird/management.d.ts +1 -1
  92. package/lib/netbird/management.js +30 -9
  93. package/lib/netbird/management.js.map +1 -1
  94. package/lib/plex/mediaServer.d.ts +6 -6
  95. package/lib/plex/mediaServer.js +47 -17
  96. package/lib/plex/mediaServer.js.map +1 -1
  97. package/lib/postgresql/cluster.d.ts +6 -1
  98. package/lib/postgresql/cluster.js +3 -1
  99. package/lib/postgresql/cluster.js.map +1 -1
  100. package/lib/postgresql/operator.d.ts +0 -1
  101. package/lib/postgresql/operator.js.map +1 -1
  102. package/lib/prometheus/operator.js +2 -1
  103. package/lib/prometheus/operator.js.map +1 -1
  104. package/lib/proxy/deployment.d.ts +3 -0
  105. package/lib/proxy/deployment.js +6 -1
  106. package/lib/proxy/deployment.js.map +1 -1
  107. package/lib/rook/cluster.d.ts +7 -2
  108. package/lib/rook/cluster.js +18 -10
  109. package/lib/rook/cluster.js.map +1 -1
  110. package/lib/rook/index.d.ts +2 -2
  111. package/lib/rook/index.js +2 -2
  112. package/lib/rook/index.js.map +1 -1
  113. package/lib/rook/sharedFilesystem.d.ts +9 -4
  114. package/lib/rook/sharedFilesystem.js +10 -5
  115. package/lib/rook/sharedFilesystem.js.map +1 -1
  116. package/lib/samba/dc.d.ts +3 -0
  117. package/lib/samba/dc.js +6 -1
  118. package/lib/samba/dc.js.map +1 -1
  119. package/lib/samba/deployment.d.ts +9 -7
  120. package/lib/samba/deployment.js +101 -30
  121. package/lib/samba/deployment.js.map +1 -1
  122. package/lib/samba/index.d.ts +2 -2
  123. package/lib/samba/index.js +1 -1
  124. package/lib/samba/index.js.map +1 -1
  125. package/lib/torproxy/deployment.d.ts +3 -0
  126. package/lib/torproxy/deployment.js +6 -1
  127. package/lib/torproxy/deployment.js.map +1 -1
  128. package/lib/traefik/controller.d.ts +6 -1
  129. package/lib/traefik/controller.js +4 -1
  130. package/lib/traefik/controller.js.map +1 -1
  131. package/lib/traefik/index.d.ts +1 -2
  132. package/lib/traefik/index.js +1 -2
  133. package/lib/traefik/index.js.map +1 -1
  134. package/lib/transmission/deployment.d.ts +4 -10
  135. package/lib/transmission/deployment.js +123 -65
  136. package/lib/transmission/deployment.js.map +1 -1
  137. package/lib/transmission/index.d.ts +2 -2
  138. package/lib/transmission/index.js +1 -1
  139. package/lib/transmission/index.js.map +1 -1
  140. package/lib/ubuntu/deployment.d.ts +5 -6
  141. package/lib/ubuntu/deployment.js +46 -17
  142. package/lib/ubuntu/deployment.js.map +1 -1
  143. package/lib/ubuntu/index.d.ts +2 -2
  144. package/lib/ubuntu/index.js.map +1 -1
  145. package/lib/unifi/assets/init-mongo.sh +19 -0
  146. package/lib/unifi/index.d.ts +2 -2
  147. package/lib/unifi/index.js +2 -2
  148. package/lib/unifi/index.js.map +1 -1
  149. package/lib/unifi/{controller.d.ts → networkServer.d.ts} +17 -6
  150. package/lib/unifi/{controller.js → networkServer.js} +110 -26
  151. package/lib/unifi/networkServer.js.map +1 -0
  152. package/lib/versitygw/deployment.d.ts +52 -0
  153. package/lib/versitygw/deployment.js +270 -0
  154. package/lib/versitygw/deployment.js.map +1 -0
  155. package/lib/versitygw/index.d.ts +2 -0
  156. package/lib/versitygw/index.js +3 -0
  157. package/lib/versitygw/index.js.map +1 -0
  158. package/lib/wireguard/deployment.js +9 -2
  159. package/lib/wireguard/deployment.js.map +1 -1
  160. package/package.json +22 -22
  161. package/lib/grafana/agent.d.ts +0 -44
  162. package/lib/grafana/agent.js +0 -294
  163. package/lib/grafana/agent.js.map +0 -1
  164. package/lib/traefik/secureIngress.js.map +0 -1
  165. package/lib/unifi/controller.js.map +0 -1
  166. /package/lib/{traefik → kubernetes/v1}/secureIngress.d.ts +0 -0
  167. /package/lib/{traefik → kubernetes/v1}/secureIngress.js +0 -0
@@ -0,0 +1,270 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as random from "@pulumi/random";
3
+ import * as k8s from "@pulumi/kubernetes";
4
+ import { ComponentResource } from "../common/index.js";
5
+ import * as kubernetes from "../kubernetes/index.js";
6
+ import * as certManager from "../certManager/index.js";
7
+ import * as localPathProvisioner from "../localPathProvisioner/index.js";
8
+ import * as rook from "../rook/index.js";
9
+ export class VersityGateway extends ComponentResource {
10
+ static dataDir = "/mnt";
11
+ static sharedFilesystemsConfigs;
12
+ secret;
13
+ certificate;
14
+ deployment;
15
+ podDisruptionBudget;
16
+ service;
17
+ accessKey;
18
+ secretKey;
19
+ namespace;
20
+ /**
21
+ * Create a new Versity S3 gateway resource.
22
+ * @param name The name of the Versity S3 gateway resource.
23
+ * @param args A bag of arguments to control the Versity S3 gateway creation.
24
+ * @param opts A bag of options that control this resource's behavior.
25
+ */
26
+ constructor(name, args, opts) {
27
+ super("versitygw", name, args, opts);
28
+ const k8sOpts = this.opts(k8s.Provider);
29
+ const emptyOpts = this.opts();
30
+ if (args.replicas === undefined) {
31
+ args.replicas = 1;
32
+ }
33
+ if (args.resources === undefined) {
34
+ args.resources = {
35
+ requests: { memory: "96Mi" },
36
+ limits: { memory: "128Mi" },
37
+ };
38
+ }
39
+ this.accessKey = pulumi.secret(new random.RandomPassword("access-key", { length: 16, special: false }, emptyOpts).result);
40
+ this.secretKey = pulumi.secret(new random.RandomPassword("secret-key", { length: 24, special: false }, emptyOpts).result);
41
+ this.namespace = args.namespace
42
+ ? pulumi.output(args.namespace)
43
+ : new k8s.core.v1.Namespace(name, { metadata: { name } }, k8sOpts).metadata.name;
44
+ const metadata = {
45
+ name,
46
+ namespace: this.namespace,
47
+ labels: {
48
+ "app.kubernetes.io/name": "versitygw",
49
+ "app.kubernetes.io/component": "versitygw",
50
+ "app.kubernetes.io/instance": name,
51
+ },
52
+ };
53
+ this.secret = new kubernetes.v1.Secret(name, {
54
+ metadata,
55
+ stringData: {
56
+ accessKey: this.accessKey,
57
+ secretKey: this.secretKey,
58
+ },
59
+ }, k8sOpts);
60
+ const volumes = pulumi
61
+ .all([
62
+ args.pvcVolumes,
63
+ args.nfsVolumes,
64
+ args.sharedFilesystemVolumes,
65
+ VersityGateway.sharedFilesystemsConfigs ?? {},
66
+ ])
67
+ .apply(([pvcVolumes, nfsVolumes, sharedFilesystemVolumes, sharedFilesystemsConfigs]) => {
68
+ return pulumi.all(pvcVolumes ?? []).apply((pvcVolumes) => {
69
+ return pulumi.all(nfsVolumes ?? []).apply((nfsVolumes) => {
70
+ return pulumi.all(sharedFilesystemVolumes ?? []).apply((sharedFilesystemVolumes) => {
71
+ const volumes = [];
72
+ for (const pvcVolume of pvcVolumes) {
73
+ const pvc = new k8s.core.v1.PersistentVolumeClaim(`${name}-pvc-${pvcVolume.id}`, {
74
+ metadata: { ...metadata, name: pvcVolume.id },
75
+ spec: {
76
+ storageClassName: pvcVolume.storageClassName,
77
+ accessModes: pvcVolume.accessModes ?? ["ReadWriteOnce"],
78
+ resources: { requests: { storage: pvcVolume.size ?? "10Gi" } },
79
+ },
80
+ }, k8sOpts);
81
+ volumes.push({
82
+ id: pvcVolume.id,
83
+ persistentVolumeClaimName: pvc.metadata.name,
84
+ mountPath: `/${VersityGateway.dataDir}/${pvcVolume.id}`,
85
+ });
86
+ }
87
+ for (const nfsVolume of nfsVolumes) {
88
+ const volume = kubernetes.v1.NfsVolume.fromConfig(`${name}-nfs-${nfsVolume.id}`, { metadata: { ...metadata, name: nfsVolume.id }, config: nfsVolume }, opts);
89
+ volumes.push({
90
+ id: nfsVolume.id,
91
+ persistentVolumeClaimName: volume.persistentVolumeClaim.metadata.name,
92
+ mountPath: `/${VersityGateway.dataDir}/${nfsVolume.id}`,
93
+ });
94
+ }
95
+ for (const sharedFilesystemVolume of sharedFilesystemVolumes) {
96
+ const filesystem = sharedFilesystemsConfigs[sharedFilesystemVolume.id];
97
+ if (filesystem === undefined) {
98
+ continue;
99
+ }
100
+ let persistentVolumeClaim;
101
+ switch (filesystem.type) {
102
+ case rook.SharedFilesystemType: {
103
+ const rookFilesystem = filesystem;
104
+ persistentVolumeClaim = new rook.SharedFilesystem(`${name}-fs-${sharedFilesystemVolume.id}`, {
105
+ metadata: { ...metadata, name: sharedFilesystemVolume.id },
106
+ clusterId: rookFilesystem.clusterId,
107
+ csiProvisionerIdentity: rookFilesystem.csiProvisionerIdentity,
108
+ fsName: rookFilesystem.fsName,
109
+ nodeStageSecretRef: rookFilesystem.nodeStageSecretRef,
110
+ storageClassName: rookFilesystem.storageClassName,
111
+ storage: rookFilesystem.storage,
112
+ subvolumeName: rookFilesystem.subvolumeName,
113
+ subvolumePath: rookFilesystem.subvolumePath,
114
+ }, opts).persistentVolumeClaim;
115
+ break;
116
+ }
117
+ case localPathProvisioner.SharedFilesystemType: {
118
+ const localPathProvisionerFilesystem = filesystem;
119
+ persistentVolumeClaim = new localPathProvisioner.SharedFilesystem(`${name}-fs-${sharedFilesystemVolume.id}`, {
120
+ metadata: { ...metadata, name: sharedFilesystemVolume.id },
121
+ storageClassName: localPathProvisionerFilesystem.storageClassName,
122
+ storage: localPathProvisionerFilesystem.storage,
123
+ hostPath: localPathProvisionerFilesystem.hostPath,
124
+ nodeAffinity: localPathProvisionerFilesystem.nodeAffinity,
125
+ }, opts).persistentVolumeClaim;
126
+ break;
127
+ }
128
+ }
129
+ if (persistentVolumeClaim !== undefined) {
130
+ volumes.push({
131
+ id: sharedFilesystemVolume.id,
132
+ persistentVolumeClaimName: persistentVolumeClaim.metadata.name,
133
+ mountPath: `${VersityGateway.dataDir}/${sharedFilesystemVolume.id}`,
134
+ });
135
+ }
136
+ }
137
+ return volumes;
138
+ });
139
+ });
140
+ });
141
+ });
142
+ const certificateSecretName = pulumi.interpolate `${metadata.name}-tls`;
143
+ this.certificate = new certManager.Certificate(name, {
144
+ metadata,
145
+ spec: {
146
+ commonName: args.hostname,
147
+ dnsNames: [args.hostname],
148
+ issuerRef: { kind: "ClusterIssuer", name: args.clusterIssuer },
149
+ secretName: certificateSecretName,
150
+ },
151
+ }, k8sOpts);
152
+ this.deployment = new k8s.apps.v1.Deployment(name, {
153
+ metadata,
154
+ spec: {
155
+ selector: { matchLabels: metadata.labels },
156
+ strategy: { type: "RollingUpdate" },
157
+ replicas: args.replicas,
158
+ template: {
159
+ metadata: { labels: metadata.labels },
160
+ spec: {
161
+ nodeSelector: args.nodeSelector,
162
+ containers: [
163
+ {
164
+ name: "versitygw",
165
+ image: "versity/versitygw:latest",
166
+ imagePullPolicy: "Always",
167
+ securityContext: { runAsUser: args.uid, runAsGroup: args.gid },
168
+ args: [
169
+ "--cert=/tls/tls.crt",
170
+ "--key=/tls/tls.key",
171
+ "--region=vgw",
172
+ "--health=/healthz",
173
+ "--quiet",
174
+ "posix",
175
+ VersityGateway.dataDir,
176
+ ],
177
+ env: [
178
+ {
179
+ name: "ROOT_ACCESS_KEY_ID",
180
+ valueFrom: { secretKeyRef: { name: this.secret.metadata.name, key: "accessKey" } },
181
+ },
182
+ {
183
+ name: "ROOT_SECRET_KEY",
184
+ valueFrom: { secretKeyRef: { name: this.secret.metadata.name, key: "secretKey" } },
185
+ },
186
+ ],
187
+ ports: [{ name: "https", containerPort: 7070, protocol: "TCP" }],
188
+ resources: args.resources,
189
+ readinessProbe: {
190
+ periodSeconds: 10,
191
+ timeoutSeconds: 3,
192
+ successThreshold: 1,
193
+ failureThreshold: 2,
194
+ httpGet: { port: "https", path: "/healthz", scheme: "HTTPS" },
195
+ },
196
+ livenessProbe: {
197
+ periodSeconds: 30,
198
+ timeoutSeconds: 3,
199
+ successThreshold: 1,
200
+ failureThreshold: 5,
201
+ httpGet: { port: "https", path: "/healthz", scheme: "HTTPS" },
202
+ },
203
+ volumeMounts: pulumi
204
+ .all([volumes])
205
+ .apply(([volume]) => [{ name: "tls", mountPath: "/tls" }].concat(volume.map((v) => ({ name: v.id, mountPath: v.mountPath })))),
206
+ },
207
+ ],
208
+ volumes: pulumi.all([volumes]).apply(([volume]) => [
209
+ { name: "tls", secret: { secretName: certificateSecretName } },
210
+ ].concat(volume.map((v) => ({
211
+ name: v.id,
212
+ persistentVolumeClaim: { claimName: v.persistentVolumeClaimName },
213
+ })))),
214
+ tolerations: args.tolerations,
215
+ affinity: {
216
+ podAntiAffinity: {
217
+ preferredDuringSchedulingIgnoredDuringExecution: [
218
+ {
219
+ weight: 100,
220
+ podAffinityTerm: {
221
+ labelSelector: {
222
+ matchExpressions: [
223
+ {
224
+ key: "app.kubernetes.io/name",
225
+ operator: "In",
226
+ values: [metadata.labels["app.kubernetes.io/name"]],
227
+ },
228
+ {
229
+ key: "app.kubernetes.io/component",
230
+ operator: "In",
231
+ values: [metadata.labels["app.kubernetes.io/component"]],
232
+ },
233
+ {
234
+ key: "app.kubernetes.io/instance",
235
+ operator: "In",
236
+ values: [metadata.labels["app.kubernetes.io/instance"]],
237
+ },
238
+ ],
239
+ },
240
+ topologyKey: "kubernetes.io/hostname",
241
+ },
242
+ },
243
+ ],
244
+ },
245
+ },
246
+ },
247
+ },
248
+ },
249
+ }, k8sOpts);
250
+ this.podDisruptionBudget = new k8s.policy.v1.PodDisruptionBudget(name, {
251
+ metadata,
252
+ spec: {
253
+ minAvailable: 1,
254
+ selector: { matchLabels: metadata.labels },
255
+ },
256
+ }, k8sOpts);
257
+ this.service = new kubernetes.v1.Service(name, {
258
+ metadata,
259
+ spec: {
260
+ type: args.serviceType ?? "ClusterIP",
261
+ loadBalancerClass: args.serviceLoadBalancerClass,
262
+ selector: metadata.labels,
263
+ ports: [{ name: "https", port: 443, targetPort: "https" }],
264
+ },
265
+ hostnames: args.hostname ? [args.hostname] : undefined,
266
+ }, { ...k8sOpts, dependsOn: [this.deployment] });
267
+ this.registerOutputs();
268
+ }
269
+ }
270
+ //# sourceMappingURL=deployment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../../lib/versitygw/deployment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { VersityGatewayArgs, VersityGateway } from "./deployment.js";
2
+ export { VersityGatewayArgs, VersityGateway };
@@ -0,0 +1,3 @@
1
+ import { VersityGateway } from "./deployment.js";
2
+ export { VersityGateway };
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/versitygw/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAErE,OAAO,EAAsB,cAAc,EAAE,CAAC"}
@@ -59,7 +59,7 @@ export class Wireguard extends ComponentResource {
59
59
  conf.push(`PresharedKey = ${peer.presharedKey}`);
60
60
  }
61
61
  if (peer.endpoint !== undefined) {
62
- const endpoint = peer.endpoint.match(/:\d{1,5}$/)
62
+ const endpoint = /:\d{1,5}$/.exec(peer.endpoint)
63
63
  ? peer.endpoint
64
64
  : `${peer.endpoint}:${Wireguard.defaultInterfacePort}`;
65
65
  conf.push(`Endpoint = ${endpoint}`);
@@ -90,7 +90,14 @@ export class Wireguard extends ComponentResource {
90
90
  imagePullPolicy: "Always",
91
91
  securityContext: { privileged: true, capabilities: { add: ["NET_ADMIN"] } },
92
92
  volumeMounts: [{ name: "conf", mountPath: "/etc/wireguard", readOnly: true }],
93
- ports: [{ name: "wireguard", containerPort: this.interfacePort, protocol: "UDP" }],
93
+ ports: [
94
+ {
95
+ name: "wireguard",
96
+ protocol: "UDP",
97
+ containerPort: this.interfacePort,
98
+ hostPort: this.interfacePort,
99
+ },
100
+ ],
94
101
  resources: {
95
102
  requests: { memory: "8Mi" },
96
103
  limits: { memory: "12Mi" },
@@ -1 +1 @@
1
- {"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../../lib/wireguard/deployment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../../lib/wireguard/deployment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAC;AAyBzC,MAAM,OAAO,SAAU,SAAQ,iBAAiB;IACvC,MAAM,CAAU,oBAAoB,GAAG,WAAW,CAAC;IACnD,MAAM,CAAU,oBAAoB,GAAG,KAAK,CAAC;IAC7C,MAAM,CAAU,UAAU,GAAG,IAAI,CAAC;IAExB,MAAM,CAAuB;IAC7B,SAAS,CAAwB;IACjC,mBAAmB,CAAoC;IACxD,aAAa,CAAwB;IACrC,aAAa,CAAwB;IACrC,SAAS,CAAwB;IAEjD;;;;;OAKG;IACH,YAAY,IAAY,EAAE,IAAmB,EAAE,IAAsC;QACnF,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAErC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE/B,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACnH,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAEnH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS;YAC7B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YAC/B,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAEhF,MAAM,QAAQ,GAAG;YACf,IAAI;YACJ,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE;gBACN,wBAAwB,EAAE,WAAW;gBACrC,6BAA6B,EAAE,WAAW;gBAC1C,4BAA4B,EAAE,IAAI;aACnC;SACF,CAAC;QAEF,MAAM,UAAU,GAAG,MAAM;aACtB,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;aAClG,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,CAAC,EAAE,EAAE,CACpE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE,CAChD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAChC,MAAM,IAAI,GAAG;gBACX,aAAa;gBACb,aAAa,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBAClC,SAAS,KAAK,CAAC,GAAG,IAAI,SAAS,CAAC,UAAU,EAAE;gBAC5C,gBAAgB,aAAa,EAAE;gBAC/B,gBAAgB,KAAK,CAAC,UAAU,EAAE;gBAClC,8CAA8C;gBAC9C,8CAA8C;gBAC9C,gDAAgD;gBAChD,gDAAgD;aACjD,CAAC;YAEF,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,IAAI,CAAC,IAAI,CACP,8CAA8C,YAAY,gBAAgB,EAC1E,gDAAgD,YAAY,gBAAgB,CAC7E,CAAC;YACJ,CAAC;YAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CACP,QAAQ,EACR,0BAA0B,EAC1B,gBAAgB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAC3C,eAAe,IAAI,CAAC,SAAS,EAAE,CAChC,CAAC;gBAEF,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;oBACpC,IAAI,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;gBACnD,CAAC;gBAED,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAChC,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;wBAC9C,CAAC,CAAC,IAAI,CAAC,QAAQ;wBACf,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC,oBAAoB,EAAE,CAAC;oBAEzD,IAAI,CAAC,IAAI,CAAC,cAAc,QAAQ,EAAE,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YAED,MAAM,IAAI,GAA2B,EAAE,CAAC;YACxC,IAAI,CAAC,GAAG,aAAa,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEhD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CACH,CACF,CAAC;QAEJ,IAAI,CAAC,MAAM,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,IAAI,CAAC,CAAC;QAEzF,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CACxC,IAAI,EACJ;YACE,QAAQ;YACR,IAAI,EAAE;gBACJ,QAAQ,EAAE,EAAE,WAAW,EAAE,QAAQ,CAAC,MAAM,EAAE;gBAC1C,QAAQ,EAAE;oBACR,QAAQ,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE;oBACrC,IAAI,EAAE;wBACJ,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,mBAAmB;wBAC3D,WAAW,EAAE;4BACX,EAAE,GAAG,EAAE,gCAAgC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE;4BACnF,EAAE,GAAG,EAAE,uCAAuC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE;yBAC3F;wBACD,WAAW,EAAE,IAAI;wBACjB,UAAU,EAAE;4BACV;gCACE,IAAI,EAAE,WAAW;gCACjB,KAAK,EAAE,2BAA2B;gCAClC,eAAe,EAAE,QAAQ;gCACzB,eAAe,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE;gCAC3E,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;gCAC7E,KAAK,EAAE;oCACL;wCACE,IAAI,EAAE,WAAW;wCACjB,QAAQ,EAAE,KAAK;wCACf,aAAa,EAAE,IAAI,CAAC,aAAa;wCACjC,QAAQ,EAAE,IAAI,CAAC,aAAa;qCAC7B;iCACF;gCACD,SAAS,EAAE;oCACT,QAAQ,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;oCAC3B,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;iCAC3B;6BACF;yBACF;wBACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC;qBACvF;iBACF;aACF;SACF,EACD,IAAI,CACL,CAAC;QAEF,IAAI,CAAC,mBAAmB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,mBAAmB,CAC9D,IAAI,EACJ;YACE,QAAQ;YACR,IAAI,EAAE;gBACJ,cAAc,EAAE,CAAC;gBACjB,QAAQ,EAAE,EAAE,WAAW,EAAE,QAAQ,CAAC,MAAM,EAAE;aAC3C;SACF,EACD,IAAI,CACL,CAAC;QAEF,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ydkn/pulumi-components",
3
- "version": "0.7.14",
3
+ "version": "0.8.0",
4
4
  "keywords": [
5
5
  "pulumi"
6
6
  ],
@@ -14,42 +14,42 @@
14
14
  },
15
15
  "type": "module",
16
16
  "devDependencies": {
17
- "@eslint/js": "^9.7.0",
17
+ "@eslint/js": "^9.13.0",
18
18
  "@types/bcrypt": "^5.0.2",
19
19
  "@types/js-yaml": "^4.0.9",
20
- "@types/node": "^20.14.10",
21
- "@types/ssh2": "^1.15.0",
22
- "@types/ssh2-sftp-client": "^9.0.3",
20
+ "@types/node": "^22.7.7",
21
+ "@types/ssh2": "^1.15.1",
22
+ "@types/ssh2-sftp-client": "^9.0.4",
23
23
  "bcrypt": "^5.1.1",
24
24
  "copyfiles": "^2.4.1",
25
- "eslint": "^9.7.0",
25
+ "eslint": "^9.13.0",
26
26
  "eslint-config-prettier": "^9.1.0",
27
- "eslint-plugin-promise": "^6.4.0",
27
+ "eslint-plugin-promise": "^7.1.0",
28
28
  "eslint-plugin-security": "^3.0.1",
29
29
  "prettier": "^3.3.3",
30
30
  "rimraf": "^6.0.1",
31
- "typescript": "^5.5.3",
32
- "typescript-eslint": "^7.16.0"
31
+ "typescript": "^5.6.3",
32
+ "typescript-eslint": "^8.10.0"
33
33
  },
34
34
  "dependencies": {
35
- "@pulumi/aws": "^6.44.0",
36
- "@pulumi/cloudflare": "^5.34.0",
37
- "@pulumi/command": "^1.0.0",
38
- "@pulumi/gitlab": "^8.1.0",
39
- "@pulumi/hcloud": "^1.19.1",
40
- "@pulumi/kubernetes": "^4.15.0",
41
- "@pulumi/mailgun": "^3.5.4",
42
- "@pulumi/pulumi": "^3.124.0",
43
- "@pulumi/random": "^4.16.3",
44
- "@pulumi/tls": "^5.0.4",
35
+ "@pulumi/aws": "^6.56.1",
36
+ "@pulumi/cloudflare": "^5.41.0",
37
+ "@pulumi/command": "^1.0.1",
38
+ "@pulumi/gitlab": "^8.5.0",
39
+ "@pulumi/hcloud": "^1.20.5",
40
+ "@pulumi/kubernetes": "^4.18.2",
41
+ "@pulumi/mailgun": "^3.5.6",
42
+ "@pulumi/pulumi": "^3.137.0",
43
+ "@pulumi/random": "^4.16.7",
44
+ "@pulumi/tls": "^5.0.9",
45
45
  "@ydkn/pulumi-k0s": "^0.2.1",
46
46
  "glob": "^11.0.0",
47
47
  "js-yaml": "^4.1.0",
48
48
  "just-template": "^2.2.0",
49
- "ssh2": "^1.15.0",
50
- "ssh2-sftp-client": "^10.0.3",
49
+ "ssh2": "^1.16.0",
50
+ "ssh2-sftp-client": "^11.0.0",
51
51
  "template-file": "^6.0.1",
52
- "urllib": "^4.2.0"
52
+ "urllib": "^4.4.0"
53
53
  },
54
54
  "scripts": {
55
55
  "clean": "rimraf dist",
@@ -1,44 +0,0 @@
1
- import * as pulumi from "@pulumi/pulumi";
2
- import * as k8s from "@pulumi/kubernetes";
3
- import { ComponentResource } from "../common/index.js";
4
- export interface MetricsArgs {
5
- url: pulumi.Input<string>;
6
- username?: pulumi.Input<string>;
7
- password?: pulumi.Input<string>;
8
- }
9
- export interface LogsArgs {
10
- url: pulumi.Input<string>;
11
- username?: pulumi.Input<string>;
12
- password?: pulumi.Input<string>;
13
- }
14
- export interface AgentArgs {
15
- namespace?: pulumi.Input<string>;
16
- clusterName: pulumi.Input<string>;
17
- metrics?: pulumi.Input<MetricsArgs>;
18
- logs?: pulumi.Input<LogsArgs>;
19
- resources?: pulumi.Input<k8s.types.input.core.v1.ResourceRequirements>;
20
- }
21
- export declare class Agent extends ComponentResource {
22
- private static readonly metricsLabels;
23
- private static readonly logsLabels;
24
- private readonly helmRelease;
25
- private readonly serviceAccount;
26
- private readonly clusterRole;
27
- private readonly clusterRoleBinding;
28
- private readonly agentMetrics?;
29
- private readonly metricsSecret?;
30
- private readonly metrics?;
31
- private readonly kubeletServiceMonitor?;
32
- private readonly agentLogs?;
33
- private readonly logsSecret?;
34
- private readonly logs?;
35
- private readonly podLogs?;
36
- readonly namespace: pulumi.Output<string>;
37
- /**
38
- * Create a new grafana agent resource.
39
- * @param name The name of the grafana agent resource.
40
- * @param args A bag of arguments to control the grafana agent creation.
41
- * @param opts A bag of options that control this resource's behavior.
42
- */
43
- constructor(name: string, args: AgentArgs, opts?: pulumi.ComponentResourceOptions);
44
- }