@highstate/library 0.26.0 → 0.27.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/dist/index.js CHANGED
@@ -3908,13 +3908,15 @@ var envoyGateway = defineUnit28({
3908
3908
  source: source("envoy-gateway")
3909
3909
  });
3910
3910
  // src/k8s/apps/etcd.ts
3911
- import { defineUnit as defineUnit29 } from "@highstate/contract";
3911
+ import { $addArgumentDescription as $addArgumentDescription30 } from "@highstate/contract";
3912
+ import { defineUnit as defineUnit29, z as z40 } from "@highstate/contract";
3912
3913
  import { pick as pick6 } from "remeda";
3913
3914
  var etcd = defineUnit29({
3914
3915
  type: "k8s.apps.etcd.v1",
3915
3916
  args: {
3916
3917
  ...appName("etcd"),
3917
- ...pick6(sharedArgs, ["external", "values", "patches", "service", "scheduling"])
3918
+ ...pick6(sharedArgs, ["external", "values", "patches", "service", "scheduling"]),
3919
+ replicas: $addArgumentDescription30(z40.number().int().positive().refine((replicas) => replicas % 2 === 1, "etcd replicas must be odd").default(1), `The odd number of etcd members to deploy.`)
3918
3920
  },
3919
3921
  secrets: {
3920
3922
  ...pick6(sharedSecrets, ["backupKey"])
@@ -3937,20 +3939,20 @@ var etcd = defineUnit29({
3937
3939
  source: source("etcd")
3938
3940
  });
3939
3941
  // src/k8s/apps/grafana.ts
3940
- import { $addArgumentDescription as $addArgumentDescription30 } from "@highstate/contract";
3941
- import { defineUnit as defineUnit30, z as z40 } from "@highstate/contract";
3942
+ import { $addArgumentDescription as $addArgumentDescription31 } from "@highstate/contract";
3943
+ import { defineUnit as defineUnit30, z as z41 } from "@highstate/contract";
3942
3944
  import { pick as pick7 } from "remeda";
3943
3945
  var grafana = defineUnit30({
3944
3946
  type: "k8s.apps.grafana.v1",
3945
3947
  args: {
3946
3948
  ...appName("grafana"),
3947
3949
  ...pick7(sharedArgs, ["fqdn", "values", "patches", "service", "scheduling"]),
3948
- plugins: $addArgumentDescription30(z40.string().array().default([]), `The list of plugins to install on Grafana.
3950
+ plugins: $addArgumentDescription31(z41.string().array().default([]), `The list of plugins to install on Grafana.
3949
3951
 
3950
3952
  See https://grafana.com/grafana/plugins for available plugins and their names.`)
3951
3953
  },
3952
3954
  secrets: {
3953
- adminPassword: $addArgumentDescription30(z40.string().optional(), `The admin password used for Grafana.
3955
+ adminPassword: $addArgumentDescription31(z41.string().optional(), `The admin password used for Grafana.
3954
3956
 
3955
3957
  If not provided, a random password will be generated.`)
3956
3958
  },
@@ -4047,29 +4049,29 @@ var mariadb = defineUnit33({
4047
4049
  source: source("mariadb")
4048
4050
  });
4049
4051
  // src/k8s/apps/matrix-stack.ts
4050
- import { $addArgumentDescription as $addArgumentDescription31, $addInputDescription as $addInputDescription31 } from "@highstate/contract";
4051
- import { defineUnit as defineUnit34, z as z41 } from "@highstate/contract";
4052
+ import { $addArgumentDescription as $addArgumentDescription32, $addInputDescription as $addInputDescription32 } from "@highstate/contract";
4053
+ import { defineUnit as defineUnit34, z as z42 } from "@highstate/contract";
4052
4054
  import { pick as pick11 } from "remeda";
4053
4055
  var matrixStack = defineUnit34({
4054
4056
  type: "k8s.apps.matrix-stack.v1",
4055
4057
  args: {
4056
4058
  ...appName("matrix-stack"),
4057
4059
  ...pick11(sharedArgs, ["values", "patches", "service"]),
4058
- fqdn: $addArgumentDescription31(z41.string(), `The base domain for the Matrix stack services.
4060
+ fqdn: $addArgumentDescription32(z42.string(), `The base domain for the Matrix stack services.
4059
4061
 
4060
4062
  Subdomains for Matrix services are generated automatically.
4061
4063
  This value cannot be changed after the first deployment.`),
4062
- enableCinny: $addArgumentDescription31(z41.boolean().default(false), `Whether to enable cinny web client deployment.
4064
+ enableCinny: $addArgumentDescription32(z42.boolean().default(false), `Whether to enable cinny web client deployment.
4063
4065
 
4064
4066
  The FQDN will be generated as \`cinny.\${fqdn}\`.`),
4065
- federationDomainWhitelist: $addArgumentDescription31(z41.array(z41.string()).default([]), `The list of remote Matrix domains that are allowed for federation.
4067
+ federationDomainWhitelist: $addArgumentDescription32(z42.array(z42.string()).default([]), `The list of remote Matrix domains that are allowed for federation.
4066
4068
 
4067
4069
  Leave empty to allow federation with all domains.`)
4068
4070
  },
4069
4071
  inputs: {
4070
4072
  ...pick11(sharedInputs, ["k8sCluster", "accessPoint"]),
4071
- synapsePostgresql: $addInputDescription31(exports_postgresql.connectionEntity, `The PostgreSQL connection for the Synapse server.`),
4072
- masPostgresql: $addInputDescription31(exports_postgresql.connectionEntity, `The PostgreSQL connection for the Matrix Authentication Service.`)
4073
+ synapsePostgresql: $addInputDescription32(exports_postgresql.connectionEntity, `The PostgreSQL connection for the Synapse server.`),
4074
+ masPostgresql: $addInputDescription32(exports_postgresql.connectionEntity, `The PostgreSQL connection for the Matrix Authentication Service.`)
4073
4075
  },
4074
4076
  secrets: {},
4075
4077
  meta: {
@@ -4082,8 +4084,8 @@ var matrixStack = defineUnit34({
4082
4084
  source: source("matrix-stack")
4083
4085
  });
4084
4086
  // src/k8s/apps/minio.ts
4085
- import { $addArgumentDescription as $addArgumentDescription32 } from "@highstate/contract";
4086
- import { defineUnit as defineUnit35, z as z42 } from "@highstate/contract";
4087
+ import { $addArgumentDescription as $addArgumentDescription33 } from "@highstate/contract";
4088
+ import { defineUnit as defineUnit35, z as z43 } from "@highstate/contract";
4087
4089
  import { pick as pick12 } from "remeda";
4088
4090
  var minio = defineUnit35({
4089
4091
  type: "k8s.apps.minio.v1",
@@ -4091,13 +4093,13 @@ var minio = defineUnit35({
4091
4093
  ...appName("minio"),
4092
4094
  ...pick12(optionalSharedArgs, ["fqdn", "namespace"]),
4093
4095
  ...pick12(sharedArgs, ["external", "values", "patches", "service", "scheduling"]),
4094
- consoleFqdn: $addArgumentDescription32(z42.string().optional(), `The FQDN of the MinIO console.
4096
+ consoleFqdn: $addArgumentDescription33(z43.string().optional(), `The FQDN of the MinIO console.
4095
4097
 
4096
4098
  If not provided, the console will not be exposed and only the S3 API will be available.`),
4097
- region: $addArgumentDescription32(z42.string().default("us-east-1"), `The name of the region to associate with the MinIO deployment.
4099
+ region: $addArgumentDescription33(z43.string().default("us-east-1"), `The name of the region to associate with the MinIO deployment.
4098
4100
 
4099
4101
  Defaults to "us-east-1".`),
4100
- useConsoleFork: $addArgumentDescription32(z42.boolean().default(false), `Whether to use the [fork](https://github.com/huncrys/minio-console) of MinIO Console instead of the built-in console.
4102
+ useConsoleFork: $addArgumentDescription33(z43.boolean().default(false), `Whether to use the [fork](https://github.com/huncrys/minio-console) of MinIO Console instead of the built-in console.
4101
4103
  The fork contains admin features that were removed from the original console.`)
4102
4104
  },
4103
4105
  secrets: {
@@ -4199,20 +4201,20 @@ var postgresql = defineUnit38({
4199
4201
  source: source("postgresql")
4200
4202
  });
4201
4203
  // src/k8s/apps/refluxdb.ts
4202
- import { $addArgumentDescription as $addArgumentDescription33 } from "@highstate/contract";
4203
- import { defineUnit as defineUnit39, z as z43 } from "@highstate/contract";
4204
+ import { $addArgumentDescription as $addArgumentDescription34 } from "@highstate/contract";
4205
+ import { defineUnit as defineUnit39, z as z44 } from "@highstate/contract";
4204
4206
  import { pick as pick16 } from "remeda";
4205
4207
  var refluxdb = defineUnit39({
4206
4208
  type: "k8s.apps.refluxdb.v1",
4207
4209
  args: {
4208
4210
  ...appName("refluxdb"),
4209
4211
  ...pick16(sharedArgs, ["external"]),
4210
- nodeId: $addArgumentDescription33(z43.string().default("local1"), `The ID of the node.
4212
+ nodeId: $addArgumentDescription34(z44.string().default("local1"), `The ID of the node.
4211
4213
 
4212
4214
  Defaults to "local1".`)
4213
4215
  },
4214
4216
  secrets: {
4215
- operatorToken: $addArgumentDescription33(z43.string().optional(), `The operator token of the RefluxDB instance.`)
4217
+ operatorToken: $addArgumentDescription34(z44.string().optional(), `The operator token of the RefluxDB instance.`)
4216
4218
  },
4217
4219
  inputs: {
4218
4220
  ...pick16(sharedInputs, ["k8sCluster"]),
@@ -4235,13 +4237,13 @@ import { camelCaseToHumanReadable as __camelCaseToHumanReadable24 } from "@highs
4235
4237
  import {
4236
4238
  defineEntity as defineEntity29,
4237
4239
  defineUnit as defineUnit40,
4238
- z as z44
4240
+ z as z45
4239
4241
  } from "@highstate/contract";
4240
4242
  import { pick as pick17 } from "remeda";
4241
4243
  var remnawaveEntity = defineEntity29({
4242
4244
  type: "k8s.apps.remnawave.v1",
4243
- schema: z44.object({
4244
- instanceId: z44.string().meta({ title: __camelCaseToHumanReadable24("instanceId"), description: `The ID of the Remnawave instance.` })
4245
+ schema: z45.object({
4246
+ instanceId: z45.string().meta({ title: __camelCaseToHumanReadable24("instanceId"), description: `The ID of the Remnawave instance.` })
4245
4247
  }),
4246
4248
  meta: {
4247
4249
  color: "#0066cc",
@@ -4253,8 +4255,8 @@ var remnawaveEntity = defineEntity29({
4253
4255
  var remnawave = defineUnit40({
4254
4256
  type: "k8s.apps.remnawave.backend.v1",
4255
4257
  secrets: {
4256
- jwtAuthSecret: z44.string(),
4257
- jwtApiTokensSecret: z44.string()
4258
+ jwtAuthSecret: z45.string(),
4259
+ jwtApiTokensSecret: z45.string()
4258
4260
  },
4259
4261
  inputs: {
4260
4262
  ...pick17(sharedInputs, ["k8sCluster", "accessPoint", "postgresql", "redis"]),
@@ -4289,8 +4291,8 @@ var node = defineUnit40({
4289
4291
  source: source("remnawave/node")
4290
4292
  });
4291
4293
  // src/k8s/apps/rustfs.ts
4292
- import { $addArgumentDescription as $addArgumentDescription34 } from "@highstate/contract";
4293
- import { defineUnit as defineUnit41, z as z45 } from "@highstate/contract";
4294
+ import { $addArgumentDescription as $addArgumentDescription35 } from "@highstate/contract";
4295
+ import { defineUnit as defineUnit41, z as z46 } from "@highstate/contract";
4294
4296
  import { pick as pick18 } from "remeda";
4295
4297
  var rustfs = defineUnit41({
4296
4298
  type: "k8s.apps.rustfs.v1",
@@ -4298,25 +4300,25 @@ var rustfs = defineUnit41({
4298
4300
  ...appName("rustfs"),
4299
4301
  ...pick18(optionalSharedArgs, ["fqdn", "namespace"]),
4300
4302
  ...pick18(sharedArgs, ["external", "values", "patches", "service", "scheduling"]),
4301
- mode: $addArgumentDescription34(z45.enum(["standalone", "distributed"]).default("distributed"), `The deployment topology to use.
4303
+ mode: $addArgumentDescription35(z46.enum(["standalone", "distributed"]).default("distributed"), `The deployment topology to use.
4302
4304
 
4303
4305
  Standalone mode deploys one pod with one data volume.
4304
4306
  Distributed mode deploys an erasure-coded StatefulSet across multiple pods and volumes.`),
4305
- consoleFqdn: $addArgumentDescription34(z45.string().optional(), `The FQDN of the RustFS console.
4307
+ consoleFqdn: $addArgumentDescription35(z46.string().optional(), `The FQDN of the RustFS console.
4306
4308
 
4307
4309
  If not provided, the console will only be available inside the cluster.`),
4308
- replicas: $addArgumentDescription34(z45.number().int().min(2).default(4), `The number of nodes in a distributed deployment.
4310
+ replicas: $addArgumentDescription35(z46.number().int().min(2).default(4), `The number of nodes in a distributed deployment.
4309
4311
 
4310
4312
  Ignored in standalone mode.`),
4311
- drivesPerNode: $addArgumentDescription34(z45.number().int().min(1).default(4), `The number of data volumes attached to each distributed node.
4313
+ drivesPerNode: $addArgumentDescription35(z46.number().int().min(1).default(4), `The number of data volumes attached to each distributed node.
4312
4314
 
4313
4315
  Ignored in standalone mode.`),
4314
- unsafeBypassDiskCheck: $addArgumentDescription34(z45.boolean().default(false), `Whether to bypass RustFS validation that each data volume uses a distinct physical disk.
4316
+ unsafeBypassDiskCheck: $addArgumentDescription35(z46.boolean().default(false), `Whether to bypass RustFS validation that each data volume uses a distinct physical disk.
4315
4317
 
4316
4318
  This sets \`RUSTFS_UNSAFE_BYPASS_DISK_CHECK=true\` and must only be used for local testing or CI.
4317
4319
  Enabling it in production can cause correlated data loss because multiple erasure-coded drives
4318
4320
  may actually share one physical device.`),
4319
- allowLessNodes: $addArgumentDescription34(z45.boolean().default(false), `Whether distributed RustFS pods may share Kubernetes nodes.
4321
+ allowLessNodes: $addArgumentDescription35(z46.boolean().default(false), `Whether distributed RustFS pods may share Kubernetes nodes.
4320
4322
 
4321
4323
  By default, RustFS requires each replica to run on a different node for failure isolation.
4322
4324
  Enable this when the Kubernetes cluster has fewer eligible nodes than RustFS replicas.
@@ -4324,10 +4326,10 @@ var rustfs = defineUnit41({
4324
4326
  This reduces fault tolerance because one node failure can make multiple RustFS replicas unavailable.
4325
4327
 
4326
4328
  Ignored in standalone mode.`),
4327
- storageClass: $addArgumentDescription34(z45.string().default("local-path"), `The Kubernetes StorageClass used for RustFS volumes.`),
4328
- dataStorageSize: $addArgumentDescription34(z45.string().default("100Gi"), `The requested capacity of each data volume.`),
4329
- logStorageSize: $addArgumentDescription34(z45.string().default("1Gi"), `The requested capacity of each log volume.`),
4330
- region: $addArgumentDescription34(z45.string().default("us-east-1"), `The S3 region reported by RustFS.`)
4329
+ storageClass: $addArgumentDescription35(z46.string().default("local-path"), `The Kubernetes StorageClass used for RustFS volumes.`),
4330
+ dataStorageSize: $addArgumentDescription35(z46.string().default("100Gi"), `The requested capacity of each data volume.`),
4331
+ logStorageSize: $addArgumentDescription35(z46.string().default("1Gi"), `The requested capacity of each log volume.`),
4332
+ region: $addArgumentDescription35(z46.string().default("us-east-1"), `The S3 region reported by RustFS.`)
4331
4333
  },
4332
4334
  secrets: {
4333
4335
  ...pick18(sharedSecrets, ["adminPassword", "backupKey"])
@@ -4373,20 +4375,20 @@ var signoz = defineUnit42({
4373
4375
  source: source("signoz")
4374
4376
  });
4375
4377
  // src/k8s/apps/syncthing.ts
4376
- import { $addArgumentDescription as $addArgumentDescription35 } from "@highstate/contract";
4377
- import { defineUnit as defineUnit43, z as z46 } from "@highstate/contract";
4378
+ import { $addArgumentDescription as $addArgumentDescription36 } from "@highstate/contract";
4379
+ import { defineUnit as defineUnit43, z as z47 } from "@highstate/contract";
4378
4380
  import { pick as pick20 } from "remeda";
4379
- var backupModeSchema = z46.enum(["state", "full"]);
4381
+ var backupModeSchema = z47.enum(["state", "full"]);
4380
4382
  var syncthing = defineUnit43({
4381
4383
  type: "k8s.apps.syncthing.v1",
4382
4384
  args: {
4383
4385
  ...appName("syncthing"),
4384
4386
  ...pick20(sharedArgs, ["fqdn", "external"]),
4385
- deviceFqdn: $addArgumentDescription35(z46.string().optional(), `The FQDN of the Syncthing instance used to sync with other devices.
4387
+ deviceFqdn: $addArgumentDescription36(z47.string().optional(), `The FQDN of the Syncthing instance used to sync with other devices.
4386
4388
 
4387
4389
  The \`fqdn\` argument unlike this one points to the gateway and used to
4388
4390
  access the Syncthing Web UI.`),
4389
- backupMode: $addArgumentDescription35(backupModeSchema.default("state"), `The backup mode to use for the Syncthing instance.
4391
+ backupMode: $addArgumentDescription36(backupModeSchema.default("state"), `The backup mode to use for the Syncthing instance.
4390
4392
 
4391
4393
  - \`state\`: Only the state is backed up. When the instance is restored, it will
4392
4394
  sync files from the other devices automatically.
@@ -4418,21 +4420,21 @@ var syncthing = defineUnit43({
4418
4420
  source: source("syncthing")
4419
4421
  });
4420
4422
  // src/k8s/apps/traefik.ts
4421
- import { $addArgumentDescription as $addArgumentDescription36 } from "@highstate/contract";
4422
- import { defineUnit as defineUnit44, z as z47 } from "@highstate/contract";
4423
+ import { $addArgumentDescription as $addArgumentDescription37 } from "@highstate/contract";
4424
+ import { defineUnit as defineUnit44, z as z48 } from "@highstate/contract";
4423
4425
  import { pick as pick21 } from "remeda";
4424
4426
  var traefik = defineUnit44({
4425
4427
  type: "k8s.apps.traefik.v1",
4426
4428
  args: {
4427
4429
  ...appName("traefik"),
4428
4430
  ...pick21(sharedArgs, ["external", "replicas", "values", "patches", "service", "scheduling"]),
4429
- className: $addArgumentDescription36(z47.string().default("traefik"), `The name of the class to configure for ingress and gateway resources.
4431
+ className: $addArgumentDescription37(z48.string().default("traefik"), `The name of the class to configure for ingress and gateway resources.
4430
4432
 
4431
4433
  Defaults to "traefik".`),
4432
- enableTraefikCrds: $addArgumentDescription36(z47.boolean().default(true), `Whether to create and enable reconciliation for Traefik CRDs.`),
4433
- installCrds: $addArgumentDescription36(z47.boolean().default(true), `Whether to install CRDs bundled with the Traefik Helm chart.`),
4434
- enableIngressApi: $addArgumentDescription36(z47.boolean().default(true), `Whether to enable reconciliation for Ingress resources and create ingress class.`),
4435
- enableGatewayApi: $addArgumentDescription36(z47.boolean().default(false), `Whether to enable reconciliation for Gateway API resources and create gateway class.`)
4434
+ enableTraefikCrds: $addArgumentDescription37(z48.boolean().default(true), `Whether to create and enable reconciliation for Traefik CRDs.`),
4435
+ installCrds: $addArgumentDescription37(z48.boolean().default(true), `Whether to install CRDs bundled with the Traefik Helm chart.`),
4436
+ enableIngressApi: $addArgumentDescription37(z48.boolean().default(true), `Whether to enable reconciliation for Ingress resources and create ingress class.`),
4437
+ enableGatewayApi: $addArgumentDescription37(z48.boolean().default(false), `Whether to enable reconciliation for Gateway API resources and create gateway class.`)
4436
4438
  },
4437
4439
  inputs: {
4438
4440
  ...pick21(sharedInputs, ["k8sCluster"])
@@ -4483,9 +4485,9 @@ var valkey = defineUnit45({
4483
4485
  source: source("valkey")
4484
4486
  });
4485
4487
  // src/k8s/apps/vault.ts
4486
- import { $addArgumentDescription as $addArgumentDescription37, $addInputDescription as $addInputDescription37 } from "@highstate/contract";
4488
+ import { $addArgumentDescription as $addArgumentDescription38, $addInputDescription as $addInputDescription38 } from "@highstate/contract";
4487
4489
  import { camelCaseToHumanReadable as __camelCaseToHumanReadable25 } from "@highstate/contract";
4488
- import { defineUnit as defineUnit46, z as z48 } from "@highstate/contract";
4490
+ import { defineUnit as defineUnit46, z as z49 } from "@highstate/contract";
4489
4491
  import { pick as pick23 } from "remeda";
4490
4492
  var vault = defineUnit46({
4491
4493
  type: "k8s.apps.vault.v1",
@@ -4500,15 +4502,15 @@ var vault = defineUnit46({
4500
4502
  "service",
4501
4503
  "scheduling"
4502
4504
  ]),
4503
- backend: $addArgumentDescription37(z48.enum(["file", "s3"]).default("file"), `The storage backend to use for Vault.
4505
+ backend: $addArgumentDescription38(z49.enum(["file", "s3"]).default("file"), `The storage backend to use for Vault.
4504
4506
 
4505
4507
  The options are:
4506
4508
  - \`file\`: uses a persistent volume claim and supports restic backups (default);
4507
4509
  - \`s3\`: uses an external S3-compatible bucket; expects \`s3Bucket\` input.`),
4508
- autoInit: $addArgumentDescription37(z48.object({
4509
- enabled: z48.boolean().default(true).meta({ title: __camelCaseToHumanReadable25("enabled"), description: `Whether to initialize Vault automatically using the Vault CLI.` }),
4510
- shares: z48.number().int().positive().default(1).meta({ title: __camelCaseToHumanReadable25("shares"), description: `The number of unseal key shares to create.` }),
4511
- threshold: z48.number().int().positive().default(1).meta({ title: __camelCaseToHumanReadable25("threshold"), description: `The number of unseal key shares required to unseal Vault.` })
4510
+ autoInit: $addArgumentDescription38(z49.object({
4511
+ enabled: z49.boolean().default(true).meta({ title: __camelCaseToHumanReadable25("enabled"), description: `Whether to initialize Vault automatically using the Vault CLI.` }),
4512
+ shares: z49.number().int().positive().default(1).meta({ title: __camelCaseToHumanReadable25("shares"), description: `The number of unseal key shares to create.` }),
4513
+ threshold: z49.number().int().positive().default(1).meta({ title: __camelCaseToHumanReadable25("threshold"), description: `The number of unseal key shares required to unseal Vault.` })
4512
4514
  }).refine((autoInit) => autoInit.threshold <= autoInit.shares, {
4513
4515
  message: "threshold must be less than or equal to shares",
4514
4516
  path: ["threshold"]
@@ -4520,12 +4522,12 @@ var vault = defineUnit46({
4520
4522
  },
4521
4523
  secrets: {
4522
4524
  ...pick23(sharedSecrets, ["backupKey"]),
4523
- rootToken: $addArgumentDescription37(z48.string().optional(), `The root token returned by \`vault operator init\`.`),
4524
- unsealKeys: $addArgumentDescription37(z48.string().array().meta({ complex: true }).optional(), `The unseal key shares returned by \`vault operator init\`.`)
4525
+ rootToken: $addArgumentDescription38(z49.string().optional(), `The root token returned by \`vault operator init\`.`),
4526
+ unsealKeys: $addArgumentDescription38(z49.string().array().meta({ complex: true }).optional(), `The unseal key shares returned by \`vault operator init\`.`)
4525
4527
  },
4526
4528
  inputs: {
4527
4529
  ...pick23(sharedInputs, ["k8sCluster", "accessPoint"]),
4528
- s3Bucket: $addInputDescription37({
4530
+ s3Bucket: $addInputDescription38({
4529
4531
  entity: exports_s3.bucketEntity,
4530
4532
  required: false
4531
4533
  }, `When \`backend\` is \`s3\`, supply an existing S3 bucket connection (see \`s3.bucketEntity\`).`),
@@ -4544,19 +4546,19 @@ var vault = defineUnit46({
4544
4546
  source: source("vault")
4545
4547
  });
4546
4548
  // src/k8s/apps/vaultwarden.ts
4547
- import { $addArgumentDescription as $addArgumentDescription38 } from "@highstate/contract";
4548
- import { defineUnit as defineUnit47, z as z49 } from "@highstate/contract";
4549
+ import { $addArgumentDescription as $addArgumentDescription39 } from "@highstate/contract";
4550
+ import { defineUnit as defineUnit47, z as z50 } from "@highstate/contract";
4549
4551
  import { pick as pick24 } from "remeda";
4550
4552
  var vaultwarden = defineUnit47({
4551
4553
  type: "k8s.apps.vaultwarden.v1",
4552
4554
  args: {
4553
4555
  ...appName("vaultwarden"),
4554
4556
  ...pick24(sharedArgs, ["fqdn"]),
4555
- allowSignup: $addArgumentDescription38(z49.boolean().default(false), `Whether signup is allowed for the Vaultwarden instance. Defaults to \`false\` for security reasons.`),
4556
- enableAdminPanel: $addArgumentDescription38(z49.boolean().default(true), `Whether admin panel is enabled. Defaults to \`true\`.`)
4557
+ allowSignup: $addArgumentDescription39(z50.boolean().default(false), `Whether signup is allowed for the Vaultwarden instance. Defaults to \`false\` for security reasons.`),
4558
+ enableAdminPanel: $addArgumentDescription39(z50.boolean().default(true), `Whether admin panel is enabled. Defaults to \`true\`.`)
4557
4559
  },
4558
4560
  secrets: {
4559
- adminToken: $addArgumentDescription38(z49.string().optional(), `The admin token for the Vaulwarden instance.
4561
+ adminToken: $addArgumentDescription39(z50.string().optional(), `The admin token for the Vaulwarden instance.
4560
4562
 
4561
4563
  Will be automatically generated if \`enableAdminPanel\` is \`true\`.`),
4562
4564
  ...pick24(sharedSecrets, ["backupKey"])
@@ -4574,16 +4576,26 @@ var vaultwarden = defineUnit47({
4574
4576
  source: source("vaultwarden")
4575
4577
  });
4576
4578
  // src/k8s/apps/wg-feed-server.ts
4577
- import { defineUnit as defineUnit48 } from "@highstate/contract";
4579
+ import { $addArgumentDescription as $addArgumentDescription40, $addInputDescription as $addInputDescription40 } from "@highstate/contract";
4580
+ import { defineUnit as defineUnit48, z as z51 } from "@highstate/contract";
4578
4581
  import { pick as pick25 } from "remeda";
4579
4582
  var wgFeedServer = defineUnit48({
4580
4583
  type: "k8s.apps.wg-feed-server.v1",
4581
4584
  args: {
4582
4585
  ...appName("wg-feed-server"),
4583
- ...pick25(sharedArgs, ["fqdn"])
4586
+ ...pick25(sharedArgs, ["fqdn", "replicas", "scheduling"]),
4587
+ pathPattern: $addArgumentDescription40(z51.string().optional(), `The regular expression matching paths served by the WG feed server.
4588
+
4589
+ Must be provided together with \`fallbackSite\`.`)
4584
4590
  },
4585
4591
  inputs: {
4586
- ...pick25(sharedInputs, ["k8sCluster", "accessPoint", "etcd"])
4592
+ ...pick25(sharedInputs, ["k8sCluster", "accessPoint", "etcd"]),
4593
+ fallbackSite: $addInputDescription40({
4594
+ entity: folderEntity,
4595
+ required: false
4596
+ }, `The static site served for paths that do not match \`pathPattern\`.
4597
+
4598
+ Must be provided together with \`pathPattern\`.`)
4587
4599
  },
4588
4600
  outputs: {
4589
4601
  endpoint: l4EndpointEntity
@@ -4599,10 +4611,10 @@ var wgFeedServer = defineUnit48({
4599
4611
  source: source("wg-feed-server")
4600
4612
  });
4601
4613
  // src/k8s/apps/workload.ts
4602
- import { $addArgumentDescription as $addArgumentDescription39 } from "@highstate/contract";
4603
- import { defineUnit as defineUnit49, z as z50 } from "@highstate/contract";
4614
+ import { $addArgumentDescription as $addArgumentDescription41 } from "@highstate/contract";
4615
+ import { defineUnit as defineUnit49, z as z52 } from "@highstate/contract";
4604
4616
  import { pick as pick26 } from "remeda";
4605
- var databaseConfigKeySchema = z50.enum([
4617
+ var databaseConfigKeySchema = z52.enum([
4606
4618
  "url",
4607
4619
  "host",
4608
4620
  "port",
@@ -4610,86 +4622,86 @@ var databaseConfigKeySchema = z50.enum([
4610
4622
  "password",
4611
4623
  "database"
4612
4624
  ]);
4613
- var environmentVariableSchema = z50.union([
4614
- z50.string(),
4615
- z50.object({
4616
- dependencyKey: z50.templateLiteral([
4617
- z50.enum(["mariadb", "postgresql", "mongodb"]),
4618
- z50.literal("."),
4625
+ var environmentVariableSchema = z52.union([
4626
+ z52.string(),
4627
+ z52.object({
4628
+ dependencyKey: z52.templateLiteral([
4629
+ z52.enum(["mariadb", "postgresql", "mongodb"]),
4630
+ z52.literal("."),
4619
4631
  databaseConfigKeySchema
4620
4632
  ])
4621
4633
  }),
4622
- z50.object({
4623
- configKey: z50.string()
4634
+ z52.object({
4635
+ configKey: z52.string()
4624
4636
  }),
4625
- z50.object({
4626
- secretKey: z50.string()
4637
+ z52.object({
4638
+ secretKey: z52.string()
4627
4639
  })
4628
4640
  ]);
4629
4641
  var workload = defineUnit49({
4630
4642
  type: "k8s.apps.workload.v0",
4631
4643
  args: {
4632
- appName: $addArgumentDescription39(z50.string().optional(), `The name of the application.
4644
+ appName: $addArgumentDescription41(z52.string().optional(), `The name of the application.
4633
4645
 
4634
4646
  If not provided, the name of the unit will be used.`),
4635
- namespace: $addArgumentDescription39(z50.string().optional(), `The name of the new namespace to create for the workload.
4647
+ namespace: $addArgumentDescription41(z52.string().optional(), `The name of the new namespace to create for the workload.
4636
4648
 
4637
4649
  If not provided, the \`appName\` will be used as the namespace name.`),
4638
- existingNamespace: $addArgumentDescription39(z50.string().optional(), `The name of the existing namespace to use for the workload.`),
4650
+ existingNamespace: $addArgumentDescription41(z52.string().optional(), `The name of the existing namespace to use for the workload.`),
4639
4651
  ...pick26(sharedArgs, ["external"]),
4640
4652
  ...serviceArg,
4641
4653
  ...schedulingArg,
4642
- type: $addArgumentDescription39(z50.enum(["Deployment", "StatefulSet", "DaemonSet", "Job", "CronJob"]).default("Deployment"), `The type of the workload to create.`),
4643
- image: $addArgumentDescription39(z50.string(), `The image to use for the workload.`),
4644
- command: $addArgumentDescription39(z50.array(z50.string()).default([]), `The command to run in the container.`),
4645
- port: $addArgumentDescription39(portSchema.optional(), `The port to expose for the workload.
4654
+ type: $addArgumentDescription41(z52.enum(["Deployment", "StatefulSet", "DaemonSet", "Job", "CronJob"]).default("Deployment"), `The type of the workload to create.`),
4655
+ image: $addArgumentDescription41(z52.string(), `The image to use for the workload.`),
4656
+ command: $addArgumentDescription41(z52.array(z52.string()).default([]), `The command to run in the container.`),
4657
+ port: $addArgumentDescription41(portSchema.optional(), `The port to expose for the workload.
4646
4658
 
4647
4659
  If specified, a service will be created for the workload.`),
4648
- fqdn: $addArgumentDescription39(z50.string().optional(), `The FQDN of the workload.
4660
+ fqdn: $addArgumentDescription41(z52.string().optional(), `The FQDN of the workload.
4649
4661
 
4650
4662
  If specified, a service and an HTTP route will be created for the workload.`),
4651
- replicas: $addArgumentDescription39(z50.number().default(1), `The number of replicas for the workload.
4663
+ replicas: $addArgumentDescription41(z52.number().default(1), `The number of replicas for the workload.
4652
4664
 
4653
4665
  By default, it is set to 1.`),
4654
- dataPath: $addArgumentDescription39(z50.string().optional(), `The path where the workload data will be stored.
4666
+ dataPath: $addArgumentDescription41(z52.string().optional(), `The path where the workload data will be stored.
4655
4667
 
4656
4668
  If specified, a persistent volume claim will be created for the workload.
4657
4669
 
4658
4670
  If \`resticRepo\` input is provided, the automatic backup will be enabled for this path.`),
4659
- env: $addArgumentDescription39(z50.record(z50.string(), environmentVariableSchema).default({}), `The environment variables to set for the workload.
4671
+ env: $addArgumentDescription41(z52.record(z52.string(), environmentVariableSchema).default({}), `The environment variables to set for the workload.
4660
4672
 
4661
4673
  The values can be:
4662
4674
  1. a static string value;
4663
4675
  2. a dependency key to service configuration (e.g., \`mariadb.username\`);
4664
4676
  3. a config key to reference a configuration value provided via \`config\` argument;
4665
4677
  4. a secret key to reference a secret value provided via \`secretData\` secret.`),
4666
- files: $addArgumentDescription39(z50.record(z50.string(), z50.string()).default({}), `The files to mount in the workload from a config map.`),
4667
- config: $addArgumentDescription39(z50.record(z50.string(), z50.unknown()).default({}), `The configuration for the workload.
4678
+ files: $addArgumentDescription41(z52.record(z52.string(), z52.string()).default({}), `The files to mount in the workload from a config map.`),
4679
+ config: $addArgumentDescription41(z52.record(z52.string(), z52.unknown()).default({}), `The configuration for the workload.
4668
4680
 
4669
4681
  If provided, the config map will be created.
4670
4682
 
4671
4683
  You can reference the configuration values in the environment variables using \`configKey\`.`),
4672
- manifest: $addArgumentDescription39(z50.record(z50.string(), z50.unknown()).default({}), `The Kubernetes manifest patch for the deployment.
4684
+ manifest: $addArgumentDescription41(z52.record(z52.string(), z52.unknown()).default({}), `The Kubernetes manifest patch for the deployment.
4673
4685
 
4674
4686
  Will be applied to the deployment manifest before it is created.`),
4675
- httpRouteManifest: $addArgumentDescription39(z50.record(z50.string(), z50.unknown()).default({}), `The Kubernetes HTTP route manifest for the deployment.
4687
+ httpRouteManifest: $addArgumentDescription41(z52.record(z52.string(), z52.unknown()).default({}), `The Kubernetes HTTP route manifest for the deployment.
4676
4688
 
4677
4689
  Will be applied to the HTTP route manifest before it is created.`)
4678
4690
  },
4679
4691
  secrets: {
4680
- mariadbPassword: $addArgumentDescription39(z50.string().optional(), `The password for the MariaDB database.
4692
+ mariadbPassword: $addArgumentDescription41(z52.string().optional(), `The password for the MariaDB database.
4681
4693
 
4682
4694
  If not provided and requested, a random password will be generated.`),
4683
- postgresqlPassword: $addArgumentDescription39(z50.string().optional(), `The password for the PostgreSQL database.
4695
+ postgresqlPassword: $addArgumentDescription41(z52.string().optional(), `The password for the PostgreSQL database.
4684
4696
 
4685
4697
  If not provided and requested, a random password will be generated.`),
4686
- mongodbPassword: $addArgumentDescription39(z50.string().optional(), `The password for the MongoDB database.
4698
+ mongodbPassword: $addArgumentDescription41(z52.string().optional(), `The password for the MongoDB database.
4687
4699
 
4688
4700
  If not provided and requested, a random password will be generated.`),
4689
- backupKey: $addArgumentDescription39(z50.string().optional(), `The key for the backup.
4701
+ backupKey: $addArgumentDescription41(z52.string().optional(), `The key for the backup.
4690
4702
 
4691
4703
  If not provided and requested, a random key will be generated.`),
4692
- secretData: $addArgumentDescription39(z50.record(z50.string(), z50.string()).default({}), `The secret configuration for the workload.
4704
+ secretData: $addArgumentDescription41(z52.record(z52.string(), z52.string()).default({}), `The secret configuration for the workload.
4693
4705
 
4694
4706
  If provided, the secret will be created with the specified content.
4695
4707
 
@@ -4719,19 +4731,19 @@ var workload = defineUnit49({
4719
4731
  source: source("workload")
4720
4732
  });
4721
4733
  // src/k8s/cert-manager.ts
4722
- import { $addArgumentDescription as $addArgumentDescription40, $addInputDescription as $addInputDescription40 } from "@highstate/contract";
4734
+ import { $addArgumentDescription as $addArgumentDescription42, $addInputDescription as $addInputDescription42 } from "@highstate/contract";
4723
4735
  import { camelCaseToHumanReadable as __camelCaseToHumanReadable26 } from "@highstate/contract";
4724
- import { defineUnit as defineUnit50, z as z51 } from "@highstate/contract";
4725
- var tlsIssuerDataSchema = z51.object({
4736
+ import { defineUnit as defineUnit50, z as z53 } from "@highstate/contract";
4737
+ var tlsIssuerDataSchema = z53.object({
4726
4738
  cluster: clusterEntity.schema.meta({ title: __camelCaseToHumanReadable26("cluster"), description: `The Kubernetes cluster to use for creating gateway routes.` }),
4727
- clusterIssuerName: z51.string().meta({ title: __camelCaseToHumanReadable26("clusterIssuerName"), description: `The name of the cluster issuer which should be used to issue TLS certificates.` })
4739
+ clusterIssuerName: z53.string().meta({ title: __camelCaseToHumanReadable26("clusterIssuerName"), description: `The name of the cluster issuer which should be used to issue TLS certificates.` })
4728
4740
  });
4729
4741
  var certManager = defineUnit50({
4730
4742
  type: "k8s.cert-manager.v1",
4731
4743
  args: {
4732
4744
  ...helmExtensionArgs,
4733
4745
  ...schedulingArg,
4734
- enableGatewayApi: $addArgumentDescription40(z51.boolean().default(false), `Whether to enable the native support for Gateway API in cert-manager.
4746
+ enableGatewayApi: $addArgumentDescription42(z53.boolean().default(false), `Whether to enable the native support for Gateway API in cert-manager.
4735
4747
 
4736
4748
  Note that this can conflict with "Gateway API" unit since it is bringing its own CRDs.`)
4737
4749
  },
@@ -4755,19 +4767,19 @@ var certManager = defineUnit50({
4755
4767
  var dns01TlsIssuer = defineUnit50({
4756
4768
  type: "k8s.dns01-issuer.v1",
4757
4769
  args: {
4758
- acmeServer: $addArgumentDescription40(z51.union([
4759
- z51.object({
4760
- type: z51.enum(["letsencrypt", "zerossl"])
4770
+ acmeServer: $addArgumentDescription42(z53.union([
4771
+ z53.object({
4772
+ type: z53.enum(["letsencrypt", "zerossl"])
4761
4773
  }),
4762
- z51.object({
4763
- type: z51.literal("custom"),
4764
- url: z51.string()
4774
+ z53.object({
4775
+ type: z53.literal("custom"),
4776
+ url: z53.string()
4765
4777
  })
4766
4778
  ]).default({ type: "letsencrypt" }), `The ACME server to use for issuing certificates.`)
4767
4779
  },
4768
4780
  secrets: {
4769
- eabKeyId: z51.string().optional(),
4770
- eabKeySecret: z51.string().optional()
4781
+ eabKeyId: z53.string().optional(),
4782
+ eabKeySecret: z53.string().optional()
4771
4783
  },
4772
4784
  inputs: {
4773
4785
  k8sCluster: clusterEntity,
@@ -4792,8 +4804,8 @@ var dns01TlsIssuer = defineUnit50({
4792
4804
  var vaultTlsIssuer = defineUnit50({
4793
4805
  type: "k8s.vault-issuer.v1",
4794
4806
  inputs: {
4795
- k8sCluster: $addInputDescription40(clusterEntity, `The Kubernetes cluster where the Vault issuer should be configured.`),
4796
- vaultPkiIssuer: $addInputDescription40(pkiIssuerEntity, `The Vault PKI issuer to use for issuing certificates.`)
4807
+ k8sCluster: $addInputDescription42(clusterEntity, `The Kubernetes cluster where the Vault issuer should be configured.`),
4808
+ vaultPkiIssuer: $addInputDescription42(pkiIssuerEntity, `The Vault PKI issuer to use for issuing certificates.`)
4797
4809
  },
4798
4810
  outputs: {
4799
4811
  tlsIssuer: tlsIssuerEntity
@@ -4812,18 +4824,18 @@ var vaultTlsIssuer = defineUnit50({
4812
4824
  }
4813
4825
  });
4814
4826
  // src/k8s/cilium.ts
4815
- import { $addArgumentDescription as $addArgumentDescription41 } from "@highstate/contract";
4827
+ import { $addArgumentDescription as $addArgumentDescription43 } from "@highstate/contract";
4816
4828
  import { camelCaseToHumanReadable as __camelCaseToHumanReadable27 } from "@highstate/contract";
4817
- import { defineUnit as defineUnit51, z as z52 } from "@highstate/contract";
4829
+ import { defineUnit as defineUnit51, z as z54 } from "@highstate/contract";
4818
4830
  var cilium = defineUnit51({
4819
4831
  type: "k8s.cilium.v1",
4820
4832
  args: {
4821
- allowForbiddenFqdnResolution: $addArgumentDescription41(z52.boolean().default(false), `If set to \`true\`, the generated network policy will allow
4833
+ allowForbiddenFqdnResolution: $addArgumentDescription43(z54.boolean().default(false), `If set to \`true\`, the generated network policy will allow
4822
4834
  all DNS queries to be resolved, even if they are
4823
4835
  for forbidden (non-allowed) FQDNs.
4824
4836
 
4825
4837
  By default, is \`false\`.`),
4826
- enableHubble: $addArgumentDescription41(z52.boolean().default(true), `Whether to enable Hubble Relay and UI for observability.
4838
+ enableHubble: $addArgumentDescription43(z54.boolean().default(true), `Whether to enable Hubble Relay and UI for observability.
4827
4839
 
4828
4840
  By default, this is \`true\`.
4829
4841
 
@@ -4849,9 +4861,9 @@ var cilium = defineUnit51({
4849
4861
  path: "unit"
4850
4862
  }
4851
4863
  });
4852
- var ciliumClusterMetadata = z52.object({
4853
- "cilium.cni": z52.object({
4854
- allowForbiddenFqdnResolution: z52.boolean().default(false).meta({ title: __camelCaseToHumanReadable27("allowForbiddenFqdnResolution"), description: `If set to \`true\`, the generated network policy will allow
4864
+ var ciliumClusterMetadata = z54.object({
4865
+ "cilium.cni": z54.object({
4866
+ allowForbiddenFqdnResolution: z54.boolean().default(false).meta({ title: __camelCaseToHumanReadable27("allowForbiddenFqdnResolution"), description: `If set to \`true\`, the generated network policy will allow
4855
4867
  all DNS queries to be resolved, even if they are
4856
4868
  for forbidden (non-allowed) FQDNs.
4857
4869
 
@@ -4859,24 +4871,24 @@ var ciliumClusterMetadata = z52.object({
4859
4871
  })
4860
4872
  });
4861
4873
  // src/k8s/coredns.ts
4862
- import { $addArgumentDescription as $addArgumentDescription42 } from "@highstate/contract";
4863
- import { defineUnit as defineUnit52, z as z53 } from "@highstate/contract";
4874
+ import { $addArgumentDescription as $addArgumentDescription44 } from "@highstate/contract";
4875
+ import { defineUnit as defineUnit52, z as z55 } from "@highstate/contract";
4864
4876
  var coreDns = defineUnit52({
4865
4877
  type: "k8s.coredns.v1",
4866
4878
  args: {
4867
4879
  ...schedulingArg,
4868
- mode: $addArgumentDescription42(z53.enum(["cluster", "node"]).default("cluster"), `The mode to use for CoreDNS deployment.
4880
+ mode: $addArgumentDescription44(z55.enum(["cluster", "node"]).default("cluster"), `The mode to use for CoreDNS deployment.
4869
4881
 
4870
4882
  \`cluster\` creates a regular Deployment with a small replica count.
4871
4883
  It is the default Kubernetes model and fits clusters with reliable pod/service networking between nodes.
4872
4884
 
4873
4885
  \`node\` creates a DaemonSet and configures the DNS Service to route only to node-local endpoints.
4874
4886
  It fits edge, NATed, or partitioned clusters where each node should answer DNS locally and avoid cross-node DNS traffic.`),
4875
- clusterDomain: $addArgumentDescription42(z53.string().default("cluster.local"), `The Kubernetes cluster DNS domain served by CoreDNS.`),
4876
- clusterIP: $addArgumentDescription42(z53.string().default("10.43.0.10"), `The stable Service IP to reserve for cluster DNS.
4887
+ clusterDomain: $addArgumentDescription44(z55.string().default("cluster.local"), `The Kubernetes cluster DNS domain served by CoreDNS.`),
4888
+ clusterIP: $addArgumentDescription44(z55.string().default("10.43.0.10"), `The stable Service IP to reserve for cluster DNS.
4877
4889
 
4878
4890
  The default matches the common K3s service CIDR.`),
4879
- useExternalKubeApi: $addArgumentDescription42(z53.boolean().default(false), `Whether CoreDNS should connect through the best external Kubernetes API endpoint.
4891
+ useExternalKubeApi: $addArgumentDescription44(z55.boolean().default(false), `Whether CoreDNS should connect through the best external Kubernetes API endpoint.
4880
4892
 
4881
4893
  By default, CoreDNS uses the in-cluster Kubernetes service endpoint.`)
4882
4894
  },
@@ -4905,14 +4917,14 @@ __export(exports_game_servers, {
4905
4917
  });
4906
4918
 
4907
4919
  // src/k8s/game-servers/openttd.ts
4908
- import { defineUnit as defineUnit53, z as z54 } from "@highstate/contract";
4920
+ import { defineUnit as defineUnit53, z as z56 } from "@highstate/contract";
4909
4921
  import { pick as pick27 } from "remeda";
4910
4922
  var openttd = defineUnit53({
4911
4923
  type: "k8s.game-servers.openttd.v1",
4912
4924
  args: {
4913
4925
  ...appName("openttd-server"),
4914
4926
  ...pick27(sharedArgs, ["fqdn"]),
4915
- port: z54.number().default(3979).describe("The port the game server will be exposed on.")
4927
+ port: z56.number().default(3979).describe("The port the game server will be exposed on.")
4916
4928
  },
4917
4929
  inputs: {
4918
4930
  ...pick27(sharedInputs, ["k8sCluster", "dnsProviders"]),
@@ -4932,14 +4944,14 @@ var openttd = defineUnit53({
4932
4944
  }
4933
4945
  });
4934
4946
  // src/k8s/game-servers/satisfactory.ts
4935
- import { defineUnit as defineUnit54, z as z55 } from "@highstate/contract";
4947
+ import { defineUnit as defineUnit54, z as z57 } from "@highstate/contract";
4936
4948
  import { pick as pick28 } from "remeda";
4937
4949
  var satisfactory = defineUnit54({
4938
4950
  type: "k8s.game-servers.satisfactory.v1",
4939
4951
  args: {
4940
4952
  ...appName("satisfactory-server"),
4941
4953
  ...pick28(sharedArgs, ["fqdn"]),
4942
- port: z55.number().default(7777).describe("The port the game server will be exposed on.")
4954
+ port: z57.number().default(7777).describe("The port the game server will be exposed on.")
4943
4955
  },
4944
4956
  inputs: {
4945
4957
  ...pick28(sharedInputs, ["k8sCluster", "accessPoint"]),
@@ -4959,31 +4971,31 @@ var satisfactory = defineUnit54({
4959
4971
  }
4960
4972
  });
4961
4973
  // src/k8s/gateway.ts
4962
- import { $addArgumentDescription as $addArgumentDescription43 } from "@highstate/contract";
4974
+ import { $addArgumentDescription as $addArgumentDescription45 } from "@highstate/contract";
4963
4975
  import { camelCaseToHumanReadable as __camelCaseToHumanReadable28 } from "@highstate/contract";
4964
- import { defineUnit as defineUnit55, z as z56 } from "@highstate/contract";
4965
- var semverVersionSchema = z56.string().regex(/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$/);
4966
- var gatewayDataSchema = z56.object({
4976
+ import { defineUnit as defineUnit55, z as z58 } from "@highstate/contract";
4977
+ var semverVersionSchema = z58.string().regex(/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$/);
4978
+ var gatewayDataSchema = z58.object({
4967
4979
  cluster: clusterEntity.schema.meta({ title: __camelCaseToHumanReadable28("cluster"), description: `The Kubernetes cluster to use for creating gateway routes.` }),
4968
4980
  namespace: namespaceEntity2.schema.meta({ title: __camelCaseToHumanReadable28("namespace"), description: `The namespace where the gateway controller of the class is running.` }),
4969
- className: z56.string().meta({ title: __camelCaseToHumanReadable28("className"), description: `The name of the gateway class to use.` }),
4970
- httpPort: z56.number().default(80).meta({ title: __camelCaseToHumanReadable28("httpPort"), description: `The port to use for HTTP in listener.
4981
+ className: z58.string().meta({ title: __camelCaseToHumanReadable28("className"), description: `The name of the gateway class to use.` }),
4982
+ httpPort: z58.number().default(80).meta({ title: __camelCaseToHumanReadable28("httpPort"), description: `The port to use for HTTP in listener.
4971
4983
 
4972
4984
  If not provided, defaults to 80.` }),
4973
- httpsPort: z56.number().default(443).meta({ title: __camelCaseToHumanReadable28("httpsPort"), description: `The port to use for HTTPS in listener.
4985
+ httpsPort: z58.number().default(443).meta({ title: __camelCaseToHumanReadable28("httpsPort"), description: `The port to use for HTTPS in listener.
4974
4986
 
4975
4987
  If not provided, defaults to 443.` }),
4976
4988
  controllerImplRef: implementationReferenceSchema.optional().meta({ title: __camelCaseToHumanReadable28("controllerImplRef"), description: `The nested implementation reference for the Gateway API controller.` })
4977
4989
  });
4978
- var gatewayImplRefSchema = z56.object({
4979
- package: z56.literal("@highstate/k8s"),
4990
+ var gatewayImplRefSchema = z58.object({
4991
+ package: z58.literal("@highstate/k8s"),
4980
4992
  data: gatewayDataSchema
4981
4993
  });
4982
4994
  var gatewayApi = defineUnit55({
4983
4995
  type: "k8s.gateway-api.v1",
4984
4996
  args: {
4985
- channel: $addArgumentDescription43(z56.enum(["stable", "experimental"]).default("stable"), `The Gateway API release channel to install.`),
4986
- version: $addArgumentDescription43(semverVersionSchema.optional(), `The Gateway API version to install.
4997
+ channel: $addArgumentDescription45(z58.enum(["stable", "experimental"]).default("stable"), `The Gateway API release channel to install.`),
4998
+ version: $addArgumentDescription45(semverVersionSchema.optional(), `The Gateway API version to install.
4987
4999
 
4988
5000
  Defaults to the latest stable version when using the stable channel.
4989
5001
  Must be specified when using the experimental channel.`)
@@ -5024,23 +5036,23 @@ __export(exports_phantun, {
5024
5036
  import { defineUnit as defineUnit56 } from "@highstate/contract";
5025
5037
 
5026
5038
  // src/k8s/obfuscators/shared.ts
5027
- import { $addArgumentDescription as $addArgumentDescription44, $addInputDescription as $addInputDescription44 } from "@highstate/contract";
5028
- import { $args as $args7, $inputs as $inputs3, $outputs as $outputs2, z as z57 } from "@highstate/contract";
5039
+ import { $addArgumentDescription as $addArgumentDescription46, $addInputDescription as $addInputDescription46 } from "@highstate/contract";
5040
+ import { $args as $args7, $inputs as $inputs3, $outputs as $outputs2, z as z59 } from "@highstate/contract";
5029
5041
  var deobfuscatorSpec = {
5030
5042
  args: $args7({
5031
- appName: $addArgumentDescription44(z57.string().optional(), `The name of the namespace and deployment to deploy the deobfuscator on.
5043
+ appName: $addArgumentDescription46(z59.string().optional(), `The name of the namespace and deployment to deploy the deobfuscator on.
5032
5044
 
5033
5045
  By default, calculated as \`deobfs-{type}-{name}\`.`),
5034
- targetEndpoints: $addArgumentDescription44(z57.string().array().default([]), `The L4 endpoint to forward deobfuscated traffic to.
5046
+ targetEndpoints: $addArgumentDescription46(z59.string().array().default([]), `The L4 endpoint to forward deobfuscated traffic to.
5035
5047
 
5036
5048
  Will take precedence over the \`targetEndpoint\` input.`),
5037
- external: $addArgumentDescription44(z57.boolean().default(false), `Whether to expose the deobfuscator service by "NodePort" or "LoadBalancer".
5049
+ external: $addArgumentDescription46(z59.boolean().default(false), `Whether to expose the deobfuscator service by "NodePort" or "LoadBalancer".
5038
5050
 
5039
5051
  By default, the service is not exposed and only accessible from within the cluster.`)
5040
5052
  }),
5041
5053
  inputs: $inputs3({
5042
- k8sCluster: $addInputDescription44(clusterEntity, `The Kubernetes cluster to deploy the deobfuscator on.`),
5043
- targetEndpoints: $addInputDescription44({
5054
+ k8sCluster: $addInputDescription46(clusterEntity, `The Kubernetes cluster to deploy the deobfuscator on.`),
5055
+ targetEndpoints: $addInputDescription46({
5044
5056
  entity: l4EndpointEntity,
5045
5057
  required: false,
5046
5058
  multiple: true
@@ -5049,7 +5061,7 @@ var deobfuscatorSpec = {
5049
5061
  Will select the most appropriate endpoint based on the environment.`)
5050
5062
  }),
5051
5063
  outputs: $outputs2({
5052
- endpoints: $addInputDescription44({
5064
+ endpoints: $addInputDescription46({
5053
5065
  entity: l4EndpointEntity,
5054
5066
  required: false,
5055
5067
  multiple: true
@@ -5058,19 +5070,19 @@ var deobfuscatorSpec = {
5058
5070
  };
5059
5071
  var obfuscatorSpec = {
5060
5072
  args: $args7({
5061
- appName: $addArgumentDescription44(z57.string().optional(), `The name of the namespace and deployment to deploy the obfuscator on.
5073
+ appName: $addArgumentDescription46(z59.string().optional(), `The name of the namespace and deployment to deploy the obfuscator on.
5062
5074
 
5063
5075
  By default, calculated as \`obfs-{type}-{name}\`.`),
5064
- endpoints: $addArgumentDescription44(z57.string().array().default([]), `The endpoint of the deobfuscator to pass obfuscated traffic to.
5076
+ endpoints: $addArgumentDescription46(z59.string().array().default([]), `The endpoint of the deobfuscator to pass obfuscated traffic to.
5065
5077
 
5066
5078
  Will take precedence over the \`endpoint\` input.`),
5067
- external: $addArgumentDescription44(z57.boolean().default(false), `Whether to expose the obfuscator service by "NodePort" or "LoadBalancer".
5079
+ external: $addArgumentDescription46(z59.boolean().default(false), `Whether to expose the obfuscator service by "NodePort" or "LoadBalancer".
5068
5080
 
5069
5081
  By default, the service is not exposed and only accessible from within the cluster.`)
5070
5082
  }),
5071
5083
  inputs: $inputs3({
5072
- k8sCluster: $addInputDescription44(clusterEntity, `The Kubernetes cluster to deploy the obfuscator on.`),
5073
- endpoints: $addInputDescription44({
5084
+ k8sCluster: $addInputDescription46(clusterEntity, `The Kubernetes cluster to deploy the obfuscator on.`),
5085
+ endpoints: $addInputDescription46({
5074
5086
  entity: l4EndpointEntity,
5075
5087
  required: false,
5076
5088
  multiple: true
@@ -5079,7 +5091,7 @@ var obfuscatorSpec = {
5079
5091
  Will select the most appropriate endpoint based on the environment.`)
5080
5092
  }),
5081
5093
  outputs: $outputs2({
5082
- entryEndpoints: $addInputDescription44({
5094
+ entryEndpoints: $addInputDescription46({
5083
5095
  entity: l4EndpointEntity,
5084
5096
  multiple: true
5085
5097
  }, `The L4 endpoints accepting unobfuscated traffic.`)
@@ -5118,9 +5130,9 @@ var obfuscator = defineUnit56({
5118
5130
  }
5119
5131
  });
5120
5132
  // src/k8s/reduced-access.ts
5121
- import { $addArgumentDescription as $addArgumentDescription45, $addInputDescription as $addInputDescription45 } from "@highstate/contract";
5122
- import { defineUnit as defineUnit57, z as z58 } from "@highstate/contract";
5123
- var accessVerbSchema = z58.enum([
5133
+ import { $addArgumentDescription as $addArgumentDescription47, $addInputDescription as $addInputDescription47 } from "@highstate/contract";
5134
+ import { defineUnit as defineUnit57, z as z60 } from "@highstate/contract";
5135
+ var accessVerbSchema = z60.enum([
5124
5136
  "get",
5125
5137
  "list",
5126
5138
  "watch",
@@ -5130,32 +5142,32 @@ var accessVerbSchema = z58.enum([
5130
5142
  "delete",
5131
5143
  "deletecollection"
5132
5144
  ]);
5133
- var acessRuleSchema = z58.object({
5134
- apiGroups: z58.string().array(),
5135
- resources: z58.string().array(),
5145
+ var acessRuleSchema = z60.object({
5146
+ apiGroups: z60.string().array(),
5147
+ resources: z60.string().array(),
5136
5148
  verbs: accessVerbSchema.array(),
5137
- resourceNames: z58.string().array().default([])
5149
+ resourceNames: z60.string().array().default([])
5138
5150
  });
5139
5151
  var reducedAccessCluster = defineUnit57({
5140
5152
  type: "k8s.reduced-access-cluster.v1",
5141
5153
  args: {
5142
- serviceAccountName: $addArgumentDescription45(z58.string().optional(), `The name of the ServiceAccount to create.
5154
+ serviceAccountName: $addArgumentDescription47(z60.string().optional(), `The name of the ServiceAccount to create.
5143
5155
 
5144
5156
  If not provided, will be the same as the unit name.`),
5145
- rules: $addArgumentDescription45(acessRuleSchema.array().default([]), `The rules defining the access permissions for the ServiceAccount.
5157
+ rules: $addArgumentDescription47(acessRuleSchema.array().default([]), `The rules defining the access permissions for the ServiceAccount.
5146
5158
 
5147
5159
  If rule's \`apiGroups\` and \`resources\` exactly match resources from the \`resources\` input,
5148
5160
  their names will be added to the rule's \`resourceNames\` list.`)
5149
5161
  },
5150
5162
  inputs: {
5151
5163
  k8sCluster: clusterEntity,
5152
- namespace: $addInputDescription45(namespaceEntity2, `The namespace where the ServiceAccount will be created.`),
5153
- extraNamespaces: $addInputDescription45({
5164
+ namespace: $addInputDescription47(namespaceEntity2, `The namespace where the ServiceAccount will be created.`),
5165
+ extraNamespaces: $addInputDescription47({
5154
5166
  entity: namespaceEntity2,
5155
5167
  multiple: true,
5156
5168
  required: false
5157
5169
  }, `The extra namespaces to bind to the ClusterRole and allow ServiceAccount to access them with specified rules.`),
5158
- resources: $addInputDescription45({
5170
+ resources: $addInputDescription47({
5159
5171
  entity: resourceEntity,
5160
5172
  multiple: true,
5161
5173
  required: false
@@ -5190,24 +5202,24 @@ __export(exports_netaminity, {
5190
5202
  gatewayDataSchema: () => gatewayDataSchema2,
5191
5203
  gateway: () => gateway2
5192
5204
  });
5193
- import { $addArgumentDescription as $addArgumentDescription46, $addInputDescription as $addInputDescription46 } from "@highstate/contract";
5205
+ import { $addArgumentDescription as $addArgumentDescription48, $addInputDescription as $addInputDescription48 } from "@highstate/contract";
5194
5206
  import { camelCaseToHumanReadable as __camelCaseToHumanReadable29 } from "@highstate/contract";
5195
5207
  import {
5196
5208
  defineEntity as defineEntity30,
5197
5209
  defineUnit as defineUnit58,
5198
5210
  secretSchema as secretSchema14,
5199
- z as z59
5211
+ z as z61
5200
5212
  } from "@highstate/contract";
5201
5213
  var source2 = (path) => ({
5202
5214
  package: "@highstate/netaminity",
5203
5215
  path
5204
5216
  });
5205
- var portSchema2 = z59.number().int().min(1).max(65535);
5206
- var serviceTypeSchema2 = z59.enum(["ClusterIP", "NodePort", "LoadBalancer"]);
5207
- var podTemplateSchema = z59.record(z59.string(), z59.unknown()).default({});
5208
- var replicasSchema = z59.number().int().min(1).default(1);
5209
- var oddReplicasSchema = z59.number().int().min(1).refine((replicas) => replicas % 2 === 1, "Netaminity replicas must be odd").default(1);
5210
- var gatewayDataSchema2 = z59.object({
5217
+ var portSchema2 = z61.number().int().min(1).max(65535);
5218
+ var serviceTypeSchema2 = z61.enum(["ClusterIP", "NodePort", "LoadBalancer"]);
5219
+ var podTemplateSchema = z61.record(z61.string(), z61.unknown()).default({});
5220
+ var replicasSchema = z61.number().int().min(1).default(1);
5221
+ var oddReplicasSchema = z61.number().int().min(1).refine((replicas) => replicas % 2 === 1, "Netaminity replicas must be odd").default(1);
5222
+ var gatewayDataSchema2 = z61.object({
5211
5223
  proxyGateway: gatewayEntity.schema.meta({ title: __camelCaseToHumanReadable29("proxyGateway"), description: `The proxy-side gateway that accepts public TLS traffic.` }),
5212
5224
  targetGateway: gatewayEntity.schema.meta({ title: __camelCaseToHumanReadable29("targetGateway"), description: `The target-side gateway that terminates TLS and routes requests.` }),
5213
5225
  proxyImplRef: implementationReferenceSchema.meta({ title: __camelCaseToHumanReadable29("proxyImplRef"), description: `The implementation reference used to create proxy-side TLS routes.` }),
@@ -5229,9 +5241,9 @@ var proxyEntity = defineEntity30({
5229
5241
  required: false
5230
5242
  }
5231
5243
  },
5232
- schema: z59.object({
5233
- proxyEndpoint: z59.string().meta({ title: __camelCaseToHumanReadable29("proxyEndpoint"), description: `The control endpoint where Netaminity targets connect to the proxy.` }),
5234
- sharedSecret: secretSchema14(z59.string()).meta({ title: __camelCaseToHumanReadable29("sharedSecret"), description: `The shared authentication secret used by the proxy and its targets.` })
5244
+ schema: z61.object({
5245
+ proxyEndpoint: z61.string().meta({ title: __camelCaseToHumanReadable29("proxyEndpoint"), description: `The control endpoint where Netaminity targets connect to the proxy.` }),
5246
+ sharedSecret: secretSchema14(z61.string()).meta({ title: __camelCaseToHumanReadable29("sharedSecret"), description: `The shared authentication secret used by the proxy and its targets.` })
5235
5247
  }),
5236
5248
  meta: {
5237
5249
  color: "#477D75",
@@ -5244,7 +5256,7 @@ var proxyEntity = defineEntity30({
5244
5256
  var targetEntity = defineEntity30({
5245
5257
  type: "netaminity.target.v1",
5246
5258
  extends: { namespacedResourceEntity },
5247
- schema: z59.unknown(),
5259
+ schema: z61.unknown(),
5248
5260
  meta: {
5249
5261
  color: "#8064A2",
5250
5262
  title: "Netaminity Target",
@@ -5264,7 +5276,7 @@ var tunnelEntity = defineEntity30({
5264
5276
  required: false
5265
5277
  }
5266
5278
  },
5267
- schema: z59.unknown(),
5279
+ schema: z61.unknown(),
5268
5280
  meta: {
5269
5281
  color: "#2878A0",
5270
5282
  title: "Netaminity Tunnel",
@@ -5278,17 +5290,17 @@ var operator = defineUnit58({
5278
5290
  args: {
5279
5291
  ...helmExtensionArgs,
5280
5292
  ...schedulingArg,
5281
- replicas: $addArgumentDescription46(oddReplicasSchema, `The number of Netaminity operator replicas.
5293
+ replicas: $addArgumentDescription48(oddReplicasSchema, `The number of Netaminity operator replicas.
5282
5294
 
5283
5295
  Leader election ensures that only one replica actively reconciles resources.
5284
5296
  The replica count must be odd.`),
5285
- proxyHost: $addArgumentDescription46(z59.string().optional(), `The hostname or IP address used to advertise NodePort proxy control Services.
5297
+ proxyHost: $addArgumentDescription48(z61.string().optional(), `The hostname or IP address used to advertise NodePort proxy control Services.
5286
5298
 
5287
5299
  When omitted, the proxy host input or the first cluster endpoint is used.`)
5288
5300
  },
5289
5301
  inputs: {
5290
- k8sCluster: $addInputDescription46(clusterEntity, `The Kubernetes cluster where the Netaminity operator should be installed.`),
5291
- proxyHost: $addInputDescription46({
5302
+ k8sCluster: $addInputDescription48(clusterEntity, `The Kubernetes cluster where the Netaminity operator should be installed.`),
5303
+ proxyHost: $addInputDescription48({
5292
5304
  entity: l3EndpointEntity,
5293
5305
  required: false
5294
5306
  }, `The hostname or IP address used to advertise NodePort proxy control Services.
@@ -5296,7 +5308,7 @@ var operator = defineUnit58({
5296
5308
  The first cluster endpoint is used when this input and the proxyHost argument are omitted.`)
5297
5309
  },
5298
5310
  outputs: {
5299
- k8sCluster: $addInputDescription46(clusterEntity, `The Kubernetes cluster after the Netaminity operator has been installed.`)
5311
+ k8sCluster: $addInputDescription48(clusterEntity, `The Kubernetes cluster after the Netaminity operator has been installed.`)
5300
5312
  },
5301
5313
  meta: {
5302
5314
  description: `Installs the Netaminity operator on a Kubernetes cluster.`,
@@ -5310,58 +5322,58 @@ var operator = defineUnit58({
5310
5322
  var proxy = defineUnit58({
5311
5323
  type: "netaminity.proxy.v1",
5312
5324
  args: {
5313
- resourceName: $addArgumentDescription46(z59.string().optional(), `The name of the Proxy custom resource.
5325
+ resourceName: $addArgumentDescription48(z61.string().optional(), `The name of the Proxy custom resource.
5314
5326
 
5315
5327
  If omitted, the unit name is used.`),
5316
- namespace: $addArgumentDescription46(z59.string().optional(), `The name of the Kubernetes namespace to create for the proxy.
5328
+ namespace: $addArgumentDescription48(z61.string().optional(), `The name of the Kubernetes namespace to create for the proxy.
5317
5329
 
5318
5330
  Ignored when the namespace input is provided.`),
5319
- serviceEnabled: $addArgumentDescription46(z59.boolean().default(true), `Whether to create a Service for consumers of the proxied target.`),
5320
- serviceName: $addArgumentDescription46(z59.string().optional(), `The name of the consumer Service.
5331
+ serviceEnabled: $addArgumentDescription48(z61.boolean().default(true), `Whether to create a Service for consumers of the proxied target.`),
5332
+ serviceName: $addArgumentDescription48(z61.string().optional(), `The name of the consumer Service.
5321
5333
 
5322
5334
  If omitted, the Proxy resource name is used.`),
5323
- servicePort: $addArgumentDescription46(portSchema2.optional(), `The TCP port exposed by the consumer Service.
5335
+ servicePort: $addArgumentDescription48(portSchema2.optional(), `The TCP port exposed by the consumer Service.
5324
5336
 
5325
5337
  When omitted, the port of the first endpoint input is used.`),
5326
- external: $addArgumentDescription46(z59.boolean().default(false), `Whether to expose the consumer Service outside the cluster.
5338
+ external: $addArgumentDescription48(z61.boolean().default(false), `Whether to expose the consumer Service outside the cluster.
5327
5339
 
5328
5340
  The Service type is selected automatically from the cluster configuration.`),
5329
- proxyServiceName: $addArgumentDescription46(z59.string().optional(), `The name of the control Service used by targets.`),
5330
- proxyServiceType: $addArgumentDescription46(serviceTypeSchema2.default("NodePort"), `The Kubernetes type of the control Service used by targets.`),
5331
- proxyNodePort: $addArgumentDescription46(portSchema2.optional(), `The fixed NodePort for the control Service.
5341
+ proxyServiceName: $addArgumentDescription48(z61.string().optional(), `The name of the control Service used by targets.`),
5342
+ proxyServiceType: $addArgumentDescription48(serviceTypeSchema2.default("NodePort"), `The Kubernetes type of the control Service used by targets.`),
5343
+ proxyNodePort: $addArgumentDescription48(portSchema2.optional(), `The fixed NodePort for the control Service.
5332
5344
 
5333
5345
  Kubernetes assigns one when omitted.`),
5334
- replicas: $addArgumentDescription46(replicasSchema, `The number of interchangeable proxy pods behind the Proxy Services.`),
5335
- hostNetwork: $addArgumentDescription46(z59.boolean().default(false), `Whether generated proxy pods use the node network namespace.`),
5336
- distributeByNodes: $addArgumentDescription46(z59.boolean().default(true), `Whether generated proxy pods prefer distribution across Kubernetes nodes.`),
5337
- podTemplate: $addArgumentDescription46(podTemplateSchema, `The raw Netaminity pod template applied to the generated proxy pod.`)
5346
+ replicas: $addArgumentDescription48(replicasSchema, `The number of interchangeable proxy pods behind the Proxy Services.`),
5347
+ hostNetwork: $addArgumentDescription48(z61.boolean().default(false), `Whether generated proxy pods use the node network namespace.`),
5348
+ distributeByNodes: $addArgumentDescription48(z61.boolean().default(true), `Whether generated proxy pods prefer distribution across Kubernetes nodes.`),
5349
+ podTemplate: $addArgumentDescription48(podTemplateSchema, `The raw Netaminity pod template applied to the generated proxy pod.`)
5338
5350
  },
5339
5351
  secrets: {
5340
- sharedSecret: $addArgumentDescription46(z59.string().optional(), `The shared authentication secret used by the proxy and its targets.
5352
+ sharedSecret: $addArgumentDescription48(z61.string().optional(), `The shared authentication secret used by the proxy and its targets.
5341
5353
 
5342
5354
  A random key is generated when omitted.`)
5343
5355
  },
5344
5356
  inputs: {
5345
- k8sCluster: $addInputDescription46(clusterEntity, `The Kubernetes cluster with the Netaminity operator installed.`),
5346
- endpoints: $addInputDescription46({
5357
+ k8sCluster: $addInputDescription48(clusterEntity, `The Kubernetes cluster with the Netaminity operator installed.`),
5358
+ endpoints: $addInputDescription48({
5347
5359
  entity: l4EndpointEntity,
5348
5360
  multiple: true,
5349
5361
  required: false
5350
5362
  }, `The target TCP endpoints whose port should be exposed by the consumer Service.
5351
5363
 
5352
5364
  The first endpoint's port is used when the servicePort argument is omitted.`),
5353
- namespace: $addInputDescription46({
5365
+ namespace: $addInputDescription48({
5354
5366
  entity: namespaceEntity2,
5355
5367
  required: false
5356
5368
  }, `The existing Kubernetes namespace where the proxy should be created.`)
5357
5369
  },
5358
5370
  outputs: {
5359
- proxy: $addInputDescription46(proxyEntity, `The Netaminity proxy, including its control endpoint and shared secret.`),
5360
- service: $addInputDescription46({
5371
+ proxy: $addInputDescription48(proxyEntity, `The Netaminity proxy, including its control endpoint and shared secret.`),
5372
+ service: $addInputDescription48({
5361
5373
  entity: serviceEntity,
5362
5374
  required: false
5363
5375
  }, `The consumer Service created for the proxy.`),
5364
- endpoints: $addInputDescription46({
5376
+ endpoints: $addInputDescription48({
5365
5377
  entity: l4EndpointEntity,
5366
5378
  multiple: true
5367
5379
  }, `The endpoints where consumers can access the proxied service.`)
@@ -5379,36 +5391,36 @@ var proxy = defineUnit58({
5379
5391
  var target = defineUnit58({
5380
5392
  type: "netaminity.target.v1",
5381
5393
  args: {
5382
- resourceName: $addArgumentDescription46(z59.string().optional(), `The name of the Target custom resource.
5394
+ resourceName: $addArgumentDescription48(z61.string().optional(), `The name of the Target custom resource.
5383
5395
 
5384
5396
  If omitted, the unit name is used.`),
5385
- namespace: $addArgumentDescription46(z59.string().optional(), `The name of the Kubernetes namespace to create for the target.
5397
+ namespace: $addArgumentDescription48(z61.string().optional(), `The name of the Kubernetes namespace to create for the target.
5386
5398
 
5387
5399
  Ignored when the namespace input is provided.`),
5388
- endpoint: $addArgumentDescription46(z59.string().min(3).optional(), `The target TCP endpoint reachable from the generated target pod.
5400
+ endpoint: $addArgumentDescription48(z61.string().min(3).optional(), `The target TCP endpoint reachable from the generated target pod.
5389
5401
 
5390
5402
  When omitted, the first endpoint input is used.`),
5391
- hostNetwork: $addArgumentDescription46(z59.boolean().default(false), `Whether the generated target pod uses the node network namespace.`),
5392
- distributeByNodes: $addArgumentDescription46(z59.boolean().default(true), `Whether the generated target pod prefers distribution across Kubernetes nodes.`),
5393
- podTemplate: $addArgumentDescription46(podTemplateSchema, `The raw Netaminity pod template applied to the generated target pod.`)
5403
+ hostNetwork: $addArgumentDescription48(z61.boolean().default(false), `Whether the generated target pod uses the node network namespace.`),
5404
+ distributeByNodes: $addArgumentDescription48(z61.boolean().default(true), `Whether the generated target pod prefers distribution across Kubernetes nodes.`),
5405
+ podTemplate: $addArgumentDescription48(podTemplateSchema, `The raw Netaminity pod template applied to the generated target pod.`)
5394
5406
  },
5395
5407
  inputs: {
5396
- k8sCluster: $addInputDescription46(clusterEntity, `The Kubernetes cluster with the Netaminity operator installed.`),
5397
- proxy: $addInputDescription46(proxyEntity, `The standalone Netaminity proxy to connect the target to.`),
5398
- endpoints: $addInputDescription46({
5408
+ k8sCluster: $addInputDescription48(clusterEntity, `The Kubernetes cluster with the Netaminity operator installed.`),
5409
+ proxy: $addInputDescription48(proxyEntity, `The standalone Netaminity proxy to connect the target to.`),
5410
+ endpoints: $addInputDescription48({
5399
5411
  entity: l4EndpointEntity,
5400
5412
  multiple: true,
5401
5413
  required: false
5402
5414
  }, `The target TCP endpoints reachable from the generated target pod.
5403
5415
 
5404
5416
  The first endpoint is used when the endpoint argument is omitted.`),
5405
- namespace: $addInputDescription46({
5417
+ namespace: $addInputDescription48({
5406
5418
  entity: namespaceEntity2,
5407
5419
  required: false
5408
5420
  }, `The existing Kubernetes namespace where the target should be created.`)
5409
5421
  },
5410
5422
  outputs: {
5411
- target: $addInputDescription46(targetEntity, `The created Netaminity target resource.`)
5423
+ target: $addInputDescription48(targetEntity, `The created Netaminity target resource.`)
5412
5424
  },
5413
5425
  meta: {
5414
5426
  description: `Creates a Netaminity target connected to a standalone proxy.`,
@@ -5423,54 +5435,54 @@ var target = defineUnit58({
5423
5435
  var tunnel = defineUnit58({
5424
5436
  type: "netaminity.tunnel.v1",
5425
5437
  args: {
5426
- resourceName: $addArgumentDescription46(z59.string().optional(), `The name of the Tunnel custom resource.
5438
+ resourceName: $addArgumentDescription48(z61.string().optional(), `The name of the Tunnel custom resource.
5427
5439
 
5428
5440
  If omitted, the unit name is used.`),
5429
- namespace: $addArgumentDescription46(z59.string().optional(), `The name of the Kubernetes namespace to create for the tunnel.
5441
+ namespace: $addArgumentDescription48(z61.string().optional(), `The name of the Kubernetes namespace to create for the tunnel.
5430
5442
 
5431
5443
  Ignored when the namespace input is provided.`),
5432
- replicas: $addArgumentDescription46(replicasSchema, `The number of proxy and target pairs created for the tunnel.`),
5433
- proxyReplicas: $addArgumentDescription46(replicasSchema, `The number of interchangeable proxy pods created for each Proxy resource.`),
5434
- hostNetwork: $addArgumentDescription46(z59.boolean().default(false), `Whether generated proxy and target pods use their node network namespace.`),
5435
- distributeByNodes: $addArgumentDescription46(z59.boolean().default(true), `Whether generated proxy and target pods prefer distribution across Kubernetes nodes.`),
5436
- endpoint: $addArgumentDescription46(z59.string().min(3).optional(), `The target TCP endpoint reachable from generated target pods.
5444
+ replicas: $addArgumentDescription48(replicasSchema, `The number of proxy and target pairs created for the tunnel.`),
5445
+ proxyReplicas: $addArgumentDescription48(replicasSchema, `The number of interchangeable proxy pods created for each Proxy resource.`),
5446
+ hostNetwork: $addArgumentDescription48(z61.boolean().default(false), `Whether generated proxy and target pods use their node network namespace.`),
5447
+ distributeByNodes: $addArgumentDescription48(z61.boolean().default(true), `Whether generated proxy and target pods prefer distribution across Kubernetes nodes.`),
5448
+ endpoint: $addArgumentDescription48(z61.string().min(3).optional(), `The target TCP endpoint reachable from generated target pods.
5437
5449
 
5438
5450
  When omitted, the first endpoint input is used.`),
5439
- serviceName: $addArgumentDescription46(z59.string().optional(), `The name of the consumer Service.
5451
+ serviceName: $addArgumentDescription48(z61.string().optional(), `The name of the consumer Service.
5440
5452
 
5441
5453
  If omitted, the Tunnel resource name is used.`),
5442
- servicePort: $addArgumentDescription46(portSchema2.optional(), `The TCP port exposed by the consumer Service.
5454
+ servicePort: $addArgumentDescription48(portSchema2.optional(), `The TCP port exposed by the consumer Service.
5443
5455
 
5444
5456
  When omitted, the destination endpoint port is used.`),
5445
- external: $addArgumentDescription46(z59.boolean().default(false), `Whether to expose the consumer Service outside the cluster.
5457
+ external: $addArgumentDescription48(z61.boolean().default(false), `Whether to expose the consumer Service outside the cluster.
5446
5458
 
5447
5459
  The Service type is selected automatically from the cluster configuration.`),
5448
- proxyServiceType: $addArgumentDescription46(serviceTypeSchema2.default("NodePort"), `The Kubernetes type of the control Services used by generated targets.`),
5449
- proxyNodePort: $addArgumentDescription46(portSchema2.optional(), `The first fixed NodePort assigned to generated proxy control Services.
5460
+ proxyServiceType: $addArgumentDescription48(serviceTypeSchema2.default("NodePort"), `The Kubernetes type of the control Services used by generated targets.`),
5461
+ proxyNodePort: $addArgumentDescription48(portSchema2.optional(), `The first fixed NodePort assigned to generated proxy control Services.
5450
5462
 
5451
5463
  Replica indexes are added to this value.`),
5452
- podTemplate: $addArgumentDescription46(podTemplateSchema, `The raw base pod template inherited by generated proxy and target pods.`),
5453
- proxyPodTemplate: $addArgumentDescription46(podTemplateSchema, `The raw pod template merged into generated proxy pods.`),
5454
- targetPodTemplate: $addArgumentDescription46(podTemplateSchema, `The raw pod template merged into generated target pods.`)
5464
+ podTemplate: $addArgumentDescription48(podTemplateSchema, `The raw base pod template inherited by generated proxy and target pods.`),
5465
+ proxyPodTemplate: $addArgumentDescription48(podTemplateSchema, `The raw pod template merged into generated proxy pods.`),
5466
+ targetPodTemplate: $addArgumentDescription48(podTemplateSchema, `The raw pod template merged into generated target pods.`)
5455
5467
  },
5456
5468
  inputs: {
5457
- k8sCluster: $addInputDescription46(clusterEntity, `The Kubernetes cluster with the Netaminity operator installed.`),
5458
- endpoints: $addInputDescription46({
5469
+ k8sCluster: $addInputDescription48(clusterEntity, `The Kubernetes cluster with the Netaminity operator installed.`),
5470
+ endpoints: $addInputDescription48({
5459
5471
  entity: l4EndpointEntity,
5460
5472
  multiple: true,
5461
5473
  required: false
5462
5474
  }, `The target TCP endpoints reachable from generated target pods.
5463
5475
 
5464
5476
  The first endpoint is used when the endpoint argument is omitted.`),
5465
- namespace: $addInputDescription46({
5477
+ namespace: $addInputDescription48({
5466
5478
  entity: namespaceEntity2,
5467
5479
  required: false
5468
5480
  }, `The existing Kubernetes namespace where the tunnel should be created.`)
5469
5481
  },
5470
5482
  outputs: {
5471
- tunnel: $addInputDescription46(tunnelEntity, `The created Netaminity tunnel resource.`),
5472
- service: $addInputDescription46(serviceEntity, `The consumer Service created for the tunnel.`),
5473
- endpoints: $addInputDescription46({
5483
+ tunnel: $addInputDescription48(tunnelEntity, `The created Netaminity tunnel resource.`),
5484
+ service: $addInputDescription48(serviceEntity, `The consumer Service created for the tunnel.`),
5485
+ endpoints: $addInputDescription48({
5474
5486
  entity: l4EndpointEntity,
5475
5487
  multiple: true
5476
5488
  }, `The endpoints where consumers can access the tunnel.`)
@@ -5488,66 +5500,66 @@ var tunnel = defineUnit58({
5488
5500
  var tunnelMc = defineUnit58({
5489
5501
  type: "netaminity.tunnel.mc.v1",
5490
5502
  args: {
5491
- resourceName: $addArgumentDescription46(z59.string().optional(), `The base name of the generated Proxy and Target custom resources.
5503
+ resourceName: $addArgumentDescription48(z61.string().optional(), `The base name of the generated Proxy and Target custom resources.
5492
5504
 
5493
5505
  If omitted, the unit name is used.`),
5494
- proxyNamespace: $addArgumentDescription46(z59.string().optional(), `The name of the Kubernetes namespace to create in the proxy cluster.
5506
+ proxyNamespace: $addArgumentDescription48(z61.string().optional(), `The name of the Kubernetes namespace to create in the proxy cluster.
5495
5507
 
5496
5508
  Ignored when the proxyNamespace input is provided.`),
5497
- targetNamespace: $addArgumentDescription46(z59.string().optional(), `The name of the Kubernetes namespace to create in the target cluster.
5509
+ targetNamespace: $addArgumentDescription48(z61.string().optional(), `The name of the Kubernetes namespace to create in the target cluster.
5498
5510
 
5499
5511
  Ignored when the targetNamespace input is provided.`),
5500
- replicas: $addArgumentDescription46(replicasSchema, `The number of Proxy and Target pairs created for the tunnel.`),
5501
- proxyReplicas: $addArgumentDescription46(replicasSchema, `The number of interchangeable proxy pods created for each Proxy resource.`),
5502
- hostNetwork: $addArgumentDescription46(z59.boolean().default(false), `Whether generated Proxy and Target pods use their node network namespace.`),
5503
- distributeByNodes: $addArgumentDescription46(z59.boolean().default(true), `Whether generated Proxy and Target pods prefer distribution across Kubernetes nodes.`),
5504
- endpoint: $addArgumentDescription46(z59.string().min(3).optional(), `The target TCP endpoint reachable from generated Target pods.
5512
+ replicas: $addArgumentDescription48(replicasSchema, `The number of Proxy and Target pairs created for the tunnel.`),
5513
+ proxyReplicas: $addArgumentDescription48(replicasSchema, `The number of interchangeable proxy pods created for each Proxy resource.`),
5514
+ hostNetwork: $addArgumentDescription48(z61.boolean().default(false), `Whether generated Proxy and Target pods use their node network namespace.`),
5515
+ distributeByNodes: $addArgumentDescription48(z61.boolean().default(true), `Whether generated Proxy and Target pods prefer distribution across Kubernetes nodes.`),
5516
+ endpoint: $addArgumentDescription48(z61.string().min(3).optional(), `The target TCP endpoint reachable from generated Target pods.
5505
5517
 
5506
5518
  When omitted, the first endpoint input is used.`),
5507
- serviceName: $addArgumentDescription46(z59.string().optional(), `The name of the shared consumer Service in the proxy cluster.
5519
+ serviceName: $addArgumentDescription48(z61.string().optional(), `The name of the shared consumer Service in the proxy cluster.
5508
5520
 
5509
5521
  If omitted, the base resource name is used.`),
5510
- servicePort: $addArgumentDescription46(portSchema2.optional(), `The TCP port exposed by the shared consumer Service.
5522
+ servicePort: $addArgumentDescription48(portSchema2.optional(), `The TCP port exposed by the shared consumer Service.
5511
5523
 
5512
5524
  When omitted, the destination endpoint port is used.`),
5513
- external: $addArgumentDescription46(z59.boolean().default(false), `Whether to expose the shared consumer Service outside the proxy cluster.
5525
+ external: $addArgumentDescription48(z61.boolean().default(false), `Whether to expose the shared consumer Service outside the proxy cluster.
5514
5526
 
5515
5527
  The Service type is selected automatically from the proxy cluster configuration.`),
5516
- proxyServiceType: $addArgumentDescription46(serviceTypeSchema2.default("NodePort"), `The Kubernetes type of the control Services used by generated Targets.`),
5517
- proxyNodePort: $addArgumentDescription46(portSchema2.optional(), `The first fixed NodePort assigned to generated Proxy control Services.
5528
+ proxyServiceType: $addArgumentDescription48(serviceTypeSchema2.default("NodePort"), `The Kubernetes type of the control Services used by generated Targets.`),
5529
+ proxyNodePort: $addArgumentDescription48(portSchema2.optional(), `The first fixed NodePort assigned to generated Proxy control Services.
5518
5530
 
5519
5531
  Replica indexes are added to this value.`),
5520
- podTemplate: $addArgumentDescription46(podTemplateSchema, `The raw base pod template inherited by generated Proxy and Target pods.`),
5521
- proxyPodTemplate: $addArgumentDescription46(podTemplateSchema, `The raw pod template merged into generated Proxy pods.`),
5522
- targetPodTemplate: $addArgumentDescription46(podTemplateSchema, `The raw pod template merged into generated Target pods.`)
5532
+ podTemplate: $addArgumentDescription48(podTemplateSchema, `The raw base pod template inherited by generated Proxy and Target pods.`),
5533
+ proxyPodTemplate: $addArgumentDescription48(podTemplateSchema, `The raw pod template merged into generated Proxy pods.`),
5534
+ targetPodTemplate: $addArgumentDescription48(podTemplateSchema, `The raw pod template merged into generated Target pods.`)
5523
5535
  },
5524
5536
  secrets: {
5525
- sharedSecret: $addArgumentDescription46(z59.string().optional(), `The shared authentication secret used by every generated Proxy and Target.
5537
+ sharedSecret: $addArgumentDescription48(z61.string().optional(), `The shared authentication secret used by every generated Proxy and Target.
5526
5538
 
5527
5539
  A random key is generated when omitted.`)
5528
5540
  },
5529
5541
  inputs: {
5530
- proxyK8sCluster: $addInputDescription46(clusterEntity, `The Kubernetes cluster where generated Proxies and the consumer Service are created.`),
5531
- targetK8sCluster: $addInputDescription46(clusterEntity, `The Kubernetes cluster where generated Targets are created.`),
5532
- endpoints: $addInputDescription46({
5542
+ proxyK8sCluster: $addInputDescription48(clusterEntity, `The Kubernetes cluster where generated Proxies and the consumer Service are created.`),
5543
+ targetK8sCluster: $addInputDescription48(clusterEntity, `The Kubernetes cluster where generated Targets are created.`),
5544
+ endpoints: $addInputDescription48({
5533
5545
  entity: l4EndpointEntity,
5534
5546
  multiple: true,
5535
5547
  required: false
5536
5548
  }, `The target TCP endpoints reachable from generated Target pods.
5537
5549
 
5538
5550
  The first endpoint is used when the endpoint argument is omitted.`),
5539
- proxyNamespace: $addInputDescription46({
5551
+ proxyNamespace: $addInputDescription48({
5540
5552
  entity: namespaceEntity2,
5541
5553
  required: false
5542
5554
  }, `The existing Kubernetes namespace where Proxies and the consumer Service are created.`),
5543
- targetNamespace: $addInputDescription46({
5555
+ targetNamespace: $addInputDescription48({
5544
5556
  entity: namespaceEntity2,
5545
5557
  required: false
5546
5558
  }, `The existing Kubernetes namespace where Targets are created.`)
5547
5559
  },
5548
5560
  outputs: {
5549
- service: $addInputDescription46(serviceEntity, `The shared consumer Service created in the proxy cluster.`),
5550
- endpoints: $addInputDescription46({
5561
+ service: $addInputDescription48(serviceEntity, `The shared consumer Service created in the proxy cluster.`),
5562
+ endpoints: $addInputDescription48({
5551
5563
  entity: l4EndpointEntity,
5552
5564
  multiple: true
5553
5565
  }, `The endpoints where consumers can access the multi-cluster tunnel.`)
@@ -5565,49 +5577,49 @@ var tunnelMc = defineUnit58({
5565
5577
  var gateway2 = defineUnit58({
5566
5578
  type: "netaminity.gateway.v1",
5567
5579
  args: {
5568
- resourceName: $addArgumentDescription46(z59.string().optional(), `The name of the generated Netaminity resources.
5580
+ resourceName: $addArgumentDescription48(z61.string().optional(), `The name of the generated Netaminity resources.
5569
5581
 
5570
5582
  If omitted, the unit name is used.`),
5571
- proxyNamespace: $addArgumentDescription46(z59.string().optional(), `The name of the Kubernetes namespace to create in the proxy cluster.
5583
+ proxyNamespace: $addArgumentDescription48(z61.string().optional(), `The name of the Kubernetes namespace to create in the proxy cluster.
5572
5584
 
5573
5585
  Ignored when the proxyNamespace input is provided.`),
5574
- targetNamespace: $addArgumentDescription46(z59.string().optional(), `The name of the Kubernetes namespace to create in the target cluster.
5586
+ targetNamespace: $addArgumentDescription48(z61.string().optional(), `The name of the Kubernetes namespace to create in the target cluster.
5575
5587
 
5576
5588
  Ignored when the targetNamespace input is provided.`),
5577
- replicas: $addArgumentDescription46(replicasSchema, `The number of Proxy and Target pairs created for the shared tunnel.`),
5578
- proxyReplicas: $addArgumentDescription46(replicasSchema, `The number of interchangeable proxy pods created for each Proxy resource.`),
5579
- hostNetwork: $addArgumentDescription46(z59.boolean().default(false), `Whether generated Proxy and Target pods use their node network namespace.`),
5580
- distributeByNodes: $addArgumentDescription46(z59.boolean().default(true), `Whether generated Proxy and Target pods prefer distribution across Kubernetes nodes.`),
5581
- targetGatewayPort: $addArgumentDescription46(portSchema2.default(443), `The TLS port exposed by the target-side gateway.`),
5582
- proxyServiceType: $addArgumentDescription46(serviceTypeSchema2.default("NodePort"), `The Kubernetes type of the control Services used by generated Targets.`),
5583
- proxyNodePort: $addArgumentDescription46(portSchema2.optional(), `The first fixed NodePort assigned to generated Proxy control Services.
5589
+ replicas: $addArgumentDescription48(replicasSchema, `The number of Proxy and Target pairs created for the shared tunnel.`),
5590
+ proxyReplicas: $addArgumentDescription48(replicasSchema, `The number of interchangeable proxy pods created for each Proxy resource.`),
5591
+ hostNetwork: $addArgumentDescription48(z61.boolean().default(false), `Whether generated Proxy and Target pods use their node network namespace.`),
5592
+ distributeByNodes: $addArgumentDescription48(z61.boolean().default(true), `Whether generated Proxy and Target pods prefer distribution across Kubernetes nodes.`),
5593
+ targetGatewayPort: $addArgumentDescription48(portSchema2.default(443), `The TLS port exposed by the target-side gateway.`),
5594
+ proxyServiceType: $addArgumentDescription48(serviceTypeSchema2.default("NodePort"), `The Kubernetes type of the control Services used by generated Targets.`),
5595
+ proxyNodePort: $addArgumentDescription48(portSchema2.optional(), `The first fixed NodePort assigned to generated Proxy control Services.
5584
5596
 
5585
5597
  Replica indexes are added to this value.`),
5586
- podTemplate: $addArgumentDescription46(podTemplateSchema, `The raw base pod template inherited by generated Proxy and Target pods.`),
5587
- proxyPodTemplate: $addArgumentDescription46(podTemplateSchema, `The raw pod template merged into generated Proxy pods.`),
5588
- targetPodTemplate: $addArgumentDescription46(podTemplateSchema, `The raw pod template merged into generated Target pods.`)
5598
+ podTemplate: $addArgumentDescription48(podTemplateSchema, `The raw base pod template inherited by generated Proxy and Target pods.`),
5599
+ proxyPodTemplate: $addArgumentDescription48(podTemplateSchema, `The raw pod template merged into generated Proxy pods.`),
5600
+ targetPodTemplate: $addArgumentDescription48(podTemplateSchema, `The raw pod template merged into generated Target pods.`)
5589
5601
  },
5590
5602
  secrets: {
5591
- sharedSecret: $addArgumentDescription46(z59.string().optional(), `The shared authentication secret used by every generated Proxy and Target.
5603
+ sharedSecret: $addArgumentDescription48(z61.string().optional(), `The shared authentication secret used by every generated Proxy and Target.
5592
5604
 
5593
5605
  A random key is generated when omitted.`)
5594
5606
  },
5595
5607
  inputs: {
5596
- proxyGateway: $addInputDescription46(gatewayEntity, `The public gateway in the proxy cluster.`),
5597
- targetGateway: $addInputDescription46(gatewayEntity, `The local gateway in the target cluster.`),
5598
- proxyK8sCluster: $addInputDescription46(clusterEntity, `The operator-ready Kubernetes cluster where Proxy resources are created.`),
5599
- targetK8sCluster: $addInputDescription46(clusterEntity, `The operator-ready Kubernetes cluster where Target resources are created.`),
5600
- proxyNamespace: $addInputDescription46({
5608
+ proxyGateway: $addInputDescription48(gatewayEntity, `The public gateway in the proxy cluster.`),
5609
+ targetGateway: $addInputDescription48(gatewayEntity, `The local gateway in the target cluster.`),
5610
+ proxyK8sCluster: $addInputDescription48(clusterEntity, `The operator-ready Kubernetes cluster where Proxy resources are created.`),
5611
+ targetK8sCluster: $addInputDescription48(clusterEntity, `The operator-ready Kubernetes cluster where Target resources are created.`),
5612
+ proxyNamespace: $addInputDescription48({
5601
5613
  entity: namespaceEntity2,
5602
5614
  required: false
5603
5615
  }, `The existing Kubernetes namespace where Proxy resources are created.`),
5604
- targetNamespace: $addInputDescription46({
5616
+ targetNamespace: $addInputDescription48({
5605
5617
  entity: namespaceEntity2,
5606
5618
  required: false
5607
5619
  }, `The existing Kubernetes namespace where Target resources are created.`)
5608
5620
  },
5609
5621
  outputs: {
5610
- gateway: $addInputDescription46(gatewayEntity, `The gateway that delegates termination to the target cluster through Netaminity.`)
5622
+ gateway: $addInputDescription48(gatewayEntity, `The gateway that delegates termination to the target cluster through Netaminity.`)
5611
5623
  },
5612
5624
  meta: {
5613
5625
  description: `Wraps proxy-side and target-side gateways with one shared Netaminity tunnel.`,
@@ -5626,15 +5638,15 @@ __export(exports_nixos, {
5626
5638
  inlineModule: () => inlineModule,
5627
5639
  inlineFlake: () => inlineFlake
5628
5640
  });
5629
- import { $addArgumentDescription as $addArgumentDescription47 } from "@highstate/contract";
5630
- import { defineUnit as defineUnit59, z as z60 } from "@highstate/contract";
5641
+ import { $addArgumentDescription as $addArgumentDescription49 } from "@highstate/contract";
5642
+ import { defineUnit as defineUnit59, z as z62 } from "@highstate/contract";
5631
5643
  var inlineModule = defineUnit59({
5632
5644
  type: "nixos.inline-module.v1",
5633
5645
  args: {
5634
- moduleName: $addArgumentDescription47(z60.string().optional(), `The name of the module file.
5646
+ moduleName: $addArgumentDescription49(z62.string().optional(), `The name of the module file.
5635
5647
 
5636
5648
  If not provided, the name will be the name of the unit.`),
5637
- code: $addArgumentDescription47(z60.string().meta({ language: "nix" }), `The code of the NixOS module.
5649
+ code: $addArgumentDescription49(z62.string().meta({ language: "nix" }), `The code of the NixOS module.
5638
5650
 
5639
5651
  In this code you can reference other modules and files by their names.`)
5640
5652
  },
@@ -5669,10 +5681,10 @@ var inlineModule = defineUnit59({
5669
5681
  var inlineFlake = defineUnit59({
5670
5682
  type: "nixos.inline-flake.v1",
5671
5683
  args: {
5672
- flakeName: $addArgumentDescription47(z60.string().optional(), `The name of the flake folder.
5684
+ flakeName: $addArgumentDescription49(z62.string().optional(), `The name of the flake folder.
5673
5685
 
5674
5686
  If not provided, the name will be the name of the unit.`),
5675
- code: $addArgumentDescription47(z60.string().meta({ language: "nix" }), `The code of the \`flake.nix\` file.
5687
+ code: $addArgumentDescription49(z62.string().meta({ language: "nix" }), `The code of the \`flake.nix\` file.
5676
5688
 
5677
5689
  In this code you can reference other flakes, modules, files, and folders by their names.
5678
5690
  The inputs for them will be automatically added to the \`inputs\` attribute of the flake.
@@ -5713,7 +5725,7 @@ var inlineFlake = defineUnit59({
5713
5725
  var system = defineUnit59({
5714
5726
  type: "nixos.system.v1",
5715
5727
  args: {
5716
- system: z60.string().optional()
5728
+ system: z62.string().optional()
5717
5729
  },
5718
5730
  inputs: {
5719
5731
  server: serverEntity,
@@ -5751,13 +5763,13 @@ __export(exports_proxmox, {
5751
5763
  connection: () => connection8,
5752
5764
  clusterEntity: () => clusterEntity3
5753
5765
  });
5754
- import { $addArgumentDescription as $addArgumentDescription48, $addInputDescription as $addInputDescription48 } from "@highstate/contract";
5766
+ import { $addArgumentDescription as $addArgumentDescription50, $addInputDescription as $addInputDescription50 } from "@highstate/contract";
5755
5767
  import { camelCaseToHumanReadable as __camelCaseToHumanReadable30 } from "@highstate/contract";
5756
5768
  import {
5757
5769
  defineEntity as defineEntity31,
5758
5770
  defineUnit as defineUnit60,
5759
5771
  secretSchema as secretSchema15,
5760
- z as z61
5772
+ z as z63
5761
5773
  } from "@highstate/contract";
5762
5774
  var clusterEntity3 = defineEntity31({
5763
5775
  type: "proxmox.cluster.v1",
@@ -5767,14 +5779,14 @@ var clusterEntity3 = defineEntity31({
5767
5779
  required: false
5768
5780
  }
5769
5781
  },
5770
- schema: z61.object({
5782
+ schema: z63.object({
5771
5783
  endpoint: l7EndpointEntity.schema,
5772
- insecure: z61.boolean().optional(),
5773
- username: z61.string().optional(),
5774
- defaultNodeName: z61.string(),
5775
- defaultDatastoreId: z61.string(),
5776
- password: secretSchema15(z61.string()).optional(),
5777
- apiToken: secretSchema15(z61.string()).optional()
5784
+ insecure: z63.boolean().optional(),
5785
+ username: z63.string().optional(),
5786
+ defaultNodeName: z63.string(),
5787
+ defaultDatastoreId: z63.string(),
5788
+ password: secretSchema15(z63.string()).optional(),
5789
+ apiToken: secretSchema15(z63.string()).optional()
5778
5790
  }),
5779
5791
  meta: {
5780
5792
  color: "#e56901"
@@ -5782,8 +5794,8 @@ var clusterEntity3 = defineEntity31({
5782
5794
  });
5783
5795
  var imageEntity = defineEntity31({
5784
5796
  type: "proxmox.image.v1",
5785
- schema: z61.object({
5786
- id: z61.string()
5797
+ schema: z63.object({
5798
+ id: z63.string()
5787
5799
  }),
5788
5800
  meta: {
5789
5801
  color: "#e56901"
@@ -5792,30 +5804,30 @@ var imageEntity = defineEntity31({
5792
5804
  var connection8 = defineUnit60({
5793
5805
  type: "proxmox.connection.v1",
5794
5806
  args: {
5795
- endpoint: $addArgumentDescription48(z61.string(), `The endpoint of the Proxmox API.`),
5796
- insecure: $addArgumentDescription48(z61.boolean().optional(), `Whether to allow insecure connections to the Proxmox API.`),
5797
- username: $addArgumentDescription48(z61.string().optional(), `The username to use for the Proxmox API.
5807
+ endpoint: $addArgumentDescription50(z63.string(), `The endpoint of the Proxmox API.`),
5808
+ insecure: $addArgumentDescription50(z63.boolean().optional(), `Whether to allow insecure connections to the Proxmox API.`),
5809
+ username: $addArgumentDescription50(z63.string().optional(), `The username to use for the Proxmox API.
5798
5810
 
5799
5811
  Only required for password token authentication.`),
5800
- defaultNodeName: $addArgumentDescription48(z61.string().optional(), `The name of the default Proxmox node to use for operations.
5812
+ defaultNodeName: $addArgumentDescription50(z63.string().optional(), `The name of the default Proxmox node to use for operations.
5801
5813
 
5802
5814
  If not specified, the first node in the cluster will be used.`),
5803
- defaultDatastoreId: $addArgumentDescription48(z61.string().optional(), `The ID of the default Proxmox datastore to use for operations.
5815
+ defaultDatastoreId: $addArgumentDescription50(z63.string().optional(), `The ID of the default Proxmox datastore to use for operations.
5804
5816
 
5805
5817
  If not specified, the first datastore in the cluster will be used.`),
5806
- ssh: $addArgumentDescription48(argsSchema.prefault({}), `The SSH configuration to use for connecting to the Proxmox nodes.`)
5818
+ ssh: $addArgumentDescription50(argsSchema.prefault({}), `The SSH configuration to use for connecting to the Proxmox nodes.`)
5807
5819
  },
5808
5820
  secrets: {
5809
- password: $addArgumentDescription48({
5810
- schema: z61.string().optional(),
5821
+ password: $addArgumentDescription50({
5822
+ schema: z63.string().optional(),
5811
5823
  meta: {
5812
5824
  title: "Proxmox Password"
5813
5825
  }
5814
5826
  }, `The password to use for the Proxmox API.
5815
5827
 
5816
5828
  Requires \`username\` to be set.`),
5817
- apiToken: $addArgumentDescription48({
5818
- schema: z61.string().optional(),
5829
+ apiToken: $addArgumentDescription50({
5830
+ schema: z63.string().optional(),
5819
5831
  meta: {
5820
5832
  title: "Proxmox API Token"
5821
5833
  }
@@ -5826,8 +5838,8 @@ var connection8 = defineUnit60({
5826
5838
  ...inputs
5827
5839
  },
5828
5840
  outputs: {
5829
- proxmoxCluster: $addInputDescription48(clusterEntity3, `The Proxmox cluster.`),
5830
- server: $addInputDescription48({
5841
+ proxmoxCluster: $addInputDescription50(clusterEntity3, `The Proxmox cluster.`),
5842
+ server: $addInputDescription50({
5831
5843
  entity: serverEntity,
5832
5844
  required: false
5833
5845
  }, `The server representing the Proxmox API endpoint.`)
@@ -5847,22 +5859,22 @@ var connection8 = defineUnit60({
5847
5859
  var image = defineUnit60({
5848
5860
  type: "proxmox.image.v1",
5849
5861
  args: {
5850
- fileName: $addArgumentDescription48(z61.string().optional(), `The name of the image to upload.
5862
+ fileName: $addArgumentDescription50(z63.string().optional(), `The name of the image to upload.
5851
5863
 
5852
5864
  If not specified, the default name is \`<unitName>-<sha256>.<extension>\`
5853
5865
  or \`<unitName>.<extension>\` if \`sha256\` is not provided.`),
5854
- url: $addArgumentDescription48(z61.string().optional(), `The URL of the image to upload.`),
5855
- checksum: $addArgumentDescription48(checksumSchema.optional(), `The checksum of the image file to verify.`),
5856
- nodeName: $addArgumentDescription48(z61.string().optional(), `The name of the Proxmox node to upload the image to.
5866
+ url: $addArgumentDescription50(z63.string().optional(), `The URL of the image to upload.`),
5867
+ checksum: $addArgumentDescription50(checksumSchema.optional(), `The checksum of the image file to verify.`),
5868
+ nodeName: $addArgumentDescription50(z63.string().optional(), `The name of the Proxmox node to upload the image to.
5857
5869
 
5858
5870
  If not specified, the default node name from the cluster will be used.`),
5859
- datastoreId: $addArgumentDescription48(z61.string().optional(), `The ID of the Proxmox datastore to upload the image to.
5871
+ datastoreId: $addArgumentDescription50(z63.string().optional(), `The ID of the Proxmox datastore to upload the image to.
5860
5872
 
5861
5873
  If not specified, the default datastore ID from the cluster will be used.`)
5862
5874
  },
5863
5875
  inputs: {
5864
- proxmoxCluster: $addInputDescription48(clusterEntity3, `The Proxmox cluster to upload the image to.`),
5865
- file: $addInputDescription48({
5876
+ proxmoxCluster: $addInputDescription50(clusterEntity3, `The Proxmox cluster to upload the image to.`),
5877
+ file: $addInputDescription50({
5866
5878
  entity: fileEntity,
5867
5879
  required: false
5868
5880
  }, `The file to upload as an image.
@@ -5888,7 +5900,7 @@ var image = defineUnit60({
5888
5900
  var existingImage = defineUnit60({
5889
5901
  type: "proxmox.existing-image.v1",
5890
5902
  args: {
5891
- id: z61.string()
5903
+ id: z63.string()
5892
5904
  },
5893
5905
  inputs: {
5894
5906
  proxmoxCluster: clusterEntity3
@@ -5912,56 +5924,56 @@ var existingImage = defineUnit60({
5912
5924
  var virtualMachine = defineUnit60({
5913
5925
  type: "proxmox.virtual-machine.v1",
5914
5926
  args: {
5915
- vmName: $addArgumentDescription48(z61.string().optional(), `The name of the virtual machine.
5927
+ vmName: $addArgumentDescription50(z63.string().optional(), `The name of the virtual machine.
5916
5928
 
5917
5929
  If not specified, the unit name will be used.`),
5918
- nodeName: $addArgumentDescription48(z61.string().optional(), `The name of the node to create the virtual machine on.
5930
+ nodeName: $addArgumentDescription50(z63.string().optional(), `The name of the node to create the virtual machine on.
5919
5931
 
5920
5932
  If not specified, the default node name from the cluster will be used.`),
5921
- datastoreId: $addArgumentDescription48(z61.string().optional(), `The ID of the Proxmox datastore to create the virtual machine on.
5933
+ datastoreId: $addArgumentDescription50(z63.string().optional(), `The ID of the Proxmox datastore to create the virtual machine on.
5922
5934
 
5923
5935
  If not specified, the default datastore ID from the cluster will be used.`),
5924
- cpuType: $addArgumentDescription48(z61.string().default("host"), `The type of CPU to use for the virtual machine.
5936
+ cpuType: $addArgumentDescription50(z63.string().default("host"), `The type of CPU to use for the virtual machine.
5925
5937
 
5926
5938
  By default, this is set to "host" which offers the best performance.`),
5927
- resources: $addArgumentDescription48(z61.object({
5928
- cores: z61.number().default(1).meta({ title: __camelCaseToHumanReadable30("cores"), description: `The number of CPU cores to allocate to the virtual machine.
5939
+ resources: $addArgumentDescription50(z63.object({
5940
+ cores: z63.number().default(1).meta({ title: __camelCaseToHumanReadable30("cores"), description: `The number of CPU cores to allocate to the virtual machine.
5929
5941
 
5930
5942
  By default, this is set to 1.` }),
5931
- sockets: z61.number().default(1).meta({ title: __camelCaseToHumanReadable30("sockets"), description: `The number of CPU sockets to allocate to the virtual machine.
5943
+ sockets: z63.number().default(1).meta({ title: __camelCaseToHumanReadable30("sockets"), description: `The number of CPU sockets to allocate to the virtual machine.
5932
5944
 
5933
5945
  By default, this is set to 1.` }),
5934
- memory: z61.number().default(512).meta({ title: __camelCaseToHumanReadable30("memory"), description: `The amount of dedicated memory to allocate to the virtual machine, in MB.
5946
+ memory: z63.number().default(512).meta({ title: __camelCaseToHumanReadable30("memory"), description: `The amount of dedicated memory to allocate to the virtual machine, in MB.
5935
5947
 
5936
5948
  By default, this is set to 512 MB.` }),
5937
- diskSize: z61.number().default(8).meta({ title: __camelCaseToHumanReadable30("diskSize"), description: `The size of the disk to create for the virtual machine, in GB.
5949
+ diskSize: z63.number().default(8).meta({ title: __camelCaseToHumanReadable30("diskSize"), description: `The size of the disk to create for the virtual machine, in GB.
5938
5950
 
5939
5951
  By default, this is set to 8 GB.` })
5940
5952
  }).prefault({}), `The resources to allocate to the virtual machine.`),
5941
- ipv4: $addArgumentDescription48(z61.discriminatedUnion("type", [
5942
- z61.object({
5943
- type: z61.literal("dhcp")
5953
+ ipv4: $addArgumentDescription50(z63.discriminatedUnion("type", [
5954
+ z63.object({
5955
+ type: z63.literal("dhcp")
5944
5956
  }),
5945
- z61.object({
5946
- type: z61.literal("static"),
5947
- address: z61.ipv4().meta({ title: __camelCaseToHumanReadable30("address"), description: `The IPv4 address to assign to the virtual machine.` }),
5957
+ z63.object({
5958
+ type: z63.literal("static"),
5959
+ address: z63.ipv4().meta({ title: __camelCaseToHumanReadable30("address"), description: `The IPv4 address to assign to the virtual machine.` }),
5948
5960
  prefix: ipv4PrefixSchema.default(24).meta({ title: __camelCaseToHumanReadable30("prefix"), description: `The CIDR prefix for the IPv4 address.
5949
5961
 
5950
5962
  By default, this is set to 24.` }),
5951
- gateway: z61.ipv4().optional().meta({ title: __camelCaseToHumanReadable30("gateway"), description: `The IPv4 gateway for the virtual machine.
5963
+ gateway: z63.ipv4().optional().meta({ title: __camelCaseToHumanReadable30("gateway"), description: `The IPv4 gateway for the virtual machine.
5952
5964
 
5953
5965
  If not specified, will be set to the first address in the subnet.` })
5954
5966
  })
5955
5967
  ]).default({ type: "dhcp" }), `The IPv4 address configuration for the virtual machine.`),
5956
- network: $addArgumentDescription48(z61.object({
5968
+ network: $addArgumentDescription50(z63.object({
5957
5969
  dns: ipv46Schema.array().default([]).meta({ title: __camelCaseToHumanReadable30("dns"), description: `The list of DNS servers to use for the virtual machine.` }),
5958
- bridge: z61.string().default("vmbr0").meta({ title: __camelCaseToHumanReadable30("bridge"), description: `The name of the network bridge to connect the virtual machine to.
5970
+ bridge: z63.string().default("vmbr0").meta({ title: __camelCaseToHumanReadable30("bridge"), description: `The name of the network bridge to connect the virtual machine to.
5959
5971
 
5960
5972
  By default, this is set to "vmbr0".` })
5961
5973
  }).prefault({}), `The network configuration for the virtual machine.`),
5962
- ssh: $addArgumentDescription48(vmSshArgs, `The SSH configuration for the virtual machine.`),
5963
- waitForAgent: $addArgumentDescription48(z61.boolean().default(true), `Whether to wait for the Proxmox agent to be ready before returning.`),
5964
- vendorData: $addArgumentDescription48(z61.string().optional().meta({ multiline: true }), `The cloud-init vendor data to use for the virtual machine.
5974
+ ssh: $addArgumentDescription50(vmSshArgs, `The SSH configuration for the virtual machine.`),
5975
+ waitForAgent: $addArgumentDescription50(z63.boolean().default(true), `Whether to wait for the Proxmox agent to be ready before returning.`),
5976
+ vendorData: $addArgumentDescription50(z63.string().optional().meta({ multiline: true }), `The cloud-init vendor data to use for the virtual machine.
5965
5977
 
5966
5978
  Will take precedence over the \`vendorData\` input.`)
5967
5979
  },
@@ -5971,7 +5983,7 @@ var virtualMachine = defineUnit60({
5971
5983
  inputs: {
5972
5984
  proxmoxCluster: clusterEntity3,
5973
5985
  image: imageEntity,
5974
- vendorData: $addInputDescription48({
5986
+ vendorData: $addInputDescription50({
5975
5987
  entity: fileEntity,
5976
5988
  required: false
5977
5989
  }, `The cloud-init vendor data to use for the virtual machine.
@@ -5998,12 +6010,12 @@ var exports_sops = {};
5998
6010
  __export(exports_sops, {
5999
6011
  secrets: () => secrets2
6000
6012
  });
6001
- import { $addArgumentDescription as $addArgumentDescription49 } from "@highstate/contract";
6002
- import { defineUnit as defineUnit61, z as z62 } from "@highstate/contract";
6013
+ import { $addArgumentDescription as $addArgumentDescription51 } from "@highstate/contract";
6014
+ import { defineUnit as defineUnit61, z as z64 } from "@highstate/contract";
6003
6015
  var secrets2 = defineUnit61({
6004
6016
  type: "sops.secrets.v1",
6005
6017
  secrets: {
6006
- data: $addArgumentDescription49(z62.record(z62.string(), z62.unknown()), `The content of the SOPS secrets file.
6018
+ data: $addArgumentDescription51(z64.record(z64.string(), z64.unknown()), `The content of the SOPS secrets file.
6007
6019
 
6008
6020
  Will take precedence over the \`data\` input.`)
6009
6021
  },
@@ -6040,32 +6052,32 @@ __export(exports_talos, {
6040
6052
  clusterEntity: () => clusterEntity4,
6041
6053
  cluster: () => cluster2
6042
6054
  });
6043
- import { $addArgumentDescription as $addArgumentDescription50 } from "@highstate/contract";
6055
+ import { $addArgumentDescription as $addArgumentDescription52 } from "@highstate/contract";
6044
6056
  import {
6045
6057
  defineEntity as defineEntity32,
6046
6058
  defineUnit as defineUnit62,
6047
- z as z63
6059
+ z as z65
6048
6060
  } from "@highstate/contract";
6049
6061
  var clusterEntity4 = defineEntity32({
6050
6062
  type: "talos.cluster.v1",
6051
- schema: z63.object({
6052
- clientConfiguration: z63.string(),
6053
- machineSecrets: z63.string()
6063
+ schema: z65.object({
6064
+ clientConfiguration: z65.string(),
6065
+ machineSecrets: z65.string()
6054
6066
  }),
6055
6067
  meta: {
6056
6068
  color: "#2d2d2d"
6057
6069
  }
6058
6070
  });
6059
- var cniSchema2 = z63.enum(["none", "cilium", "flannel"]);
6060
- var csiSchema = z63.enum(["none", "local-path-provisioner"]);
6071
+ var cniSchema2 = z65.enum(["none", "cilium", "flannel"]);
6072
+ var csiSchema = z65.enum(["none", "local-path-provisioner"]);
6061
6073
  var cluster2 = defineUnit62({
6062
6074
  type: "talos.cluster.v1",
6063
6075
  args: {
6064
6076
  ...scheduleOnMastersPolicyArgs,
6065
- clusterName: $addArgumentDescription50(z63.string().optional(), `The name of the cluster.
6077
+ clusterName: $addArgumentDescription52(z65.string().optional(), `The name of the cluster.
6066
6078
 
6067
6079
  By default, the name of the instance is used.`),
6068
- cni: $addArgumentDescription50(cniSchema2.default("cilium"), `The CNI plugin to use.
6080
+ cni: $addArgumentDescription52(cniSchema2.default("cilium"), `The CNI plugin to use.
6069
6081
 
6070
6082
  The following options are available:
6071
6083
  - "cilium" (default)
@@ -6073,18 +6085,18 @@ var cluster2 = defineUnit62({
6073
6085
  - "none" (disable CNI, must be installed manually)
6074
6086
 
6075
6087
  The "cilium" CNI plugin is recommended to cover advanced network policies like FQDNs.`),
6076
- csi: $addArgumentDescription50(csiSchema.default("local-path-provisioner"), `The CSI plugin to use.
6088
+ csi: $addArgumentDescription52(csiSchema.default("local-path-provisioner"), `The CSI plugin to use.
6077
6089
 
6078
6090
  The following options are available:
6079
6091
  - "local-path-provisioner" (default)
6080
6092
  - "none" (disable CSI, must be installed manually if needed)`),
6081
- sharedConfigPatch: $addArgumentDescription50(z63.record(z63.string(), z63.any()).optional(), `The shared configuration patch.
6093
+ sharedConfigPatch: $addArgumentDescription52(z65.record(z65.string(), z65.any()).optional(), `The shared configuration patch.
6082
6094
  It will be applied to all nodes.`),
6083
- masterConfigPatch: $addArgumentDescription50(z63.record(z63.string(), z63.any()).optional(), `The master configuration patch.
6095
+ masterConfigPatch: $addArgumentDescription52(z65.record(z65.string(), z65.any()).optional(), `The master configuration patch.
6084
6096
  It will be applied to all master nodes.`),
6085
- workerConfigPatch: $addArgumentDescription50(z63.record(z63.string(), z63.any()).optional(), `The worker configuration patch.
6097
+ workerConfigPatch: $addArgumentDescription52(z65.record(z65.string(), z65.any()).optional(), `The worker configuration patch.
6086
6098
  It will be applied to all worker nodes.`),
6087
- enableTunDevicePlugin: $addArgumentDescription50(z63.boolean().default(true), `Whether to enable the Tun device plugin.
6099
+ enableTunDevicePlugin: $addArgumentDescription52(z65.boolean().default(true), `Whether to enable the Tun device plugin.
6088
6100
 
6089
6101
  There is the only option for Talos to get tun device in containers.
6090
6102
 
@@ -6114,12 +6126,12 @@ __export(exports_cloudflare, {
6114
6126
  providerDataSchema: () => providerDataSchema,
6115
6127
  connection: () => connection9
6116
6128
  });
6117
- import { $addArgumentDescription as $addArgumentDescription51 } from "@highstate/contract";
6129
+ import { $addArgumentDescription as $addArgumentDescription53 } from "@highstate/contract";
6118
6130
  import { camelCaseToHumanReadable as __camelCaseToHumanReadable31 } from "@highstate/contract";
6119
- import { defineUnit as defineUnit63, secretSchema as secretSchema16, z as z64 } from "@highstate/contract";
6120
- var providerDataSchema = z64.object({
6121
- zoneIds: z64.record(z64.string(), z64.string()).meta({ title: __camelCaseToHumanReadable31("zoneIds"), description: `The mapping of zone names to their corresponding Cloudflare zone IDs.` }),
6122
- apiToken: secretSchema16(z64.string()).meta({ title: __camelCaseToHumanReadable31("apiToken"), description: `The API token for the Cloudflare account.
6131
+ import { defineUnit as defineUnit63, secretSchema as secretSchema16, z as z66 } from "@highstate/contract";
6132
+ var providerDataSchema = z66.object({
6133
+ zoneIds: z66.record(z66.string(), z66.string()).meta({ title: __camelCaseToHumanReadable31("zoneIds"), description: `The mapping of zone names to their corresponding Cloudflare zone IDs.` }),
6134
+ apiToken: secretSchema16(z66.string()).meta({ title: __camelCaseToHumanReadable31("apiToken"), description: `The API token for the Cloudflare account.
6123
6135
 
6124
6136
  The API key must have permissions to manage DNS records for exactly one zone.
6125
6137
  If multiple zones are specified, the unit will fail.
@@ -6131,7 +6143,7 @@ var providerDataSchema = z64.object({
6131
6143
  var connection9 = defineUnit63({
6132
6144
  type: "cloudflare.connection.v1",
6133
6145
  secrets: {
6134
- apiToken: $addArgumentDescription51(z64.string(), `The API token for the Cloudflare account.
6146
+ apiToken: $addArgumentDescription53(z66.string(), `The API token for the Cloudflare account.
6135
6147
 
6136
6148
  The API key must have permissions to manage DNS records for exactly one zone.
6137
6149
  If multiple zones are specified, the unit will fail.
@@ -6168,22 +6180,22 @@ __export(exports_gcp, {
6168
6180
  connectionEntity: () => connectionEntity11,
6169
6181
  connection: () => connection10
6170
6182
  });
6171
- import { $addArgumentDescription as $addArgumentDescription52, $addInputDescription as $addInputDescription52 } from "@highstate/contract";
6183
+ import { $addArgumentDescription as $addArgumentDescription54, $addInputDescription as $addInputDescription54 } from "@highstate/contract";
6172
6184
  import { camelCaseToHumanReadable as __camelCaseToHumanReadable32 } from "@highstate/contract";
6173
6185
  import {
6174
6186
  $args as $args8,
6175
6187
  defineEntity as defineEntity33,
6176
6188
  defineUnit as defineUnit64,
6177
6189
  secretSchema as secretSchema17,
6178
- z as z65
6190
+ z as z67
6179
6191
  } from "@highstate/contract";
6180
6192
  var connectionEntity11 = defineEntity33({
6181
6193
  type: "gcp.connection.v1",
6182
- schema: z65.object({
6183
- serviceAccountKeyJson: secretSchema17(z65.string()).meta({ title: __camelCaseToHumanReadable32("serviceAccountKeyJson"), description: `The service account JSON key used for authentication.` }),
6184
- projectId: z65.string().meta({ title: __camelCaseToHumanReadable32("projectId"), description: `The ID of the Google Cloud project.` }),
6185
- defaultRegion: z65.string().meta({ title: __camelCaseToHumanReadable32("defaultRegion"), description: `The default region.` }),
6186
- defaultZone: z65.string().optional().meta({ title: __camelCaseToHumanReadable32("defaultZone"), description: `The default availability zone.` })
6194
+ schema: z67.object({
6195
+ serviceAccountKeyJson: secretSchema17(z67.string()).meta({ title: __camelCaseToHumanReadable32("serviceAccountKeyJson"), description: `The service account JSON key used for authentication.` }),
6196
+ projectId: z67.string().meta({ title: __camelCaseToHumanReadable32("projectId"), description: `The ID of the Google Cloud project.` }),
6197
+ defaultRegion: z67.string().meta({ title: __camelCaseToHumanReadable32("defaultRegion"), description: `The default region.` }),
6198
+ defaultZone: z67.string().optional().meta({ title: __camelCaseToHumanReadable32("defaultZone"), description: `The default availability zone.` })
6187
6199
  }),
6188
6200
  meta: {
6189
6201
  color: "#4285F4",
@@ -6195,16 +6207,16 @@ var connectionEntity11 = defineEntity33({
6195
6207
  var connection10 = defineUnit64({
6196
6208
  type: "gcp.connection.v1",
6197
6209
  args: {
6198
- region: $addArgumentDescription52(z65.object({
6199
- id: z65.string().default("us-central1").meta({ title: __camelCaseToHumanReadable32("id"), description: `The ID of the region.` }),
6200
- defaultZone: z65.string().optional().meta({ title: __camelCaseToHumanReadable32("defaultZone"), description: `The default availability zone in the selected region.
6210
+ region: $addArgumentDescription54(z67.object({
6211
+ id: z67.string().default("us-central1").meta({ title: __camelCaseToHumanReadable32("id"), description: `The ID of the region.` }),
6212
+ defaultZone: z67.string().optional().meta({ title: __camelCaseToHumanReadable32("defaultZone"), description: `The default availability zone in the selected region.
6201
6213
 
6202
6214
  If not specified, an available zone in the region will be selected automatically.` })
6203
6215
  }).prefault({}), `The region to create connection for.`)
6204
6216
  },
6205
6217
  secrets: {
6206
- serviceAccountKeyJson: $addArgumentDescription52({
6207
- schema: z65.string().meta({ language: "json" }),
6218
+ serviceAccountKeyJson: $addArgumentDescription54({
6219
+ schema: z67.string().meta({ language: "json" }),
6208
6220
  meta: {
6209
6221
  title: "Service Account Key JSON"
6210
6222
  }
@@ -6214,7 +6226,7 @@ var connection10 = defineUnit64({
6214
6226
  ...inputs
6215
6227
  },
6216
6228
  outputs: {
6217
- connection: $addInputDescription52(connectionEntity11, `The Google Cloud connection.`)
6229
+ connection: $addInputDescription54(connectionEntity11, `The Google Cloud connection.`)
6218
6230
  },
6219
6231
  meta: {
6220
6232
  description: `The connection to a Google Cloud account.`,
@@ -6228,15 +6240,15 @@ var connection10 = defineUnit64({
6228
6240
  path: "connection"
6229
6241
  }
6230
6242
  });
6231
- var diskSchema = z65.object({
6232
- type: z65.enum(["pd-standard", "pd-balanced", "pd-ssd", "pd-extreme"]).default("pd-balanced").meta({ title: __camelCaseToHumanReadable32("type"), description: `The disk type.` }),
6233
- size: z65.number().default(20).meta({ title: __camelCaseToHumanReadable32("size"), description: `The disk size in GB.` }),
6234
- encrypted: z65.boolean().default(false).meta({ title: __camelCaseToHumanReadable32("encrypted"), description: `Whether the disk should be encrypted with a separate KMS key.` })
6243
+ var diskSchema = z67.object({
6244
+ type: z67.enum(["pd-standard", "pd-balanced", "pd-ssd", "pd-extreme"]).default("pd-balanced").meta({ title: __camelCaseToHumanReadable32("type"), description: `The disk type.` }),
6245
+ size: z67.number().default(20).meta({ title: __camelCaseToHumanReadable32("size"), description: `The disk size in GB.` }),
6246
+ encrypted: z67.boolean().default(false).meta({ title: __camelCaseToHumanReadable32("encrypted"), description: `Whether the disk should be encrypted with a separate KMS key.` })
6235
6247
  });
6236
6248
  var diskEntity = defineEntity33({
6237
6249
  type: "gcp.disk.v1",
6238
- schema: z65.object({
6239
- id: z65.string().meta({ title: __camelCaseToHumanReadable32("id"), description: `The global ID of the disk.` })
6250
+ schema: z67.object({
6251
+ id: z67.string().meta({ title: __camelCaseToHumanReadable32("id"), description: `The global ID of the disk.` })
6240
6252
  }),
6241
6253
  meta: {
6242
6254
  title: "GCP Disk",
@@ -6248,7 +6260,7 @@ var diskEntity = defineEntity33({
6248
6260
  var disk = defineUnit64({
6249
6261
  type: "gcp.disk.v1",
6250
6262
  args: {
6251
- diskName: $addArgumentDescription52(z65.string().optional(), `The name of the disk in the project.
6263
+ diskName: $addArgumentDescription54(z67.string().optional(), `The name of the disk in the project.
6252
6264
  If not specified, the name of the unit will be used.`),
6253
6265
  ...diskSchema.shape
6254
6266
  },
@@ -6256,7 +6268,7 @@ var disk = defineUnit64({
6256
6268
  connection: connectionEntity11
6257
6269
  },
6258
6270
  outputs: {
6259
- disk: $addInputDescription52(diskEntity, `The disk entity.`)
6271
+ disk: $addInputDescription54(diskEntity, `The disk entity.`)
6260
6272
  },
6261
6273
  meta: {
6262
6274
  description: `The disk on Google Cloud.`,
@@ -6273,8 +6285,8 @@ var disk = defineUnit64({
6273
6285
  });
6274
6286
  var imageEntity2 = defineEntity33({
6275
6287
  type: "gcp.image.v1",
6276
- schema: z65.object({
6277
- id: z65.string().meta({ title: __camelCaseToHumanReadable32("id"), description: `The global ID of the image.` })
6288
+ schema: z67.object({
6289
+ id: z67.string().meta({ title: __camelCaseToHumanReadable32("id"), description: `The global ID of the image.` })
6278
6290
  }),
6279
6291
  meta: {
6280
6292
  title: "GCP Image",
@@ -6286,7 +6298,7 @@ var imageEntity2 = defineEntity33({
6286
6298
  var existingImage2 = defineUnit64({
6287
6299
  type: "gcp.existing-image.v1",
6288
6300
  args: {
6289
- id: $addArgumentDescription52(z65.string(), `The ID or self-link of the image.
6301
+ id: $addArgumentDescription54(z67.string(), `The ID or self-link of the image.
6290
6302
 
6291
6303
  See [Compute Engine public images](https://cloud.google.com/compute/docs/images/os-details)
6292
6304
  and [Google Cloud Marketplace](https://console.cloud.google.com/marketplace)
@@ -6296,7 +6308,7 @@ var existingImage2 = defineUnit64({
6296
6308
  connection: connectionEntity11
6297
6309
  },
6298
6310
  outputs: {
6299
- image: $addInputDescription52(imageEntity2, `The image entity.`)
6311
+ image: $addInputDescription54(imageEntity2, `The image entity.`)
6300
6312
  },
6301
6313
  meta: {
6302
6314
  description: `The existing image from Google Cloud public images or custom images.`,
@@ -6312,27 +6324,27 @@ var existingImage2 = defineUnit64({
6312
6324
  }
6313
6325
  });
6314
6326
  var vmArgs = $args8({
6315
- machineType: $addArgumentDescription52(z65.string().default("e2-standard-2"), `The machine type for the instance.`),
6316
- bootDisk: $addArgumentDescription52(diskSchema.prefault({}), `The boot disk configuration.`),
6317
- network: $addArgumentDescription52(z65.object({
6318
- subnetworkId: z65.string().optional().meta({ title: __camelCaseToHumanReadable32("subnetworkId"), description: `The subnetwork self-link to connect to.
6327
+ machineType: $addArgumentDescription54(z67.string().default("e2-standard-2"), `The machine type for the instance.`),
6328
+ bootDisk: $addArgumentDescription54(diskSchema.prefault({}), `The boot disk configuration.`),
6329
+ network: $addArgumentDescription54(z67.object({
6330
+ subnetworkId: z67.string().optional().meta({ title: __camelCaseToHumanReadable32("subnetworkId"), description: `The subnetwork self-link to connect to.
6319
6331
  If not specified, will auto-discover the default subnet for the zone.` }),
6320
- assignPublicIp: z65.boolean().default(true).meta({ title: __camelCaseToHumanReadable32("assignPublicIp"), description: `Whether to assign a public IP.` }),
6321
- reservePublicIp: z65.boolean().default(true).meta({ title: __camelCaseToHumanReadable32("reservePublicIp"), description: `Whether to reserve the public IP permanently.` })
6332
+ assignPublicIp: z67.boolean().default(true).meta({ title: __camelCaseToHumanReadable32("assignPublicIp"), description: `Whether to assign a public IP.` }),
6333
+ reservePublicIp: z67.boolean().default(true).meta({ title: __camelCaseToHumanReadable32("reservePublicIp"), description: `Whether to reserve the public IP permanently.` })
6322
6334
  }).prefault({}), `The network configuration.`),
6323
- ssh: $addArgumentDescription52(vmSshArgs, `The SSH configuration.`),
6324
- preemptible: $addArgumentDescription52(z65.boolean().default(false), `Whether the virtual machine is preemptible.`)
6335
+ ssh: $addArgumentDescription54(vmSshArgs, `The SSH configuration.`),
6336
+ preemptible: $addArgumentDescription54(z67.boolean().default(false), `Whether the virtual machine is preemptible.`)
6325
6337
  });
6326
6338
  var virtualMachine2 = defineUnit64({
6327
6339
  type: "gcp.virtual-machine.v1",
6328
6340
  args: {
6329
- vmName: $addArgumentDescription52(z65.string().optional(), `The name of the virtual machine.
6341
+ vmName: $addArgumentDescription54(z67.string().optional(), `The name of the virtual machine.
6330
6342
  If not specified, the name of the unit will be used.`),
6331
- projectId: $addArgumentDescription52(z65.string().optional(), `The ID of the project to create the VM in.
6343
+ projectId: $addArgumentDescription54(z67.string().optional(), `The ID of the project to create the VM in.
6332
6344
  If not specified, will use the project from the connection.`),
6333
- region: $addArgumentDescription52(z65.string().optional(), `The region to create the VM in.
6345
+ region: $addArgumentDescription54(z67.string().optional(), `The region to create the VM in.
6334
6346
  If not specified, will use the region from the connection.`),
6335
- zone: $addArgumentDescription52(z65.string().optional(), `The zone to create the VM in.
6347
+ zone: $addArgumentDescription54(z67.string().optional(), `The zone to create the VM in.
6336
6348
  If not specified, will use the default zone from the connection.`),
6337
6349
  ...vmArgs
6338
6350
  },
@@ -6361,15 +6373,15 @@ var virtualMachine2 = defineUnit64({
6361
6373
  var instanceGroup = defineUnit64({
6362
6374
  type: "gcp.instance-group.v1",
6363
6375
  args: {
6364
- groupName: $addArgumentDescription52(z65.string().optional(), `The name of the instance group.
6376
+ groupName: $addArgumentDescription54(z67.string().optional(), `The name of the instance group.
6365
6377
  If not specified, the name of the unit will be used.`),
6366
- projectId: $addArgumentDescription52(z65.string().optional(), `The ID of the project to create the instance group in.
6378
+ projectId: $addArgumentDescription54(z67.string().optional(), `The ID of the project to create the instance group in.
6367
6379
  If not specified, will use the project from the connection.`),
6368
- region: $addArgumentDescription52(z65.string().optional(), `The region to create the instance group in.
6380
+ region: $addArgumentDescription54(z67.string().optional(), `The region to create the instance group in.
6369
6381
  If not specified, will use the region from the connection.`),
6370
- zone: $addArgumentDescription52(z65.string().optional(), `The zone to create the instance group in.
6382
+ zone: $addArgumentDescription54(z67.string().optional(), `The zone to create the instance group in.
6371
6383
  If not specified, will use the default zone from the connection.`),
6372
- size: $addArgumentDescription52(z65.number().default(1), `The number of instances to create in the group.`),
6384
+ size: $addArgumentDescription54(z67.number().default(1), `The number of instances to create in the group.`),
6373
6385
  ...vmArgs
6374
6386
  },
6375
6387
  secrets: {
@@ -6404,8 +6416,8 @@ var exports_mullvad = {};
6404
6416
  __export(exports_mullvad, {
6405
6417
  peer: () => peer2
6406
6418
  });
6407
- import { $addArgumentDescription as $addArgumentDescription54, $addInputDescription as $addInputDescription54 } from "@highstate/contract";
6408
- import { defineUnit as defineUnit66, z as z67 } from "@highstate/contract";
6419
+ import { $addArgumentDescription as $addArgumentDescription56, $addInputDescription as $addInputDescription56 } from "@highstate/contract";
6420
+ import { defineUnit as defineUnit66, z as z69 } from "@highstate/contract";
6409
6421
 
6410
6422
  // src/wireguard.ts
6411
6423
  var exports_wireguard = {};
@@ -6435,7 +6447,7 @@ __export(exports_wireguard, {
6435
6447
  backendSchema: () => backendSchema,
6436
6448
  amneziaParametersSchema: () => amneziaParametersSchema
6437
6449
  });
6438
- import { $addArgumentDescription as $addArgumentDescription53, $addInputDescription as $addInputDescription53 } from "@highstate/contract";
6450
+ import { $addArgumentDescription as $addArgumentDescription55, $addInputDescription as $addInputDescription55 } from "@highstate/contract";
6439
6451
  import { camelCaseToHumanReadable as __camelCaseToHumanReadable33 } from "@highstate/contract";
6440
6452
  import {
6441
6453
  $args as $args9,
@@ -6445,47 +6457,47 @@ import {
6445
6457
  defineUnit as defineUnit65,
6446
6458
  genericNameSchema as genericNameSchema2,
6447
6459
  secretSchema as secretSchema18,
6448
- z as z66
6460
+ z as z68
6449
6461
  } from "@highstate/contract";
6450
6462
  import { pick as pick29 } from "remeda";
6451
- var backendSchema = z66.enum(["wireguard", "amneziawg"]);
6452
- var amneziaParametersSchema = z66.object({
6453
- i1: z66.string().optional(),
6454
- i2: z66.string().optional(),
6455
- i3: z66.string().optional(),
6456
- i4: z66.string().optional(),
6457
- i5: z66.string().optional(),
6458
- s1: z66.number().optional(),
6459
- s2: z66.number().optional(),
6460
- s3: z66.number().optional(),
6461
- s4: z66.number().optional(),
6462
- jc: z66.number().optional(),
6463
- jmin: z66.number().optional(),
6464
- jmax: z66.number().optional(),
6465
- h1: z66.string().optional(),
6466
- h2: z66.string().optional(),
6467
- h3: z66.string().optional(),
6468
- h4: z66.string().optional()
6463
+ var backendSchema = z68.enum(["wireguard", "amneziawg"]);
6464
+ var amneziaParametersSchema = z68.object({
6465
+ i1: z68.string().optional(),
6466
+ i2: z68.string().optional(),
6467
+ i3: z68.string().optional(),
6468
+ i4: z68.string().optional(),
6469
+ i5: z68.string().optional(),
6470
+ s1: z68.number().optional(),
6471
+ s2: z68.number().optional(),
6472
+ s3: z68.number().optional(),
6473
+ s4: z68.number().optional(),
6474
+ jc: z68.number().optional(),
6475
+ jmin: z68.number().optional(),
6476
+ jmax: z68.number().optional(),
6477
+ h1: z68.string().optional(),
6478
+ h2: z68.string().optional(),
6479
+ h3: z68.string().optional(),
6480
+ h4: z68.string().optional()
6469
6481
  });
6470
6482
  var networkArgs2 = {
6471
6483
  backend: backendSchema.default("wireguard"),
6472
- ipv4: z66.boolean().default(true),
6473
- ipv6: z66.boolean().default(false),
6484
+ ipv4: z68.boolean().default(true),
6485
+ ipv6: z68.boolean().default(false),
6474
6486
  amnezia: amneziaParametersSchema.default({})
6475
6487
  };
6476
6488
  var configSharedArgs = $args9({
6477
- peerEndpointFilter: $addArgumentDescription53(z66.string().optional().meta({ language: "javascript" }), `The filter to use when selecting endpoints for each peer.
6489
+ peerEndpointFilter: $addArgumentDescription55(z68.string().optional().meta({ language: "javascript" }), `The filter to use when selecting endpoints for each peer.
6478
6490
 
6479
6491
  The first matching endpoint will be used.
6480
6492
 
6481
6493
  If not provided, all endpoints will be considered.`),
6482
- listen: $addArgumentDescription53(z66.boolean().default(false), `Whether to include the \`ListenPort\` in the generated config.
6494
+ listen: $addArgumentDescription55(z68.boolean().default(false), `Whether to include the \`ListenPort\` in the generated config.
6483
6495
 
6484
6496
  By default, is \`false\` because in most cases the config is used for peers which don't listen for incoming connections.`)
6485
6497
  });
6486
6498
  var networkEntity2 = defineEntity34({
6487
6499
  type: "wireguard.network.v1",
6488
- schema: z66.object(networkArgs2),
6500
+ schema: z68.object(networkArgs2),
6489
6501
  meta: {
6490
6502
  description: `The entity representing the WireGuard network configuration.
6491
6503
 
@@ -6497,30 +6509,30 @@ var networkEntity2 = defineEntity34({
6497
6509
  secondaryIcon: "mdi:local-area-network-connect"
6498
6510
  }
6499
6511
  });
6500
- var nodeExposePolicySchema = z66.enum(["always", "when-has-endpoint", "never"]);
6501
- var feedDaemonSyncModeSchema = z66.enum(["sse", "polling"]);
6502
- var feedDaemonBackendTypeSchema = z66.enum([
6512
+ var nodeExposePolicySchema = z68.enum(["always", "when-has-endpoint", "never"]);
6513
+ var feedDaemonSyncModeSchema = z68.enum(["sse", "polling"]);
6514
+ var feedDaemonBackendTypeSchema = z68.enum([
6503
6515
  "wg-quick",
6504
6516
  "networkmanager",
6505
6517
  "netns",
6506
6518
  "windows",
6507
6519
  "windows-manager"
6508
6520
  ]);
6509
- var feedDisplayInfoSchema = z66.object({
6510
- title: z66.string().meta({ title: __camelCaseToHumanReadable33("title"), description: `The display title of the tunnel.` }),
6511
- description: z66.string().optional().meta({ title: __camelCaseToHumanReadable33("description"), description: `The display description of the tunnel.` }),
6512
- iconUrl: z66.url().optional().meta({ title: __camelCaseToHumanReadable33("iconUrl"), description: `The display icon URL of the tunnel.
6521
+ var feedDisplayInfoSchema = z68.object({
6522
+ title: z68.string().meta({ title: __camelCaseToHumanReadable33("title"), description: `The display title of the tunnel.` }),
6523
+ description: z68.string().optional().meta({ title: __camelCaseToHumanReadable33("description"), description: `The display description of the tunnel.` }),
6524
+ iconUrl: z68.url().optional().meta({ title: __camelCaseToHumanReadable33("iconUrl"), description: `The display icon URL of the tunnel.
6513
6525
 
6514
6526
  Must only be \`data:\` URL with SVG image.` })
6515
6527
  });
6516
- var feedMetadataSchema = z66.object({
6517
- id: z66.string().meta({ title: __camelCaseToHumanReadable33("id"), description: `The ID of the tunnel in the feed.` }),
6528
+ var feedMetadataSchema = z68.object({
6529
+ id: z68.string().meta({ title: __camelCaseToHumanReadable33("id"), description: `The ID of the tunnel in the feed.` }),
6518
6530
  name: genericNameSchema2.meta({ title: __camelCaseToHumanReadable33("name"), description: `The suggested name of the interface for the tunnel.` }),
6519
- enabled: z66.boolean().default(false).meta({ title: __camelCaseToHumanReadable33("enabled"), description: `Whether the tunnel should be enabled by the client.` }),
6520
- forced: z66.boolean().default(false).meta({ title: __camelCaseToHumanReadable33("forced"), description: `Whether the tunnel state must be forced by the client.` }),
6521
- exclusive: z66.boolean().default(false).meta({ title: __camelCaseToHumanReadable33("exclusive"), description: `Whether the tunnel is exclusive and should not be enabled with other tunnels.` }),
6531
+ enabled: z68.boolean().default(false).meta({ title: __camelCaseToHumanReadable33("enabled"), description: `Whether the tunnel should be enabled by the client.` }),
6532
+ forced: z68.boolean().default(false).meta({ title: __camelCaseToHumanReadable33("forced"), description: `Whether the tunnel state must be forced by the client.` }),
6533
+ exclusive: z68.boolean().default(false).meta({ title: __camelCaseToHumanReadable33("exclusive"), description: `Whether the tunnel is exclusive and should not be enabled with other tunnels.` }),
6522
6534
  displayInfo: feedDisplayInfoSchema.meta({ title: __camelCaseToHumanReadable33("displayInfo"), description: `The display information of the tunnel.` }),
6523
- warningMessage: z66.string().optional().meta({ title: __camelCaseToHumanReadable33("warningMessage"), description: `The warning message to display for the tunnel.` })
6535
+ warningMessage: z68.string().optional().meta({ title: __camelCaseToHumanReadable33("warningMessage"), description: `The warning message to display for the tunnel.` })
6524
6536
  });
6525
6537
  var peerEntity = defineEntity34({
6526
6538
  type: "wireguard.peer.v1",
@@ -6555,23 +6567,23 @@ var peerEntity = defineEntity34({
6555
6567
  required: false
6556
6568
  }
6557
6569
  },
6558
- schema: z66.object({
6570
+ schema: z68.object({
6559
6571
  name: genericNameSchema2.meta({ title: __camelCaseToHumanReadable33("name"), description: `The name of the WireGuard peer.` }),
6560
- publicKey: z66.string().meta({ title: __camelCaseToHumanReadable33("publicKey"), description: `The public key of the WireGuard peer.` }),
6561
- presharedKey: secretSchema18(z66.string()).optional().meta({ title: __camelCaseToHumanReadable33("presharedKey"), description: `The pre-shared key of the WireGuard peer.
6572
+ publicKey: z68.string().meta({ title: __camelCaseToHumanReadable33("publicKey"), description: `The public key of the WireGuard peer.` }),
6573
+ presharedKey: secretSchema18(z68.string()).optional().meta({ title: __camelCaseToHumanReadable33("presharedKey"), description: `The pre-shared key of the WireGuard peer.
6562
6574
 
6563
6575
  If one of two peers has \`presharedKey\` set, the other peer must have \`presharedKey\` set too and they must be equal.
6564
6576
 
6565
6577
  Will be ignored if both peers have \`presharedKeyPart\` set.` }),
6566
- presharedKeyPart: secretSchema18(z66.string()).optional().meta({ title: __camelCaseToHumanReadable33("presharedKeyPart"), description: `The pre-shared key part of the WireGuard peer.
6578
+ presharedKeyPart: secretSchema18(z68.string()).optional().meta({ title: __camelCaseToHumanReadable33("presharedKeyPart"), description: `The pre-shared key part of the WireGuard peer.
6567
6579
 
6568
6580
  If both peers have \`presharedKeyPart\` set, their \`presharedKey\` will be calculated as sha256 of the two parts.` }),
6569
- listenPort: z66.number().default(51820).meta({ title: __camelCaseToHumanReadable33("listenPort"), description: `The port where the WireGuard peer is listening.
6581
+ listenPort: z68.number().default(51820).meta({ title: __camelCaseToHumanReadable33("listenPort"), description: `The port where the WireGuard peer is listening.
6570
6582
 
6571
6583
  Will be used:
6572
6584
  1. For implementations if the listen port is not set elsewhere.
6573
6585
  2. To map L3 endpoints to L4 endpoints with this port.` }),
6574
- persistentKeepalive: z66.number().int().nonnegative().default(0).meta({ title: __camelCaseToHumanReadable33("persistentKeepalive"), description: `The keepalive interval in seconds that will be used by all nodes connecting to this peer.
6586
+ persistentKeepalive: z68.number().int().nonnegative().default(0).meta({ title: __camelCaseToHumanReadable33("persistentKeepalive"), description: `The keepalive interval in seconds that will be used by all nodes connecting to this peer.
6575
6587
 
6576
6588
  If set to 0, keepalive is disabled.` }),
6577
6589
  feedMetadata: feedMetadataSchema.optional().meta({ title: __camelCaseToHumanReadable33("feedMetadata"), description: `The wg-feed metadata of the WireGuard peer.
@@ -6590,8 +6602,8 @@ var identityEntity = defineEntity34({
6590
6602
  includes: {
6591
6603
  peer: peerEntity
6592
6604
  },
6593
- schema: z66.object({
6594
- privateKey: secretSchema18(z66.string()).meta({ title: __camelCaseToHumanReadable33("privateKey"), description: `The private key of the WireGuard identity.` })
6605
+ schema: z68.object({
6606
+ privateKey: secretSchema18(z68.string()).meta({ title: __camelCaseToHumanReadable33("privateKey"), description: `The private key of the WireGuard identity.` })
6595
6607
  }),
6596
6608
  meta: {
6597
6609
  color: "#F44336",
@@ -6610,7 +6622,7 @@ var configEntity = defineEntity34({
6610
6622
  multiple: true
6611
6623
  }
6612
6624
  },
6613
- schema: z66.object({
6625
+ schema: z68.object({
6614
6626
  feedMetadata: feedMetadataSchema.optional().meta({ title: __camelCaseToHumanReadable33("feedMetadata"), description: `The metadata to include in the wg-feed for this config.
6615
6627
 
6616
6628
  Must be provided for the configs uploaded to wg-feed.` })
@@ -6624,14 +6636,14 @@ var configEntity = defineEntity34({
6624
6636
  }
6625
6637
  });
6626
6638
  var feedDaemonArgs = $args9({
6627
- feedName: $addArgumentDescription53(genericNameSchema2.default("main"), `The label of the feed in the wg-feed daemon config.`),
6628
- backendName: $addArgumentDescription53(genericNameSchema2.default("default"), `The label of the backend in the wg-feed daemon config.`),
6629
- backendType: $addArgumentDescription53(feedDaemonBackendTypeSchema.default("wg-quick"), `The backend type used by the wg-feed daemon.`),
6630
- syncMode: $addArgumentDescription53(feedDaemonSyncModeSchema.default("sse"), `The sync mode used by the wg-feed daemon.`),
6631
- pollingInterval: $addArgumentDescription53(z66.number().int().nonnegative().default(0), `The polling interval in seconds.
6639
+ feedName: $addArgumentDescription55(genericNameSchema2.default("main"), `The label of the feed in the wg-feed daemon config.`),
6640
+ backendName: $addArgumentDescription55(genericNameSchema2.default("default"), `The label of the backend in the wg-feed daemon config.`),
6641
+ backendType: $addArgumentDescription55(feedDaemonBackendTypeSchema.default("wg-quick"), `The backend type used by the wg-feed daemon.`),
6642
+ syncMode: $addArgumentDescription55(feedDaemonSyncModeSchema.default("sse"), `The sync mode used by the wg-feed daemon.`),
6643
+ pollingInterval: $addArgumentDescription55(z68.number().int().nonnegative().default(0), `The polling interval in seconds.
6632
6644
 
6633
6645
  If set to 0, wg-feed daemon uses the server-provided TTL.`),
6634
- statePath: $addArgumentDescription53(z66.string().default("/var/lib/wg-feed/state.json"), `The state file path used by the wg-feed daemon.`)
6646
+ statePath: $addArgumentDescription55(z68.string().default("/var/lib/wg-feed/state.json"), `The state file path used by the wg-feed daemon.`)
6635
6647
  });
6636
6648
  var network3 = defineUnit65({
6637
6649
  type: "wireguard.network.v1",
@@ -6652,9 +6664,9 @@ var network3 = defineUnit65({
6652
6664
  }
6653
6665
  });
6654
6666
  var sharedFeedArgs = $args9({
6655
- feedMetadata: $addArgumentDescription53(z66.discriminatedUnion("provided", [
6656
- z66.object({
6657
- provided: z66.literal("yes").meta({ title: __camelCaseToHumanReadable33("provided"), description: `Whether this config is enabled for upload to wg-feed.
6667
+ feedMetadata: $addArgumentDescription55(z68.discriminatedUnion("provided", [
6668
+ z68.object({
6669
+ provided: z68.literal("yes").meta({ title: __camelCaseToHumanReadable33("provided"), description: `Whether this config is enabled for upload to wg-feed.
6658
6670
 
6659
6671
  You must fill the metadata fields.` }),
6660
6672
  ...pick29(feedMetadataSchema.shape, [
@@ -6667,24 +6679,24 @@ var sharedFeedArgs = $args9({
6667
6679
  ]),
6668
6680
  ...feedDisplayInfoSchema.shape
6669
6681
  }),
6670
- z66.object({
6671
- provided: z66.literal("no").meta({ title: __camelCaseToHumanReadable33("provided"), description: `Whether this config is enabled for upload to wg-feed.` })
6682
+ z68.object({
6683
+ provided: z68.literal("no").meta({ title: __camelCaseToHumanReadable33("provided"), description: `Whether this config is enabled for upload to wg-feed.` })
6672
6684
  })
6673
6685
  ]).prefault({ provided: "no" }), `The metadata to include in the wg-feed for this config.`)
6674
6686
  });
6675
6687
  var sharedPeerArgs = $args9({
6676
- peerName: $addArgumentDescription53(z66.string().optional(), `The name of the WireGuard peer.
6688
+ peerName: $addArgumentDescription55(z68.string().optional(), `The name of the WireGuard peer.
6677
6689
 
6678
6690
  If not provided, the peer will be named after the unit.`),
6679
- addresses: $addArgumentDescription53(z66.string().array().default([]), `The addresses of the WireGuard interface.
6691
+ addresses: $addArgumentDescription55(z68.string().array().default([]), `The addresses of the WireGuard interface.
6680
6692
 
6681
6693
  The address may be any IPv4 or IPv6 address. CIDR notation is also supported.`),
6682
- exitNode: $addArgumentDescription53(z66.boolean().default(false), `The convenience option to set \`allowedIps\` to \`0.0.0.0/0, ::/0\`.
6694
+ exitNode: $addArgumentDescription55(z68.boolean().default(false), `The convenience option to set \`allowedIps\` to \`0.0.0.0/0, ::/0\`.
6683
6695
 
6684
6696
  Will be merged with the \`allowedIps\` if provided.`),
6685
- allowedSubnets: $addArgumentDescription53(z66.string().array().default([]), `The list of IP ranges to include in the allowed IPs of the peer.`),
6686
- excludedSubnets: $addArgumentDescription53(z66.string().array().default([]), `The list of IP ranges to exclude from the tunnel.`),
6687
- excludePrivateSubnets: $addArgumentDescription53(z66.boolean().default(false), `The convenience option to exclude private IPs from the tunnel.
6697
+ allowedSubnets: $addArgumentDescription55(z68.string().array().default([]), `The list of IP ranges to include in the allowed IPs of the peer.`),
6698
+ excludedSubnets: $addArgumentDescription55(z68.string().array().default([]), `The list of IP ranges to exclude from the tunnel.`),
6699
+ excludePrivateSubnets: $addArgumentDescription55(z68.boolean().default(false), `The convenience option to exclude private IPs from the tunnel.
6688
6700
 
6689
6701
  For IPv4, the private IPs are:
6690
6702
 
@@ -6698,47 +6710,47 @@ var sharedPeerArgs = $args9({
6698
6710
  - \`fe80::/10\`
6699
6711
 
6700
6712
  Will be merged with \`excludedIps\` if provided.`),
6701
- endpoints: $addArgumentDescription53(z66.string().array().default([]), `The endpoints of the WireGuard peer.`),
6702
- dns: $addArgumentDescription53(z66.string().array().default([]), `The DNS servers that should be used by the interface connected to the WireGuard peer.
6713
+ endpoints: $addArgumentDescription55(z68.string().array().default([]), `The endpoints of the WireGuard peer.`),
6714
+ dns: $addArgumentDescription55(z68.string().array().default([]), `The DNS servers that should be used by the interface connected to the WireGuard peer.
6703
6715
 
6704
6716
  If multiple peers define DNS servers, the node will merge them into a single list (but this is discouraged).`),
6705
- includeAddresses: $addArgumentDescription53(z66.boolean().default(true), `The convenience option to include the addresses to the allowed IPs.
6717
+ includeAddresses: $addArgumentDescription55(z68.boolean().default(true), `The convenience option to include the addresses to the allowed IPs.
6706
6718
 
6707
6719
  By default, is \`true\`.`),
6708
- includeDns: $addArgumentDescription53(z66.boolean().default(true), `The convenience option to include the DNS servers to the allowed IPs.
6720
+ includeDns: $addArgumentDescription55(z68.boolean().default(true), `The convenience option to include the DNS servers to the allowed IPs.
6709
6721
 
6710
6722
  By default, is \`true\`.`),
6711
- listenPort: $addArgumentDescription53(z66.number().default(51820), `The port to listen on.`),
6712
- persistentKeepalive: $addArgumentDescription53(z66.number().int().nonnegative().default(0), `The keepalive interval in seconds that will be used by all nodes connecting to this peer.
6723
+ listenPort: $addArgumentDescription55(z68.number().default(51820), `The port to listen on.`),
6724
+ persistentKeepalive: $addArgumentDescription55(z68.number().int().nonnegative().default(0), `The keepalive interval in seconds that will be used by all nodes connecting to this peer.
6713
6725
 
6714
6726
  If set to 0, keepalive is disabled.`),
6715
6727
  ...sharedFeedArgs
6716
6728
  });
6717
6729
  var sharedPeerInputs = $inputs4({
6718
- network: $addInputDescription53({
6730
+ network: $addInputDescription55({
6719
6731
  entity: networkEntity2,
6720
6732
  required: false
6721
6733
  }, `The network to use for the WireGuard identity.
6722
6734
 
6723
6735
  If not provided, the identity will use default network configuration.`),
6724
- endpoints: $addInputDescription53({
6736
+ endpoints: $addInputDescription55({
6725
6737
  entity: l3EndpointEntity,
6726
6738
  multiple: true,
6727
6739
  required: false
6728
6740
  }, `The L3/L4 endpoints of the identity.
6729
6741
 
6730
6742
  All L3 endpoints will be adjusted to L4 endpoints with listen port of the identity.`),
6731
- allowedEndpoints: $addInputDescription53({
6743
+ allowedEndpoints: $addInputDescription55({
6732
6744
  entity: l3EndpointEntity,
6733
6745
  multiple: true,
6734
6746
  required: false
6735
6747
  }, `the endpoints to add to the allowed IPs of the identity.`),
6736
- allowedSubnets: $addInputDescription53({
6748
+ allowedSubnets: $addInputDescription55({
6737
6749
  entity: subnetEntity,
6738
6750
  multiple: true,
6739
6751
  required: false
6740
6752
  }, `The subnets to add to the allowed IPs of the identity.`),
6741
- relayedPeers: $addInputDescription53({
6753
+ relayedPeers: $addInputDescription55({
6742
6754
  entity: peerEntity,
6743
6755
  multiple: true,
6744
6756
  required: false
@@ -6751,10 +6763,10 @@ var peer = defineUnit65({
6751
6763
  type: "wireguard.peer.v1",
6752
6764
  args: {
6753
6765
  ...sharedPeerArgs,
6754
- publicKey: $addArgumentDescription53(z66.string(), `The public key of the WireGuard peer.`)
6766
+ publicKey: $addArgumentDescription55(z68.string(), `The public key of the WireGuard peer.`)
6755
6767
  },
6756
6768
  secrets: {
6757
- presharedKey: $addArgumentDescription53(z66.string().optional(), `The pre-shared key which should be used for the peer.`)
6769
+ presharedKey: $addArgumentDescription55(z68.string().optional(), `The pre-shared key which should be used for the peer.`)
6758
6770
  },
6759
6771
  inputs: sharedPeerInputs,
6760
6772
  outputs: sharedPeerOutputs,
@@ -6795,10 +6807,10 @@ var identity = defineUnit65({
6795
6807
  type: "wireguard.identity.v1",
6796
6808
  args: sharedPeerArgs,
6797
6809
  secrets: {
6798
- privateKey: $addArgumentDescription53(z66.string().optional(), `The private key of the WireGuard identity.
6810
+ privateKey: $addArgumentDescription55(z68.string().optional(), `The private key of the WireGuard identity.
6799
6811
 
6800
6812
  If not provided, the key will be generated automatically.`),
6801
- presharedKeyPart: $addArgumentDescription53(z66.string().optional(), `The part of the pre-shared of the WireGuard identity.
6813
+ presharedKeyPart: $addArgumentDescription55(z68.string().optional(), `The part of the pre-shared of the WireGuard identity.
6802
6814
 
6803
6815
  Will be generated automatically if not provided.`)
6804
6816
  },
@@ -6821,30 +6833,32 @@ var identity = defineUnit65({
6821
6833
  var nodeK8s = defineUnit65({
6822
6834
  type: "wireguard.node.k8s.v1",
6823
6835
  args: {
6824
- appName: $addArgumentDescription53(z66.string().optional(), `The name of the namespace/deployment/statefulset where the WireGuard node will be deployed.
6836
+ appName: $addArgumentDescription55(z68.string().optional(), `The name of the namespace/deployment/statefulset where the WireGuard node will be deployed.
6825
6837
 
6826
6838
  By default, the name is \`wg-\${identity.name}\`.`),
6827
- external: $addArgumentDescription53(z66.boolean().default(false), `Whether to expose the WireGuard node to the outside world.`),
6828
- exposePolicy: $addArgumentDescription53(nodeExposePolicySchema.default("when-has-endpoint"), `The policy to use for exposing the WireGuard node.
6839
+ external: $addArgumentDescription55(z68.boolean().default(false), `Whether to expose the WireGuard node to the outside world.`),
6840
+ nodePort: $addArgumentDescription55(z68.number().int().min(30000).max(32767).optional(), `The NodePort to assign when the node is exposed.`),
6841
+ exposePolicy: $addArgumentDescription55(nodeExposePolicySchema.default("when-has-endpoint"), `The policy to use for exposing the WireGuard node.
6829
6842
 
6830
6843
  - \`always\` - The node will be exposed and the service will be created.
6831
6844
  - \`when-has-endpoint\` - The node will be exposed only if the provided idenity has at least one endpoint.
6832
6845
  - \`never\` - The node will not be exposed and the service will not be created.
6833
6846
 
6834
6847
  * By default, the \`when-has-endpoint\` policy is used.`),
6835
- containerSpec: $addArgumentDescription53(z66.record(z66.string(), z66.unknown()).optional(), `The extra specification of the container which runs the WireGuard node.
6848
+ listen: $addArgumentDescription55(z68.boolean().default(true), `Whether to include a listen port in the generated WireGuard configuration.`),
6849
+ containerSpec: $addArgumentDescription55(z68.record(z68.string(), z68.unknown()).optional(), `The extra specification of the container which runs the WireGuard node.
6836
6850
 
6837
6851
  Will override any overlapping fields.`),
6838
- forwardRestrictedSubnets: $addArgumentDescription53(z66.string().array().default([]), `List of CIDR blocks that should be blocked from forwarding through this WireGuard node.
6852
+ forwardRestrictedSubnets: $addArgumentDescription55(z68.string().array().default([]), `List of CIDR blocks that should be blocked from forwarding through this WireGuard node.
6839
6853
 
6840
6854
  This prevents other peers from reaching these destination CIDRs while still allowing
6841
6855
  the peers in those CIDRs to access the internet and other allowed endpoints.
6842
6856
 
6843
6857
  Useful for peer isolation where you want to prevent cross-peer communication.`),
6844
- allowClusterPods: $addArgumentDescription53(z66.boolean().default(false), `Whether to allow traffic to all pods inside the cluster from the WireGuard node.
6858
+ allowClusterPods: $addArgumentDescription55(z68.boolean().default(false), `Whether to allow traffic to all pods inside the cluster from the WireGuard node.
6845
6859
 
6846
6860
  By default, is false.`),
6847
- lockdownUpstream: $addArgumentDescription53(z66.boolean().default(false), `Whether to drop all traffic from the interface using ip rule with priority 100.
6861
+ lockdownUpstream: $addArgumentDescription55(z68.boolean().default(false), `Whether to drop all traffic from the interface using ip rule with priority 100.
6848
6862
 
6849
6863
  This is useful for preventing the traffic leaks before upstream node is attached via \`downstreamInterface\` input.
6850
6864
  They will add their own ip rule with <100 priority which allows traffic from the interface.`)
@@ -6904,32 +6918,32 @@ var nodeK8s = defineUnit65({
6904
6918
  var nodeFeedK8s = defineUnit65({
6905
6919
  type: "wireguard.node.feed.k8s.v1",
6906
6920
  args: {
6907
- appName: $addArgumentDescription53(z66.string().optional(), `The name of the namespace/deployment/statefulset where the daemon will be deployed.
6921
+ appName: $addArgumentDescription55(z68.string().optional(), `The name of the namespace/deployment/statefulset where the daemon will be deployed.
6908
6922
 
6909
6923
  By default, the name is \`wg-\${identity.name}\`.`),
6910
- external: $addArgumentDescription53(z66.boolean().default(false), `Whether to expose the WireGuard node to the outside world.`),
6911
- expose: $addArgumentDescription53(z66.boolean().default(false), `Whether to create a Service and allow ingress.`),
6912
- listenPort: $addArgumentDescription53(z66.number().default(51820), `The UDP port that will be exposed by the Service.
6924
+ external: $addArgumentDescription55(z68.boolean().default(false), `Whether to expose the WireGuard node to the outside world.`),
6925
+ expose: $addArgumentDescription55(z68.boolean().default(false), `Whether to create a Service and allow ingress.`),
6926
+ listenPort: $addArgumentDescription55(z68.number().default(51820), `The UDP port that will be exposed by the Service.
6913
6927
 
6914
6928
  This is required for consumers that need to know the port ahead of time.`),
6915
- nodePort: $addArgumentDescription53(z66.number().int().min(30000).max(32767).optional(), `The NodePort to assign when the node is exposed.`),
6916
- interfaceName: $addArgumentDescription53(z66.string().default("wg0"), `The name of the WireGuard interface to export as \`interface\` output.
6929
+ nodePort: $addArgumentDescription55(z68.number().int().min(30000).max(32767).optional(), `The NodePort to assign when the node is exposed.`),
6930
+ interfaceName: $addArgumentDescription55(z68.string().default("wg0"), `The name of the WireGuard interface to export as \`interface\` output.
6917
6931
 
6918
6932
  Note: wg-feed may manage multiple tunnels.
6919
6933
  This output is a convenience handle for downstream units.`),
6920
6934
  ...feedDaemonArgs,
6921
- enabledTunnels: $addArgumentDescription53(z66.string().array().default([]), `The wg-feed tunnel IDs to force-enable in the daemon config.`),
6922
- forwardRestrictedSubnets: $addArgumentDescription53(z66.string().array().default([]), `List of CIDR blocks that should be blocked from forwarding through this WireGuard node.
6935
+ enabledTunnels: $addArgumentDescription55(z68.string().array().default([]), `The wg-feed tunnel IDs to force-enable in the daemon config.`),
6936
+ forwardRestrictedSubnets: $addArgumentDescription55(z68.string().array().default([]), `List of CIDR blocks that should be blocked from forwarding through this WireGuard node.
6923
6937
 
6924
6938
  This prevents other peers from reaching these destination CIDRs while still allowing
6925
6939
  the peers in those CIDRs to access the internet and other allowed endpoints.
6926
6940
 
6927
6941
  Useful for peer isolation where you want to prevent cross-peer communication.`),
6928
- lockdownUpstream: $addArgumentDescription53(z66.boolean().default(false), `Whether to drop all traffic from the interface using ip rule with priority 100.
6942
+ lockdownUpstream: $addArgumentDescription55(z68.boolean().default(false), `Whether to drop all traffic from the interface using ip rule with priority 100.
6929
6943
 
6930
6944
  This is useful for preventing the traffic leaks before upstream node is attached via \`downstreamInterface\` input.
6931
6945
  They will add their own ip rule with <100 priority which allows traffic from the interface.`),
6932
- containerSpec: $addArgumentDescription53(z66.record(z66.string(), z66.unknown()).optional(), `The extra specification of the container which runs the wg-feed daemon.
6946
+ containerSpec: $addArgumentDescription55(z68.record(z68.string(), z68.unknown()).optional(), `The extra specification of the container which runs the wg-feed daemon.
6933
6947
 
6934
6948
  Will override any overlapping fields.`)
6935
6949
  },
@@ -6981,27 +6995,27 @@ var nodeFeedK8s = defineUnit65({
6981
6995
  var nodeFeed = defineUnit65({
6982
6996
  type: "wireguard.node.feed.v1",
6983
6997
  args: {
6984
- serviceName: $addArgumentDescription53(z66.string().optional(), `The name of the wg-feed daemon systemd service.
6998
+ serviceName: $addArgumentDescription55(z68.string().optional(), `The name of the wg-feed daemon systemd service.
6985
6999
 
6986
7000
  By default, the name is \`wg-feed-\${unitName}\`.`),
6987
- listenPort: $addArgumentDescription53(z66.number().default(51820), `The UDP port that will be exposed by the output peer.`),
6988
- interfaceName: $addArgumentDescription53(z66.string().default("wg0"), `The name of the WireGuard interface to use for lockdown rules.
7001
+ listenPort: $addArgumentDescription55(z68.number().default(51820), `The UDP port that will be exposed by the output peer.`),
7002
+ interfaceName: $addArgumentDescription55(z68.string().default("wg0"), `The name of the WireGuard interface to use for lockdown rules.
6989
7003
 
6990
7004
  Note: wg-feed may manage multiple tunnels.`),
6991
- daemonPath: $addArgumentDescription53(z66.string().default("/usr/local/bin/wg-feed-daemon"), `The path where the wg-feed daemon binary should be installed.`),
6992
- configPath: $addArgumentDescription53(z66.string().default("/etc/wg-feed/config.yaml"), `The path where the wg-feed daemon config should be written.`),
7005
+ daemonPath: $addArgumentDescription55(z68.string().default("/usr/local/bin/wg-feed-daemon"), `The path where the wg-feed daemon binary should be installed.`),
7006
+ configPath: $addArgumentDescription55(z68.string().default("/etc/wg-feed/config.yaml"), `The path where the wg-feed daemon config should be written.`),
6993
7007
  ...feedDaemonArgs,
6994
- enabledTunnels: $addArgumentDescription53(z66.string().array().default([]), `The wg-feed tunnel IDs to force-enable in the daemon config.`),
6995
- forwardRestrictedSubnets: $addArgumentDescription53(z66.string().array().default([]), `List of CIDR blocks that should be blocked from forwarding through this WireGuard node.
7008
+ enabledTunnels: $addArgumentDescription55(z68.string().array().default([]), `The wg-feed tunnel IDs to force-enable in the daemon config.`),
7009
+ forwardRestrictedSubnets: $addArgumentDescription55(z68.string().array().default([]), `List of CIDR blocks that should be blocked from forwarding through this WireGuard node.
6996
7010
 
6997
7011
  This prevents other peers from reaching these destination CIDRs while still allowing
6998
7012
  the peers in those CIDRs to access the internet and other allowed endpoints.`),
6999
- lockdownUpstream: $addArgumentDescription53(z66.boolean().default(false), `Whether to drop all traffic from the interface using ip rule with priority 100.
7013
+ lockdownUpstream: $addArgumentDescription55(z68.boolean().default(false), `Whether to drop all traffic from the interface using ip rule with priority 100.
7000
7014
 
7001
7015
  This is useful for preventing traffic leaks before another routing rule is installed.`)
7002
7016
  },
7003
7017
  secrets: {
7004
- endpoints: $addArgumentDescription53(z66.string().array().default([]), `The wg-feed setup URLs to configure on the daemon.
7018
+ endpoints: $addArgumentDescription55(z68.string().array().default([]), `The wg-feed setup URLs to configure on the daemon.
7005
7019
 
7006
7020
  This is useful for URLs that include secret fragments such as age keys.`)
7007
7021
  },
@@ -7042,23 +7056,23 @@ var nodeFeed = defineUnit65({
7042
7056
  var node2 = defineUnit65({
7043
7057
  type: "wireguard.node.v1",
7044
7058
  args: {
7045
- interfaceName: $addArgumentDescription53(z66.string().optional(), `The name of the WireGuard interface.
7059
+ interfaceName: $addArgumentDescription55(z68.string().optional(), `The name of the WireGuard interface.
7046
7060
 
7047
7061
  By default, the name is \`wg-\${identity.name}\` (truncated to 15 characters).`),
7048
- forwardRestrictedIps: $addArgumentDescription53(z66.string().array().default([]), `List of CIDR blocks that should be blocked from forwarding through this WireGuard node.
7062
+ forwardRestrictedIps: $addArgumentDescription55(z68.string().array().default([]), `List of CIDR blocks that should be blocked from forwarding through this WireGuard node.
7049
7063
 
7050
7064
  This prevents other peers from reaching these destination CIDRs while still allowing
7051
7065
  the peers in those CIDRs to access the internet and other allowed endpoints.
7052
7066
 
7053
7067
  Useful for peer isolation where you want to prevent cross-peer communication.`),
7054
- enableMasquerade: $addArgumentDescription53(z66.boolean().default(true), `Whether to enable IP masquerading (NAT) for outgoing traffic.
7068
+ enableMasquerade: $addArgumentDescription55(z68.boolean().default(true), `Whether to enable IP masquerading (NAT) for outgoing traffic.
7055
7069
 
7056
7070
  By default, IP masquerading is enabled.`),
7057
7071
  ...configSharedArgs,
7058
- preUpScript: $addArgumentDescription53(z66.string().optional().meta({ language: "shell" }), `Script to run before bringing up the interface.`),
7059
- postUpScript: $addArgumentDescription53(z66.string().optional().meta({ language: "shell" }), `Script to run after bringing up the interface.`),
7060
- preDownScript: $addArgumentDescription53(z66.string().optional().meta({ language: "shell" }), `Script to run before bringing down the interface.`),
7061
- postDownScript: $addArgumentDescription53(z66.string().optional().meta({ language: "shell" }), `Script to run after bringing down the interface.`)
7072
+ preUpScript: $addArgumentDescription55(z68.string().optional().meta({ language: "shell" }), `Script to run before bringing up the interface.`),
7073
+ postUpScript: $addArgumentDescription55(z68.string().optional().meta({ language: "shell" }), `Script to run after bringing up the interface.`),
7074
+ preDownScript: $addArgumentDescription55(z68.string().optional().meta({ language: "shell" }), `Script to run before bringing down the interface.`),
7075
+ postDownScript: $addArgumentDescription55(z68.string().optional().meta({ language: "shell" }), `Script to run after bringing down the interface.`)
7062
7076
  },
7063
7077
  inputs: {
7064
7078
  identity: {
@@ -7135,7 +7149,7 @@ var config = defineUnit65({
7135
7149
  var existingConfig = defineUnit65({
7136
7150
  type: "wireguard.existing-config.v1",
7137
7151
  args: {
7138
- config: $addArgumentDescription53(z66.string().meta({ language: "ini" }), `The existing wg-quick or awg-quick configuration content.`)
7152
+ config: $addArgumentDescription55(z68.string().meta({ language: "ini" }), `The existing wg-quick or awg-quick configuration content.`)
7139
7153
  },
7140
7154
  outputs: {
7141
7155
  config: configEntity,
@@ -7202,29 +7216,29 @@ var configBundle = defineUnit65({
7202
7216
  var feed = defineUnit65({
7203
7217
  type: "wireguard.feed.v1",
7204
7218
  args: {
7205
- ttlSeconds: $addArgumentDescription53(z66.number().int().positive().default(900), `The TTL seconds to suggest to wg-feed clients.
7219
+ ttlSeconds: $addArgumentDescription55(z68.number().int().positive().default(900), `The TTL seconds to suggest to wg-feed clients.
7206
7220
 
7207
7221
  By default, is 900 seconds (15 minutes).`),
7208
- serverEndpoints: $addArgumentDescription53(z66.string().array().default([]), `The endpoints of the wg-feed servers to use for generating the subscription URLs.
7222
+ serverEndpoints: $addArgumentDescription55(z68.string().array().default([]), `The endpoints of the wg-feed servers to use for generating the subscription URLs.
7209
7223
 
7210
7224
  At least one endpoint must be provided either here or via \`serverEndpoints\` input.
7211
7225
 
7212
7226
  The resulting subscription URL will be inferred as: \`https://{firstEndpoint}/{feedId}#{privateKey}\`.`),
7213
- publicKey: $addArgumentDescription53(z66.string().optional(), `The AGE public key (x25519 recipient) to encrypt the configs with.
7227
+ publicKey: $addArgumentDescription55(z68.string().optional(), `The AGE public key (x25519 recipient) to encrypt the configs with.
7214
7228
 
7215
7229
  Note: If you provide this, you must provide the corresponding private key to the clients.
7216
7230
  Resulting subscription URL will not contain the private key.`),
7217
- displayInfo: $addArgumentDescription53(feedDisplayInfoSchema, `The display information of the feed.`),
7218
- warningMessage: $addArgumentDescription53(z66.string().optional(), `The warning message to display for the feed.`)
7231
+ displayInfo: $addArgumentDescription55(feedDisplayInfoSchema, `The display information of the feed.`),
7232
+ warningMessage: $addArgumentDescription55(z68.string().optional(), `The warning message to display for the feed.`)
7219
7233
  },
7220
7234
  secrets: {
7221
- feedId: $addArgumentDescription53(z66.string().optional(), `The cuidv2 of the feed.
7235
+ feedId: $addArgumentDescription55(z68.string().optional(), `The cuidv2 of the feed.
7222
7236
  Will be used as path of the feed in etcd/subscription URL.
7223
7237
 
7224
7238
  In most cases, you don't want to provide this and let it be generated automatically.
7225
7239
 
7226
7240
  The \`id\` field of the feed document will be inferred from this value as \`uuidv5(feedId, "2b5e358c-3510-48fb-b1cf-a8aee788925a")\`.`),
7227
- privateKey: $addArgumentDescription53(z66.string().optional(), `The AGE private key (x25519 identity) to embed in the subscription URL.
7241
+ privateKey: $addArgumentDescription55(z68.string().optional(), `The AGE private key (x25519 identity) to embed in the subscription URL.
7228
7242
 
7229
7243
  If not provided and \`publicKey\` is not provided, a new key pair will be generated.`)
7230
7244
  },
@@ -7261,11 +7275,11 @@ var feed = defineUnit65({
7261
7275
  var peer2 = defineUnit66({
7262
7276
  type: "mullvad.peer.v1",
7263
7277
  args: {
7264
- hostname: z67.string().optional(),
7265
- includeDns: $addArgumentDescription54(z67.boolean().default(true), `Whether to include Mullvad DNS servers in the peer configuration.`)
7278
+ hostname: z69.string().optional(),
7279
+ includeDns: $addArgumentDescription56(z69.boolean().default(true), `Whether to include Mullvad DNS servers in the peer configuration.`)
7266
7280
  },
7267
7281
  inputs: {
7268
- network: $addInputDescription54({
7282
+ network: $addInputDescription56({
7269
7283
  entity: networkEntity2,
7270
7284
  required: false
7271
7285
  }, `The network to use for the WireGuard peer.
@@ -7299,18 +7313,18 @@ __export(exports_timeweb, {
7299
7313
  connectionEntity: () => connectionEntity12,
7300
7314
  connection: () => connection11
7301
7315
  });
7302
- import { $addArgumentDescription as $addArgumentDescription55 } from "@highstate/contract";
7316
+ import { $addArgumentDescription as $addArgumentDescription57 } from "@highstate/contract";
7303
7317
  import {
7304
7318
  defineEntity as defineEntity35,
7305
7319
  defineUnit as defineUnit67,
7306
7320
  secretSchema as secretSchema19,
7307
- z as z68
7321
+ z as z70
7308
7322
  } from "@highstate/contract";
7309
7323
  var connectionEntity12 = defineEntity35({
7310
7324
  type: "timeweb.connection.v1",
7311
- schema: z68.object({
7312
- name: z68.string(),
7313
- apiToken: secretSchema19(z68.string())
7325
+ schema: z70.object({
7326
+ name: z70.string(),
7327
+ apiToken: secretSchema19(z70.string())
7314
7328
  }),
7315
7329
  meta: {
7316
7330
  color: "#0078FF",
@@ -7322,7 +7336,7 @@ var connectionEntity12 = defineEntity35({
7322
7336
  var connection11 = defineUnit67({
7323
7337
  type: "timeweb.connection.v1",
7324
7338
  secrets: {
7325
- apiToken: $addArgumentDescription55(z68.string(), `The API token for the Timeweb account.
7339
+ apiToken: $addArgumentDescription57(z70.string(), `The API token for the Timeweb account.
7326
7340
 
7327
7341
  Can be obtained from the Timeweb control panel.`)
7328
7342
  },
@@ -7343,19 +7357,19 @@ var connection11 = defineUnit67({
7343
7357
  var virtualMachine3 = defineUnit67({
7344
7358
  type: "timeweb.virtual-machine.v1",
7345
7359
  args: {
7346
- vmName: $addArgumentDescription55(z68.string().optional(), `The name of the virtual machine.
7360
+ vmName: $addArgumentDescription57(z70.string().optional(), `The name of the virtual machine.
7347
7361
 
7348
7362
  If not provided, the name of the unit will be used.`),
7349
- presetId: $addArgumentDescription55(z68.number().optional(), `The ID of the preset to use for the virtual machine.
7363
+ presetId: $addArgumentDescription57(z70.number().optional(), `The ID of the preset to use for the virtual machine.
7350
7364
 
7351
7365
  Can be obtained from the Timeweb control panel when creating a new virtual machine.`),
7352
- osId: $addArgumentDescription55(z68.number().optional(), `The ID of the operating system to use for the virtual machine.
7366
+ osId: $addArgumentDescription57(z70.number().optional(), `The ID of the operating system to use for the virtual machine.
7353
7367
 
7354
7368
  Can be obtained from the Timeweb control panel when creating a new virtual machine.`),
7355
- availabilityZone: $addArgumentDescription55(z68.string(), `The ID of the connection to use for the virtual machine.
7369
+ availabilityZone: $addArgumentDescription57(z70.string(), `The ID of the connection to use for the virtual machine.
7356
7370
 
7357
7371
  Can be obtained from the Timeweb control panel when creating a new virtual machine.`),
7358
- ssh: $addArgumentDescription55(vmSshArgs, `The SSH arguments to use for the virtual machine.`)
7372
+ ssh: $addArgumentDescription57(vmSshArgs, `The SSH arguments to use for the virtual machine.`)
7359
7373
  },
7360
7374
  inputs: {
7361
7375
  connection: connectionEntity12,
@@ -7393,24 +7407,24 @@ __export(exports_yandex, {
7393
7407
  connectionEntity: () => connectionEntity13,
7394
7408
  connection: () => connection12
7395
7409
  });
7396
- import { $addArgumentDescription as $addArgumentDescription56, $addInputDescription as $addInputDescription56 } from "@highstate/contract";
7410
+ import { $addArgumentDescription as $addArgumentDescription58, $addInputDescription as $addInputDescription58 } from "@highstate/contract";
7397
7411
  import { camelCaseToHumanReadable as __camelCaseToHumanReadable34 } from "@highstate/contract";
7398
7412
  import {
7399
7413
  $args as $args10,
7400
7414
  defineEntity as defineEntity36,
7401
7415
  defineUnit as defineUnit68,
7402
7416
  secretSchema as secretSchema20,
7403
- z as z69
7417
+ z as z71
7404
7418
  } from "@highstate/contract";
7405
7419
  var connectionEntity13 = defineEntity36({
7406
7420
  type: "yandex.connection.v1",
7407
- schema: z69.object({
7408
- authorizedKeyJson: secretSchema20(z69.string()).meta({ title: __camelCaseToHumanReadable34("authorizedKeyJson"), description: `The JSON of the authorized key for the service account.` }),
7409
- cloudId: z69.string().meta({ title: __camelCaseToHumanReadable34("cloudId"), description: `The ID of the cloud.` }),
7410
- defaultFolderId: z69.string().meta({ title: __camelCaseToHumanReadable34("defaultFolderId"), description: `The default folder ID.` }),
7411
- defaultZone: z69.string().meta({ title: __camelCaseToHumanReadable34("defaultZone"), description: `The default availability zone.` }),
7412
- regionId: z69.string().optional().meta({ title: __camelCaseToHumanReadable34("regionId"), description: `The region ID.` }),
7413
- serviceAccountId: z69.string().meta({ title: __camelCaseToHumanReadable34("serviceAccountId"), description: `The ID of the service account used for authentication.` })
7421
+ schema: z71.object({
7422
+ authorizedKeyJson: secretSchema20(z71.string()).meta({ title: __camelCaseToHumanReadable34("authorizedKeyJson"), description: `The JSON of the authorized key for the service account.` }),
7423
+ cloudId: z71.string().meta({ title: __camelCaseToHumanReadable34("cloudId"), description: `The ID of the cloud.` }),
7424
+ defaultFolderId: z71.string().meta({ title: __camelCaseToHumanReadable34("defaultFolderId"), description: `The default folder ID.` }),
7425
+ defaultZone: z71.string().meta({ title: __camelCaseToHumanReadable34("defaultZone"), description: `The default availability zone.` }),
7426
+ regionId: z71.string().optional().meta({ title: __camelCaseToHumanReadable34("regionId"), description: `The region ID.` }),
7427
+ serviceAccountId: z71.string().meta({ title: __camelCaseToHumanReadable34("serviceAccountId"), description: `The ID of the service account used for authentication.` })
7414
7428
  }),
7415
7429
  meta: {
7416
7430
  color: "#0080ff",
@@ -7422,22 +7436,22 @@ var connectionEntity13 = defineEntity36({
7422
7436
  var connection12 = defineUnit68({
7423
7437
  type: "yandex.connection.v1",
7424
7438
  args: {
7425
- region: $addArgumentDescription56(z69.discriminatedUnion("id", [
7426
- z69.object({
7427
- id: z69.literal("ru-central1").meta({ title: __camelCaseToHumanReadable34("id"), description: `The ID of the region.` }),
7428
- defaultZone: z69.enum(["ru-central1-a", "ru-central1-b", "ru-central1-d", "ru-central1-e"]).default("ru-central1-d").meta({ title: __camelCaseToHumanReadable34("defaultZone"), description: `The default availability zone in ru-central1 to place resources in.` })
7439
+ region: $addArgumentDescription58(z71.discriminatedUnion("id", [
7440
+ z71.object({
7441
+ id: z71.literal("ru-central1").meta({ title: __camelCaseToHumanReadable34("id"), description: `The ID of the region.` }),
7442
+ defaultZone: z71.enum(["ru-central1-a", "ru-central1-b", "ru-central1-d", "ru-central1-e"]).default("ru-central1-d").meta({ title: __camelCaseToHumanReadable34("defaultZone"), description: `The default availability zone in ru-central1 to place resources in.` })
7429
7443
  }),
7430
- z69.object({
7431
- id: z69.literal("kz1").meta({ title: __camelCaseToHumanReadable34("id"), description: `The ID of the region.` }),
7432
- defaultZone: z69.enum(["kz1-a"]).default("kz1-a").meta({ title: __camelCaseToHumanReadable34("defaultZone"), description: `The default availability zone in kz1 to place resources in.` })
7444
+ z71.object({
7445
+ id: z71.literal("kz1").meta({ title: __camelCaseToHumanReadable34("id"), description: `The ID of the region.` }),
7446
+ defaultZone: z71.enum(["kz1-a"]).default("kz1-a").meta({ title: __camelCaseToHumanReadable34("defaultZone"), description: `The default availability zone in kz1 to place resources in.` })
7433
7447
  })
7434
7448
  ]).prefault({ id: "ru-central1" }), `The region to create connection for.
7435
7449
 
7436
7450
  See [Regions](https://yandex.cloud/en/docs/overview/concepts/region) for details.`)
7437
7451
  },
7438
7452
  secrets: {
7439
- authorizedKeyJson: $addArgumentDescription56({
7440
- schema: z69.string().meta({ language: "json" }),
7453
+ authorizedKeyJson: $addArgumentDescription58({
7454
+ schema: z71.string().meta({ language: "json" }),
7441
7455
  meta: {
7442
7456
  title: "Authorized Key JSON"
7443
7457
  }
@@ -7451,7 +7465,7 @@ var connection12 = defineUnit68({
7451
7465
  ...inputs
7452
7466
  },
7453
7467
  outputs: {
7454
- connection: $addInputDescription56(connectionEntity13, `The Yandex Cloud connection.`)
7468
+ connection: $addInputDescription58(connectionEntity13, `The Yandex Cloud connection.`)
7455
7469
  },
7456
7470
  meta: {
7457
7471
  description: `The connection to a Yandex Cloud account.`,
@@ -7465,24 +7479,24 @@ var connection12 = defineUnit68({
7465
7479
  path: "connection"
7466
7480
  }
7467
7481
  });
7468
- var diskSchema2 = z69.object({
7469
- type: z69.enum(["network-ssd", "network-hdd", "network-ssd-nonreplicated", "network-ssd-io-m3"]).default("network-ssd").meta({ title: __camelCaseToHumanReadable34("type"), description: `The disk type.
7482
+ var diskSchema2 = z71.object({
7483
+ type: z71.enum(["network-ssd", "network-hdd", "network-ssd-nonreplicated", "network-ssd-io-m3"]).default("network-ssd").meta({ title: __camelCaseToHumanReadable34("type"), description: `The disk type.
7470
7484
 
7471
7485
  - Network SSD (network-ssd): Fast network drive; SSD network block storage.
7472
7486
  - Network HDD (network-hdd): Standard network drive; HDD network block storage.
7473
7487
  - Non-replicated SSD (network-ssd-nonreplicated): Enhanced performance network drive without redundancy.
7474
7488
  - Ultra high-speed network storage with three replicas (SSD) (network-ssd-io-m3): High-performance SSD offering the same speed as network-ssd-nonreplicated, plus redundancy.` }),
7475
- size: z69.number().default(20).meta({ title: __camelCaseToHumanReadable34("size"), description: `The disk size in GB.
7489
+ size: z71.number().default(20).meta({ title: __camelCaseToHumanReadable34("size"), description: `The disk size in GB.
7476
7490
 
7477
7491
  For \`network-ssd-nonreplicated\` and \`network-ssd-io-m3\` must be multiple of 93.` }),
7478
- encrypted: z69.boolean().default(true).meta({ title: __camelCaseToHumanReadable34("encrypted"), description: `Whether the disk should be encrypted by separate key in KMS.
7492
+ encrypted: z71.boolean().default(true).meta({ title: __camelCaseToHumanReadable34("encrypted"), description: `Whether the disk should be encrypted by separate key in KMS.
7479
7493
 
7480
7494
  If \`true\`, a new key will be created for the disk.` })
7481
7495
  });
7482
7496
  var diskEntity2 = defineEntity36({
7483
7497
  type: "yandex.disk.v1",
7484
- schema: z69.object({
7485
- id: z69.string().meta({ title: __camelCaseToHumanReadable34("id"), description: `The global ID of the disk.` })
7498
+ schema: z71.object({
7499
+ id: z71.string().meta({ title: __camelCaseToHumanReadable34("id"), description: `The global ID of the disk.` })
7486
7500
  }),
7487
7501
  meta: {
7488
7502
  title: "YC Disk",
@@ -7494,7 +7508,7 @@ var diskEntity2 = defineEntity36({
7494
7508
  var disk2 = defineUnit68({
7495
7509
  type: "yandex.disk.v1",
7496
7510
  args: {
7497
- diskName: $addArgumentDescription56(z69.string().optional(), `The name of the disk in the folder.
7511
+ diskName: $addArgumentDescription58(z71.string().optional(), `The name of the disk in the folder.
7498
7512
  If not specified, the name of the unit will be used.`),
7499
7513
  ...diskSchema2.shape
7500
7514
  },
@@ -7502,7 +7516,7 @@ var disk2 = defineUnit68({
7502
7516
  connection: connectionEntity13
7503
7517
  },
7504
7518
  outputs: {
7505
- disk: $addInputDescription56(diskEntity2, `The disk entity.`)
7519
+ disk: $addInputDescription58(diskEntity2, `The disk entity.`)
7506
7520
  },
7507
7521
  meta: {
7508
7522
  description: `The disk on Yandex Cloud.`,
@@ -7519,10 +7533,10 @@ var disk2 = defineUnit68({
7519
7533
  });
7520
7534
  var publicAddressEntity = defineEntity36({
7521
7535
  type: "yandex.public-address.v1",
7522
- schema: z69.object({
7523
- id: z69.string().meta({ title: __camelCaseToHumanReadable34("id"), description: `The global ID of the public address.` }),
7524
- name: z69.string().meta({ title: __camelCaseToHumanReadable34("name"), description: `The name of the public address.` }),
7525
- address: z69.string().meta({ title: __camelCaseToHumanReadable34("address"), description: `The IPv4 address value.` })
7536
+ schema: z71.object({
7537
+ id: z71.string().meta({ title: __camelCaseToHumanReadable34("id"), description: `The global ID of the public address.` }),
7538
+ name: z71.string().meta({ title: __camelCaseToHumanReadable34("name"), description: `The name of the public address.` }),
7539
+ address: z71.string().meta({ title: __camelCaseToHumanReadable34("address"), description: `The IPv4 address value.` })
7526
7540
  }),
7527
7541
  meta: {
7528
7542
  title: "YC Public Address",
@@ -7534,20 +7548,20 @@ var publicAddressEntity = defineEntity36({
7534
7548
  var publicAddress = defineUnit68({
7535
7549
  type: "yandex.public-address.v1",
7536
7550
  args: {
7537
- addressName: $addArgumentDescription56(z69.string().optional(), `The name of the public address in the folder.
7551
+ addressName: $addArgumentDescription58(z71.string().optional(), `The name of the public address in the folder.
7538
7552
  If not specified, the name of the unit will be used.`),
7539
- cloudId: $addArgumentDescription56(z69.string().optional(), `The ID of the cloud to create the public address in.
7553
+ cloudId: $addArgumentDescription58(z71.string().optional(), `The ID of the cloud to create the public address in.
7540
7554
  If not specified, will use the cloud from the connection.`),
7541
- folderId: $addArgumentDescription56(z69.string().optional(), `The ID of the folder to create the public address in.
7555
+ folderId: $addArgumentDescription58(z71.string().optional(), `The ID of the folder to create the public address in.
7542
7556
  If not specified, will use the default folder from the connection.`),
7543
- zone: $addArgumentDescription56(z69.string().optional(), `The availability zone to reserve the address in.
7557
+ zone: $addArgumentDescription58(z71.string().optional(), `The availability zone to reserve the address in.
7544
7558
  If not specified, will use the default zone from the connection.`)
7545
7559
  },
7546
7560
  inputs: {
7547
7561
  connection: connectionEntity13
7548
7562
  },
7549
7563
  outputs: {
7550
- publicAddress: $addInputDescription56(publicAddressEntity, `The public address entity.`)
7564
+ publicAddress: $addInputDescription58(publicAddressEntity, `The public address entity.`)
7551
7565
  },
7552
7566
  meta: {
7553
7567
  description: `The reserved public IPv4 address on Yandex Cloud.`,
@@ -7564,8 +7578,8 @@ var publicAddress = defineUnit68({
7564
7578
  });
7565
7579
  var imageEntity3 = defineEntity36({
7566
7580
  type: "yandex.image.v1",
7567
- schema: z69.object({
7568
- id: z69.string().meta({ title: __camelCaseToHumanReadable34("id"), description: `The global ID of the image.` })
7581
+ schema: z71.object({
7582
+ id: z71.string().meta({ title: __camelCaseToHumanReadable34("id"), description: `The global ID of the image.` })
7569
7583
  }),
7570
7584
  meta: {
7571
7585
  title: "YC Image",
@@ -7577,7 +7591,7 @@ var imageEntity3 = defineEntity36({
7577
7591
  var existingImage3 = defineUnit68({
7578
7592
  type: "yandex.existing-image.v1",
7579
7593
  args: {
7580
- id: $addArgumentDescription56(z69.string(), `The ID of the image.
7594
+ id: $addArgumentDescription58(z71.string(), `The ID of the image.
7581
7595
 
7582
7596
  See [Yandex Cloud Marketplace Images](https://yandex.cloud/en/marketplace) to find available images and their IDs.
7583
7597
  You can also use user images by specifying their IDs.`)
@@ -7586,7 +7600,7 @@ var existingImage3 = defineUnit68({
7586
7600
  connection: connectionEntity13
7587
7601
  },
7588
7602
  outputs: {
7589
- image: $addInputDescription56(imageEntity3, `The image entity.`)
7603
+ image: $addInputDescription58(imageEntity3, `The image entity.`)
7590
7604
  },
7591
7605
  meta: {
7592
7606
  description: `The existing image from Yandex Cloud Marketplace or user images.`,
@@ -7601,7 +7615,7 @@ var existingImage3 = defineUnit68({
7601
7615
  path: "existing-image"
7602
7616
  }
7603
7617
  });
7604
- var platformIdSchema = z69.enum([
7618
+ var platformIdSchema = z71.enum([
7605
7619
  "standard-v1",
7606
7620
  "standard-v2",
7607
7621
  "standard-v3",
@@ -7618,57 +7632,57 @@ var platformIdSchema = z69.enum([
7618
7632
  "gpu-platform-v4"
7619
7633
  ]);
7620
7634
  var vmArgs2 = $args10({
7621
- platformId: $addArgumentDescription56(platformIdSchema.default("standard-v3"), `The platform ID for the instance.
7635
+ platformId: $addArgumentDescription58(platformIdSchema.default("standard-v3"), `The platform ID for the instance.
7622
7636
 
7623
7637
  See [Platforms](https://yandex.cloud/en/docs/compute/concepts/vm-platforms) for details.`),
7624
- resources: $addArgumentDescription56(z69.object({
7625
- cores: z69.number().default(2).meta({ title: __camelCaseToHumanReadable34("cores"), description: `The number of CPU cores.` }),
7626
- memory: z69.number().default(4).meta({ title: __camelCaseToHumanReadable34("memory"), description: `The amount of memory in GB.` }),
7627
- coreFraction: z69.number().min(10).max(100).default(100).meta({ title: __camelCaseToHumanReadable34("coreFraction"), description: `The guaranteed CPU core performance (10-100).` })
7638
+ resources: $addArgumentDescription58(z71.object({
7639
+ cores: z71.number().default(2).meta({ title: __camelCaseToHumanReadable34("cores"), description: `The number of CPU cores.` }),
7640
+ memory: z71.number().default(4).meta({ title: __camelCaseToHumanReadable34("memory"), description: `The amount of memory in GB.` }),
7641
+ coreFraction: z71.number().min(10).max(100).default(100).meta({ title: __camelCaseToHumanReadable34("coreFraction"), description: `The guaranteed CPU core performance (10-100).` })
7628
7642
  }).prefault({}), `The resources to allocate to the virtual machine.`),
7629
- bootDisk: $addArgumentDescription56(diskSchema2.prefault({}), `The boot disk configuration.`),
7630
- network: $addArgumentDescription56(z69.object({
7631
- subnetId: z69.string().optional().meta({ title: __camelCaseToHumanReadable34("subnetId"), description: `The subnet ID to connect to.
7643
+ bootDisk: $addArgumentDescription58(diskSchema2.prefault({}), `The boot disk configuration.`),
7644
+ network: $addArgumentDescription58(z71.object({
7645
+ subnetId: z71.string().optional().meta({ title: __camelCaseToHumanReadable34("subnetId"), description: `The subnet ID to connect to.
7632
7646
  If not specified, will auto-discover the default subnet for the zone.` }),
7633
- assignPublicIp: z69.boolean().default(true).meta({ title: __camelCaseToHumanReadable34("assignPublicIp"), description: `Whether to assign a public IP.` }),
7634
- reservePublicIp: z69.boolean().default(true).meta({ title: __camelCaseToHumanReadable34("reservePublicIp"), description: `Whether to reserve the public IP permanently.
7647
+ assignPublicIp: z71.boolean().default(true).meta({ title: __camelCaseToHumanReadable34("assignPublicIp"), description: `Whether to assign a public IP.` }),
7648
+ reservePublicIp: z71.boolean().default(true).meta({ title: __camelCaseToHumanReadable34("reservePublicIp"), description: `Whether to reserve the public IP permanently.
7635
7649
 
7636
7650
  If not set, the public IP can be changed when the VM is stopped and started again.
7637
7651
 
7638
7652
  Makes no sense if \`assignPublicIp\` is false.` })
7639
7653
  }).prefault({}), `The network configuration.`),
7640
- ssh: $addArgumentDescription56(vmSshArgs, `The SSH configuration.`),
7641
- preemptible: $addArgumentDescription56(z69.boolean().default(false), `Whether the virtual machine is preemptible.
7654
+ ssh: $addArgumentDescription58(vmSshArgs, `The SSH configuration.`),
7655
+ preemptible: $addArgumentDescription58(z71.boolean().default(false), `Whether the virtual machine is preemptible.
7642
7656
 
7643
7657
  See [Preemptible VMs](https://yandex.cloud/en/docs/compute/concepts/preemptible-vms) for details.`)
7644
7658
  });
7645
- var nlbArgs = z69.object({
7646
- enabled: z69.boolean().default(false).meta({ title: __camelCaseToHumanReadable34("enabled"), description: `Whether to create a network load balancer for the instance group.` }),
7647
- name: z69.string().optional().meta({ title: __camelCaseToHumanReadable34("name"), description: `The name of the network load balancer.
7659
+ var nlbArgs = z71.object({
7660
+ enabled: z71.boolean().default(false).meta({ title: __camelCaseToHumanReadable34("enabled"), description: `Whether to create a network load balancer for the instance group.` }),
7661
+ name: z71.string().optional().meta({ title: __camelCaseToHumanReadable34("name"), description: `The name of the network load balancer.
7648
7662
  If not specified, the instance group name will be used.` }),
7649
- listeners: z69.string().array().default([]).meta({ title: __camelCaseToHumanReadable34("listeners"), description: `The load-balanced ports to expose through the shared public address.
7663
+ listeners: z71.string().array().default([]).meta({ title: __camelCaseToHumanReadable34("listeners"), description: `The load-balanced ports to expose through the shared public address.
7650
7664
 
7651
7665
  Each listener must use \`protocol:source=>target\` format, for example \`tcp:80=>8080\`.
7652
7666
 
7653
7667
  If the source and target ports are the same, use \`protocol:port\` shorthand, for example \`tcp:80\`.
7654
7668
 
7655
7669
  When SSH is enabled, the \`tcp:<ssh-port>\` listener is included automatically.` }),
7656
- healthCheckProtocol: z69.enum(["tcp", "http"]).default("tcp").meta({ title: __camelCaseToHumanReadable34("healthCheckProtocol"), description: `The health check protocol.` }),
7670
+ healthCheckProtocol: z71.enum(["tcp", "http"]).default("tcp").meta({ title: __camelCaseToHumanReadable34("healthCheckProtocol"), description: `The health check protocol.` }),
7657
7671
  healthCheckPort: portSchema.default(22).meta({ title: __camelCaseToHumanReadable34("healthCheckPort"), description: `The port to use for health checks.` }),
7658
- healthCheckPath: z69.string().default("/").meta({ title: __camelCaseToHumanReadable34("healthCheckPath"), description: `The HTTP path to use for health checks.` }),
7659
- healthCheckInterval: z69.number().int().min(1).max(60).default(2).meta({ title: __camelCaseToHumanReadable34("healthCheckInterval"), description: `The interval between health checks in seconds.` }),
7660
- healthCheckTimeout: z69.number().int().min(1).max(60).default(1).meta({ title: __camelCaseToHumanReadable34("healthCheckTimeout"), description: `The timeout for health check responses in seconds.` }),
7661
- healthCheckHealthyThreshold: z69.number().int().default(2).meta({ title: __camelCaseToHumanReadable34("healthCheckHealthyThreshold"), description: `The number of successful checks required to mark a target healthy.` }),
7662
- healthCheckUnhealthyThreshold: z69.number().int().default(2).meta({ title: __camelCaseToHumanReadable34("healthCheckUnhealthyThreshold"), description: `The number of failed checks required to mark a target unhealthy.` })
7672
+ healthCheckPath: z71.string().default("/").meta({ title: __camelCaseToHumanReadable34("healthCheckPath"), description: `The HTTP path to use for health checks.` }),
7673
+ healthCheckInterval: z71.number().int().min(1).max(60).default(2).meta({ title: __camelCaseToHumanReadable34("healthCheckInterval"), description: `The interval between health checks in seconds.` }),
7674
+ healthCheckTimeout: z71.number().int().min(1).max(60).default(1).meta({ title: __camelCaseToHumanReadable34("healthCheckTimeout"), description: `The timeout for health check responses in seconds.` }),
7675
+ healthCheckHealthyThreshold: z71.number().int().default(2).meta({ title: __camelCaseToHumanReadable34("healthCheckHealthyThreshold"), description: `The number of successful checks required to mark a target healthy.` }),
7676
+ healthCheckUnhealthyThreshold: z71.number().int().default(2).meta({ title: __camelCaseToHumanReadable34("healthCheckUnhealthyThreshold"), description: `The number of failed checks required to mark a target unhealthy.` })
7663
7677
  });
7664
7678
  var virtualMachine4 = defineUnit68({
7665
7679
  type: "yandex.virtual-machine.v1",
7666
7680
  args: {
7667
- vmName: $addArgumentDescription56(z69.string().optional(), `The name of the virtual machine.
7681
+ vmName: $addArgumentDescription58(z71.string().optional(), `The name of the virtual machine.
7668
7682
  If not specified, the name of the unit will be used.`),
7669
- cloudId: $addArgumentDescription56(z69.string().optional(), `The ID of the cloud to create the VM in.
7683
+ cloudId: $addArgumentDescription58(z71.string().optional(), `The ID of the cloud to create the VM in.
7670
7684
  If not specified, will use the cloud from the connection.`),
7671
- folderId: $addArgumentDescription56(z69.string().optional(), `The ID of the folder to create the VM in.
7685
+ folderId: $addArgumentDescription58(z71.string().optional(), `The ID of the folder to create the VM in.
7672
7686
  If not specified, will use the default folder from the connection.`),
7673
7687
  ...vmArgs2
7674
7688
  },
@@ -7678,11 +7692,11 @@ var virtualMachine4 = defineUnit68({
7678
7692
  inputs: {
7679
7693
  connection: connectionEntity13,
7680
7694
  image: imageEntity3,
7681
- publicAddress: $addInputDescription56({
7695
+ publicAddress: $addInputDescription58({
7682
7696
  entity: publicAddressEntity,
7683
7697
  required: false
7684
7698
  }, `The reserved public address to attach to the virtual machine.`),
7685
- sshProxyEndpoint: $addInputDescription56({
7699
+ sshProxyEndpoint: $addInputDescription58({
7686
7700
  entity: l4EndpointEntity,
7687
7701
  required: false
7688
7702
  }, `The endpoint of the SSH jump host used to connect to the virtual machine.`),
@@ -7705,16 +7719,16 @@ var virtualMachine4 = defineUnit68({
7705
7719
  var instanceGroup2 = defineUnit68({
7706
7720
  type: "yandex.instance-group.v1",
7707
7721
  args: {
7708
- groupName: $addArgumentDescription56(z69.string().optional(), `The name of the instance group.
7722
+ groupName: $addArgumentDescription58(z71.string().optional(), `The name of the instance group.
7709
7723
  If not specified, the name of the unit will be used.`),
7710
- cloudId: $addArgumentDescription56(z69.string().optional(), `The ID of the cloud to create the instance group in.
7724
+ cloudId: $addArgumentDescription58(z71.string().optional(), `The ID of the cloud to create the instance group in.
7711
7725
  If not specified, will use the cloud from the connection.`),
7712
- folderId: $addArgumentDescription56(z69.string().optional(), `The ID of the folder to create the instance group in.
7726
+ folderId: $addArgumentDescription58(z71.string().optional(), `The ID of the folder to create the instance group in.
7713
7727
  If not specified, will use the default folder from the connection.`),
7714
- size: $addArgumentDescription56(z69.number().default(1), `The number of instances to create in the group.`),
7715
- zones: $addArgumentDescription56(z69.string().array().optional(), `The zones to spread instances across.
7728
+ size: $addArgumentDescription58(z71.number().default(1), `The number of instances to create in the group.`),
7729
+ zones: $addArgumentDescription58(z71.string().array().optional(), `The zones to spread instances across.
7716
7730
  If not specified, will use the default zone from the connection.`),
7717
- nlb: $addArgumentDescription56(nlbArgs.prefault({}), `The network load balancer configuration.`),
7731
+ nlb: $addArgumentDescription58(nlbArgs.prefault({}), `The network load balancer configuration.`),
7718
7732
  ...vmArgs2
7719
7733
  },
7720
7734
  secrets: {
@@ -7723,17 +7737,17 @@ var instanceGroup2 = defineUnit68({
7723
7737
  inputs: {
7724
7738
  connection: connectionEntity13,
7725
7739
  image: imageEntity3,
7726
- publicAddresses: $addInputDescription56({
7740
+ publicAddresses: $addInputDescription58({
7727
7741
  entity: publicAddressEntity,
7728
7742
  required: false,
7729
7743
  multiple: true
7730
7744
  }, `The public addresses to attach to instances.
7731
7745
  Addresses are sorted by name and assigned to instances in that order.`),
7732
- nlbPublicAddress: $addInputDescription56({
7746
+ nlbPublicAddress: $addInputDescription58({
7733
7747
  entity: publicAddressEntity,
7734
7748
  required: false
7735
7749
  }, `The reserved public address to use for the network load balancer.`),
7736
- sshProxyEndpoint: $addInputDescription56({
7750
+ sshProxyEndpoint: $addInputDescription58({
7737
7751
  entity: l4EndpointEntity,
7738
7752
  required: false
7739
7753
  }, `The endpoint of the SSH jump host used to connect to the instances.`),