@codiac.io/codiac-cli 1.2.223 → 1.2.225

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/README.md +1 -1
  2. package/dist/apis/codiac-api/common/api-client-base.js +28 -1
  3. package/dist/apis/codiac-api/common/api-client-base.js.map +1 -1
  4. package/dist/apis/codiac-api/gen/client.d.ts +717 -1
  5. package/dist/apis/codiac-api/gen/client.js +9265 -1490
  6. package/dist/apis/codiac-api/gen/client.js.map +1 -1
  7. package/dist/apis/codiac-api/gen/contracts.d.ts +480 -149
  8. package/dist/apis/codiac-api/gen/contracts.js +104 -27
  9. package/dist/apis/codiac-api/gen/contracts.js.map +1 -1
  10. package/dist/command-base-enterprise.d.ts +1 -2
  11. package/dist/command-base-enterprise.js +0 -12
  12. package/dist/command-base-enterprise.js.map +1 -1
  13. package/dist/commands/asset/create.d.ts +3 -2
  14. package/dist/commands/asset/create.js +10 -3
  15. package/dist/commands/asset/create.js.map +1 -1
  16. package/dist/commands/asset/destroy.d.ts +2 -0
  17. package/dist/commands/asset/destroy.js +36 -11
  18. package/dist/commands/asset/destroy.js.map +1 -1
  19. package/dist/commands/asset/helm.js +3 -1
  20. package/dist/commands/asset/helm.js.map +1 -1
  21. package/dist/commands/asset/list.d.ts +1 -1
  22. package/dist/commands/asset/list.js +2 -1
  23. package/dist/commands/asset/list.js.map +1 -1
  24. package/dist/commands/asset/probe/create.d.ts +5 -0
  25. package/dist/commands/asset/probe/create.js +77 -21
  26. package/dist/commands/asset/probe/create.js.map +1 -1
  27. package/dist/commands/asset/view.d.ts +8 -11
  28. package/dist/commands/asset/view.js +169 -137
  29. package/dist/commands/asset/view.js.map +1 -1
  30. package/dist/commands/config/add.d.ts +11 -2
  31. package/dist/commands/config/add.js +53 -6
  32. package/dist/commands/config/add.js.map +1 -1
  33. package/dist/commands/config/delete.js +1 -1
  34. package/dist/commands/config/delete.js.map +1 -1
  35. package/dist/commands/config/settings/get.js +1 -1
  36. package/dist/commands/config/settings/get.js.map +1 -1
  37. package/dist/commands/config/view.d.ts +5 -0
  38. package/dist/commands/config/view.js +41 -13
  39. package/dist/commands/config/view.js.map +1 -1
  40. package/dist/commands/deploy.js +7 -2
  41. package/dist/commands/deploy.js.map +1 -1
  42. package/dist/relay/relay-container.js +1 -1
  43. package/dist/uilogic/config-ui-utils.d.ts +24 -1
  44. package/dist/uilogic/config-ui-utils.js +91 -0
  45. package/dist/uilogic/config-ui-utils.js.map +1 -1
  46. package/dist/uilogic/enterprise-contextualizer.d.ts +7 -1
  47. package/dist/uilogic/enterprise-contextualizer.js +49 -2
  48. package/dist/uilogic/enterprise-contextualizer.js.map +1 -1
  49. package/oclif.manifest.json +113 -17
  50. package/package.json +2 -2
@@ -1,4 +1,5 @@
1
1
  import { BatchResult } from "@codiac.io/codiac-common/contracts";
2
+ import { IDomainEntity } from "@codiac.io/codiac-common";
2
3
  /** The security attributes for a user when signed in under a given tenant */
3
4
  export interface AccessProfile {
4
5
  tenantCode: string;
@@ -10,21 +11,17 @@ export interface ActivityBase {
10
11
  type: ActivityTypeEnum;
11
12
  title: string;
12
13
  by: string;
13
- /** Enables basic storage and retrieval of dates and times. */
14
14
  performed: Date;
15
15
  id?: string | undefined;
16
16
  createdBy: string;
17
17
  modifiedBy: string;
18
- /** Enables basic storage and retrieval of dates and times. */
19
18
  created: Date;
20
- /** Enables basic storage and retrieval of dates and times. */
21
19
  modified: Date;
22
20
  }
23
21
  export interface ActivityCriteriaBase {
24
22
  type?: string | undefined;
25
23
  title?: string | undefined;
26
24
  by?: string | undefined;
27
- /** Enables basic storage and retrieval of dates and times. */
28
25
  performed?: Date | undefined;
29
26
  cabinet?: string | undefined;
30
27
  assetsName?: string | undefined;
@@ -47,7 +44,8 @@ export declare enum ActivityTypeEnum {
47
44
  deployment = "deployment",
48
45
  imageBuild = "imageBuild",
49
46
  versionCreate = "versionCreate"
50
- } /** Upsert Request for assignment of a new or existing user to the current tenant. */
47
+ }
48
+ /** Upsert Request for assignment of a new or existing user to the current tenant. */
51
49
  export interface AddTenantUserRequest {
52
50
  login: string;
53
51
  firstName: string;
@@ -79,14 +77,15 @@ export declare enum ApiReadyStateEnum {
79
77
  instantiated = "instantiated",
80
78
  ready = "ready",
81
79
  reflecting = "reflecting"
82
- } /** A functional unit that is published as an individual container.
80
+ }
81
+ /** A functional unit that is published as an individual container.
83
82
  * Could be an api, service, web app, cloud function, or any other type of containerized executable system. */
84
83
  export interface Asset {
85
84
  enterprise: string;
86
85
  code: string;
87
86
  name: string;
88
87
  image: Image;
89
- port: number;
88
+ port: number | PortMapping | (number | PortMapping)[];
90
89
  hasIngress: boolean;
91
90
  routedWithoutName: boolean;
92
91
  id?: string | undefined;
@@ -121,11 +120,64 @@ export interface Asset {
121
120
  reservedFolders?: AssetFolderReservation[] | undefined;
122
121
  /** Declares means by which the container platform can check health and readiness of the assets at runtime. */
123
122
  probes?: Probe[] | undefined;
123
+ /** Overrides for the the container startup command. */
124
+ entryPoints?: EntryPoint[] | undefined;
125
+ /** Rules for the selecting which nodes on which this asset will be run (aka: NodeSelectors, affinities, and taints). */
126
+ nodeRequirements?: NodePlacement[] | undefined;
127
+ /** Scripts to run (via init containers) before the asset's own container starts. */
128
+ beforeStartup?: InitContainer[] | undefined;
129
+ /** Command line script (NOT run within a shell) to run within the asset container
130
+ * AFTER the asset has succcessfully completed its startup.
131
+ *
132
+ * From K8s Docs:
133
+ * Management of the container blocks until this action is complete,
134
+ * unless the container process fails, in which case the handler is aborted.
135
+ *
136
+ * called immediately after a container is created.
137
+ * If the handler fails, the container is terminated and restarted according to its restart policy.
138
+ * Other management of the container blocks until the hook completes.
139
+ * More info: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
140
+ *
141
+ * The working directory for the command is root ('/') in the container's filesystem.
142
+ * The command is simply exec'd, it is NOT run inside a shell,
143
+ * so traditional shell instructions ('|', etc) won't work.
144
+ * To use a shell, you need to explicitly call out to that shell.
145
+ * Exit status of 0 is treated as live/healthy and non-zero is unhealthy. */
146
+ postStartup?: string[] | undefined;
147
+ /** Enable this setting to allow http (ie: non-SSL/TLS) requests in through the ingress controller without getting redirected to https.
148
+ *
149
+ * That is, Setting this to true will prevent the ingress controller from invoking an automatic redirect to https on any inbound http requests. */
150
+ allowHttp?: boolean | undefined;
151
+ /** Freeform url paths to use as an override for the asset code property
152
+ * when assembling ingress routing
153
+ * for domain mapping strategies
154
+ * that place the "service" segment
155
+ * into the url path.
156
+ *
157
+ * *NOTE: Each entry must be unique within the enterprise,
158
+ * cannot be null or empty,
159
+ * cannot start or end with a slash character,
160
+ * and must uniquely identify this asset within the enterprise.*
161
+ *
162
+ * eg:
163
+ *
164
+ * For a domain mapping strategy: `cab-dot-domain-slash-service`
165
+ *
166
+ * and an asset with code: `my-api`
167
+ *
168
+ * When `mydomain.com` gets applied to cabinet `dev`,
169
+ * default ingress routing will yield: `dev.mydomain.com/my-api`
170
+ *
171
+ * So. Adding a path `v1/the-api` to this property
172
+ * will INSTEAD yield an ingress rule supporting this url:
173
+ *
174
+ * `dev.domain.com/v1/the-api`
175
+ *
176
+ * NOTE: *Adding paths to this list prevents the default ingress path (as `Asset.code`) from being mapped in the ingress. If you still want that behavior in the ingress rules, you will have to add it to this list.* */
177
+ ingressPaths?: string[] | undefined;
124
178
  createdBy: string;
125
179
  modifiedBy: string;
126
- /** Enables basic storage and retrieval of dates and times. */
127
180
  created: Date;
128
- /** Enables basic storage and retrieval of dates and times. */
129
181
  modified: Date;
130
182
  }
131
183
  export interface AssetCriteria {
@@ -171,6 +223,22 @@ export declare enum AssetTypesEnum {
171
223
  job = "job",
172
224
  service = "service"
173
225
  }
226
+ /** A contract specifying an asset and, optionally, a specific version, tags, and labels for it.
227
+ *
228
+ * THIS IS A DIRECT COPY OF ops-enterprise/entities/asset-version.ts
229
+ * It probably belongs in domain more than it does in ops,
230
+ * but it's too small to warrant a whole dependency challenge at the moment.
231
+ * for now, we'll just rely on typescript to duck type it. */
232
+ export interface AssetVersion {
233
+ /** Asset name. */
234
+ a: string;
235
+ /** Asset version. */
236
+ v?: string | undefined;
237
+ /** Tags to apply to the asset version. */
238
+ t?: string[] | undefined;
239
+ /** Labels to apply to the asset version. */
240
+ l?: object | undefined;
241
+ }
174
242
  export interface AssetVersionConfig {
175
243
  enterprise: string;
176
244
  assetName: string;
@@ -183,10 +251,14 @@ export interface AssetVersionConfig {
183
251
  id?: string | undefined;
184
252
  createdBy: string;
185
253
  modifiedBy: string;
186
- /** Enables basic storage and retrieval of dates and times. */
187
254
  created: Date;
188
- /** Enables basic storage and retrieval of dates and times. */
189
255
  modified: Date;
256
+ /** Markdown block of instructions or other descriptions from the author about this particular version. */
257
+ notes?: string | undefined;
258
+ /** Key-value pairs (aka: property bag) for this particular version. */
259
+ labels?: Label[] | undefined;
260
+ /** Starting point for threaded discussions on this particular version. */
261
+ comments?: Comment[] | undefined;
190
262
  }
191
263
  export interface AssetVersionConfigCriteria {
192
264
  enterprise?: string | undefined;
@@ -196,6 +268,7 @@ export interface AssetVersionConfigCriteria {
196
268
  multi?: object[] | undefined;
197
269
  /** Boolean logic filter for string values. Useful for querying on tags */
198
270
  tags?: AndOrNotFilter | undefined;
271
+ labels?: object | undefined;
199
272
  ids?: string[] | undefined;
200
273
  all?: boolean | undefined;
201
274
  /** Specification for the sort order of a query.
@@ -245,7 +318,6 @@ export interface AuthSubscription {
245
318
  enabled: boolean;
246
319
  status: SubscriptionStatus;
247
320
  maxUsers: number;
248
- /** Enables basic storage and retrieval of dates and times. */
249
321
  expiration?: Date | undefined;
250
322
  id?: string | undefined;
251
323
  /** Reference to the susbscription that resides within the billing system.
@@ -263,6 +335,39 @@ export interface AuthTenant {
263
335
  id?: string | undefined;
264
336
  Users?: TenantUser[] | undefined;
265
337
  }
338
+ export interface AwsTenantProfile {
339
+ provider: CloudProviderEnum;
340
+ /** Id code for the tenant account with the cloud service provider
341
+ * (This is NOT the Codiac tenant code). */
342
+ cspTenantId: string;
343
+ notes?: string | undefined;
344
+ id?: string | undefined;
345
+ createdBy: string;
346
+ modifiedBy: string;
347
+ created: Date;
348
+ modified: Date;
349
+ }
350
+ export interface AzureClientSecret {
351
+ id: string;
352
+ value: string;
353
+ expires: string;
354
+ }
355
+ export interface AzureTenantProfile {
356
+ /** The ApplicationId assigned to Codiac when it was registered in AzureAD. */
357
+ clientId: string;
358
+ authority: string;
359
+ clientSecret: AzureClientSecret;
360
+ provider: CloudProviderEnum;
361
+ /** Id code for the tenant account with the cloud service provider
362
+ * (This is NOT the Codiac tenant code). */
363
+ cspTenantId: string;
364
+ notes?: string | undefined;
365
+ id?: string | undefined;
366
+ createdBy: string;
367
+ modifiedBy: string;
368
+ created: Date;
369
+ modified: Date;
370
+ }
266
371
  export interface Buffer {
267
372
  }
268
373
  export interface Build {
@@ -270,9 +375,7 @@ export interface Build {
270
375
  id?: string | undefined;
271
376
  createdBy: string;
272
377
  modifiedBy: string;
273
- /** Enables basic storage and retrieval of dates and times. */
274
378
  created: Date;
275
- /** Enables basic storage and retrieval of dates and times. */
276
379
  modified: Date;
277
380
  }
278
381
  export interface BuildCriteria {
@@ -293,9 +396,7 @@ export interface BuildPipeline {
293
396
  id?: string | undefined;
294
397
  createdBy: string;
295
398
  modifiedBy: string;
296
- /** Enables basic storage and retrieval of dates and times. */
297
399
  created: Date;
298
- /** Enables basic storage and retrieval of dates and times. */
299
400
  modified: Date;
300
401
  }
301
402
  export interface BuildPipelineCriteria {
@@ -357,9 +458,7 @@ export interface Cabinet {
357
458
  portPrefix?: number | undefined;
358
459
  createdBy: string;
359
460
  modifiedBy: string;
360
- /** Enables basic storage and retrieval of dates and times. */
361
461
  created: Date;
362
- /** Enables basic storage and retrieval of dates and times. */
363
462
  modified: Date;
364
463
  }
365
464
  /** A reference to an cabinet and the cluster it's in. */
@@ -385,7 +484,6 @@ export interface CabinetConfigState {
385
484
  enterprise: string;
386
485
  environment: string;
387
486
  cabinet: string;
388
- /** Enables basic storage and retrieval of dates and times. */
389
487
  timestamp: Date;
390
488
  /** Undefined if a cluster has not yet been assigned to EITHER the cabinet OR the environment. */
391
489
  clusterName?: string | undefined;
@@ -407,14 +505,11 @@ export interface CabinetCreateActivity {
407
505
  type: ActivityTypeEnum;
408
506
  title: string;
409
507
  by: string;
410
- /** Enables basic storage and retrieval of dates and times. */
411
508
  performed: Date;
412
509
  id?: string | undefined;
413
510
  createdBy: string;
414
511
  modifiedBy: string;
415
- /** Enables basic storage and retrieval of dates and times. */
416
512
  created: Date;
417
- /** Enables basic storage and retrieval of dates and times. */
418
513
  modified: Date;
419
514
  }
420
515
  export interface CabinetCreateActivityCriteria {
@@ -425,7 +520,6 @@ export interface CabinetCreateActivityCriteria {
425
520
  type?: string | undefined;
426
521
  title?: string | undefined;
427
522
  by?: string | undefined;
428
- /** Enables basic storage and retrieval of dates and times. */
429
523
  performed?: Date | undefined;
430
524
  assetsName?: string | undefined;
431
525
  ids?: string[] | undefined;
@@ -504,9 +598,7 @@ export interface CabinetIngressDef {
504
598
  id?: string | undefined;
505
599
  createdBy: string;
506
600
  modifiedBy: string;
507
- /** Enables basic storage and retrieval of dates and times. */
508
601
  created: Date;
509
- /** Enables basic storage and retrieval of dates and times. */
510
602
  modified: Date;
511
603
  }
512
604
  /** Typically hydrated by the cloud platform provider during creation of the infrastructure resources;
@@ -562,9 +654,7 @@ export interface Cluster {
562
654
  k8sVersion?: string | undefined;
563
655
  createdBy: string;
564
656
  modifiedBy: string;
565
- /** Enables basic storage and retrieval of dates and times. */
566
657
  created: Date;
567
- /** Enables basic storage and retrieval of dates and times. */
568
658
  modified: Date;
569
659
  }
570
660
  export interface ClusterCriteria {
@@ -595,6 +685,8 @@ export interface ClusterDef {
595
685
  nodeCount?: number | undefined;
596
686
  ingressDef?: IngressDef | undefined;
597
687
  privateOwner?: string | undefined;
688
+ nodesMin?: number | undefined;
689
+ nodesMax?: number | undefined;
598
690
  /** This is the system id for the cluster definition, NOT the identifier of the concrete cluster instance given by the cloud provider. */
599
691
  id?: string | undefined;
600
692
  /** The code recognized by the cloud provider for identifying which virtual machine configuration to use as cluster nodes.
@@ -609,12 +701,12 @@ export interface ClusterDef {
609
701
  * (In Azure this is either a Service Principal or a Managed Identity). */
610
702
  identityInstance?: SecurityAccount | undefined;
611
703
  /** (byref) A reference to the most recent concrete cluster implementation of this def.
612
- * Contains only identifying information; to get actual node counts etc,
613
- * you would have to take a snapshot via azaks/kubectl. */
704
+ * Contains only identifying information; to get actual node counts etc,
705
+ * you would have to take a snapshot via azaks/kubectl. */
614
706
  instance?: Cluster | undefined;
615
707
  /** (Optional) The default resource allocation spec to apply to containers in this cluster. */
616
708
  defaultFootprint?: ContainerFootprint | undefined;
617
- /** Node pools in addition to thw default node pool created with the cluster. */
709
+ /** Node pools in addition to the default node pool created with the cluster. */
618
710
  nodePools?: NodePoolDef[] | undefined;
619
711
  /** User account credentials with which to create new Windows nodes in the cluster.
620
712
  *
@@ -631,9 +723,7 @@ export interface ClusterDef {
631
723
  k8sVersion?: string | undefined;
632
724
  createdBy: string;
633
725
  modifiedBy: string;
634
- /** Enables basic storage and retrieval of dates and times. */
635
726
  created: Date;
636
- /** Enables basic storage and retrieval of dates and times. */
637
727
  modified: Date;
638
728
  }
639
729
  export interface ClusterDefCriteria {
@@ -654,6 +744,32 @@ export interface ClusterDefCriteria {
654
744
  * Example: ```[ "color", "lastName" ]``` */
655
745
  sort?: string[] | "asc" | "desc" | string | undefined;
656
746
  }
747
+ /** Similar to an ACL for a cluster: declares an access level for a user on a cluster. */
748
+ export interface ClusterGrant {
749
+ clusterName: string;
750
+ userId: string;
751
+ accessLevel: string;
752
+ id?: string | undefined;
753
+ createdBy: string;
754
+ modifiedBy: string;
755
+ created: Date;
756
+ modified: Date;
757
+ }
758
+ export interface ClusterGrantCriteria {
759
+ clusterName?: string | undefined;
760
+ userId?: string | undefined;
761
+ accessLevel?: string | undefined;
762
+ ids?: string[] | undefined;
763
+ all?: boolean | undefined;
764
+ /** Specification for the sort order of a query.
765
+ *
766
+ * Example: ```{ "color": "asc", size: OrderEnum.desc }```
767
+ *
768
+ * Example: ```"color"```
769
+ *
770
+ * Example: ```[ "color", "lastName" ]``` */
771
+ sort?: string[] | "asc" | "desc" | string | undefined;
772
+ }
657
773
  export interface ClusterWithIngress {
658
774
  name: string;
659
775
  provider: CloudProviderEnum;
@@ -717,6 +833,42 @@ export interface CodiacUserPatch {
717
833
  lastName?: string | undefined;
718
834
  email?: string | undefined;
719
835
  }
836
+ /** A key-value pair applied to an entity in an enterprise. */
837
+ export interface Comment {
838
+ markdown: string;
839
+ ownerType: string;
840
+ ownerId: string;
841
+ enterprise: string;
842
+ /** Optional subject line of the comment. For use when larger comments are typical (such as in product reviews) */
843
+ headline?: string | undefined;
844
+ /** Indicates that this comment can be rendered just as an emoji decoration instead of as a full comment. */
845
+ isEmoji?: boolean | undefined;
846
+ /** The id of the comment (if any) that this one is responding to. */
847
+ parentId?: string | undefined;
848
+ responses?: Comment[] | undefined;
849
+ id?: string | undefined;
850
+ createdBy: string;
851
+ modifiedBy: string;
852
+ created: Date;
853
+ modified: Date;
854
+ }
855
+ export interface CommentCriteria {
856
+ name?: StringFilter | undefined;
857
+ value?: StringFilter | undefined;
858
+ ownerType?: string | undefined;
859
+ ownerId?: StringFilter | undefined;
860
+ createdBy?: string | undefined;
861
+ ids?: string[] | undefined;
862
+ all?: boolean | undefined;
863
+ /** Specification for the sort order of a query.
864
+ *
865
+ * Example: ```{ "color": "asc", size: OrderEnum.desc }```
866
+ *
867
+ * Example: ```"color"```
868
+ *
869
+ * Example: ```[ "color", "lastName" ]``` */
870
+ sort?: string[] | "asc" | "desc" | string | undefined;
871
+ }
720
872
  /** An historical record of a change made to the the configuration of the an enterprise for a given cabinet,
721
873
  * to be used, together with the latest preceeding snapshot and other change events, as the specification for a deployment.
722
874
  * This entity reflects only a proposed configuration change for the enterprise on its creation date;
@@ -727,9 +879,7 @@ export interface ConfigChange {
727
879
  id?: string | undefined;
728
880
  createdBy: string;
729
881
  modifiedBy: string;
730
- /** Enables basic storage and retrieval of dates and times. */
731
882
  created: Date;
732
- /** Enables basic storage and retrieval of dates and times. */
733
883
  modified: Date;
734
884
  }
735
885
  export interface ConfigChangeCriteria {
@@ -761,7 +911,7 @@ export interface ConfigDef {
761
911
  export interface ConfigDefCriteria {
762
912
  enterprise?: string | undefined;
763
913
  asset?: string | undefined;
764
- type?: "env" | "file" | "filestore" | "footprint" | "helm" | undefined;
914
+ type?: "env" | "file" | "filestore" | "footprint" | "helm" | "annotation" | "label" | "probing" | undefined;
765
915
  targetFile?: string | undefined;
766
916
  format?: string | undefined;
767
917
  ids?: string[] | undefined;
@@ -777,11 +927,25 @@ export interface ConfigDefCriteria {
777
927
  }
778
928
  /** Values of ScopedSetting.targetFile for NON-FILE configs. */
779
929
  export declare enum ConfigDefTypesEnum {
780
- env = "env",
781
- file = "file",
782
- filestore = "filestore",
783
- footprint = "footprint",
784
- helm = "helm"
930
+ /** Configuration that lands in a file in the asset's container. */
931
+ "file" = "file",
932
+ "env" = "env",
933
+ /** Mapping of a reserved folder on an asset to a FileStoreDef */
934
+ "filestore" = "filestore",
935
+ /** Claims resources for the asset (memory, CPU, replicas). */
936
+ "footprint" = "footprint",
937
+ /** Configuration of a helm chart. */
938
+ "helm" = "helm",
939
+ /** Designates a ScopedConfig record as a metadata label specification.
940
+ * (Under the hood, this value will be applied as ScopedConfig.targetFile,
941
+ * allowing these settings to be queried and managed together). */
942
+ "label" = "label",
943
+ /** Designates a ScopedConfig record as a single metadata annotation specification.
944
+ * (Under the hood, this value will be applied as ScopedConfig.targetFile,
945
+ * allowing these settings to be queried and managed together). */
946
+ "annotation" = "annotation",
947
+ /** Designates a ScopedConfig record as a flag for enabling and disabling probing for a given scope. */
948
+ "probing" = "probing"
785
949
  }
786
950
  export interface ConfigDeploymentActivity {
787
951
  deployAttemptId: string;
@@ -796,14 +960,11 @@ export interface ConfigDeploymentActivity {
796
960
  type: ActivityTypeEnum;
797
961
  title: string;
798
962
  by: string;
799
- /** Enables basic storage and retrieval of dates and times. */
800
963
  performed: Date;
801
964
  id?: string | undefined;
802
965
  createdBy: string;
803
966
  modifiedBy: string;
804
- /** Enables basic storage and retrieval of dates and times. */
805
967
  created: Date;
806
- /** Enables basic storage and retrieval of dates and times. */
807
968
  modified: Date;
808
969
  }
809
970
  export interface ConfigDeploymentActivityCriteria {
@@ -817,7 +978,6 @@ export interface ConfigDeploymentActivityCriteria {
817
978
  type?: string | undefined;
818
979
  title?: string | undefined;
819
980
  by?: string | undefined;
820
- /** Enables basic storage and retrieval of dates and times. */
821
981
  performed?: Date | undefined;
822
982
  assetsName?: string | undefined;
823
983
  ids?: string[] | undefined;
@@ -862,7 +1022,8 @@ export declare enum ConfigFormatsEnum {
862
1022
  toml = "toml",
863
1023
  xml = "xml",
864
1024
  yaml = "yaml"
865
- } /** Structure of settings and their data types supported by an Asset.
1025
+ }
1026
+ /** Structure of settings and their data types supported by an Asset.
866
1027
  * (ie: structure of a config file, environment variable list, Asset attributes, etc.) */
867
1028
  export interface ConfigSchema {
868
1029
  definitions: object;
@@ -887,12 +1048,13 @@ export interface ContainerFootprint {
887
1048
  cpuLimit?: string | undefined;
888
1049
  memRequest?: string | undefined;
889
1050
  memLimit?: string | undefined;
1051
+ replicasMin?: number | undefined;
1052
+ replicasMax?: number | undefined;
1053
+ scaleBy?: string | undefined;
890
1054
  id?: string | undefined;
891
1055
  createdBy: string;
892
1056
  modifiedBy: string;
893
- /** Enables basic storage and retrieval of dates and times. */
894
1057
  created: Date;
895
- /** Enables basic storage and retrieval of dates and times. */
896
1058
  modified: Date;
897
1059
  }
898
1060
  export interface ContainerFootprintCriteria {
@@ -909,6 +1071,33 @@ export interface ContainerFootprintCriteria {
909
1071
  * Example: ```[ "color", "lastName" ]``` */
910
1072
  sort?: string[] | "asc" | "desc" | string | undefined;
911
1073
  }
1074
+ export interface CspTenantProfile {
1075
+ provider: CloudProviderEnum;
1076
+ /** Id code for the tenant account with the cloud service provider
1077
+ * (This is NOT the Codiac tenant code). */
1078
+ cspTenantId: string;
1079
+ notes?: string | undefined;
1080
+ id?: string | undefined;
1081
+ createdBy: string;
1082
+ modifiedBy: string;
1083
+ created: Date;
1084
+ modified: Date;
1085
+ }
1086
+ export interface CspTenantProfileCriteria {
1087
+ /** Identifier for a supported cloud service provider, for use in selecting infrastructure clients, provisioners, and credentials. */
1088
+ provider?: "aws" | "azure" | "dockerHub" | "other" | undefined;
1089
+ cspTenantId?: string | undefined;
1090
+ ids?: string[] | undefined;
1091
+ all?: boolean | undefined;
1092
+ /** Specification for the sort order of a query.
1093
+ *
1094
+ * Example: ```{ "color": "asc", size: OrderEnum.desc }```
1095
+ *
1096
+ * Example: ```"color"```
1097
+ *
1098
+ * Example: ```[ "color", "lastName" ]``` */
1099
+ sort?: string[] | "asc" | "desc" | string | undefined;
1100
+ }
912
1101
  export interface DeployAttempt {
913
1102
  name: string;
914
1103
  deploymentId: string;
@@ -916,9 +1105,7 @@ export interface DeployAttempt {
916
1105
  id?: string | undefined;
917
1106
  createdBy: string;
918
1107
  modifiedBy: string;
919
- /** Enables basic storage and retrieval of dates and times. */
920
1108
  created: Date;
921
- /** Enables basic storage and retrieval of dates and times. */
922
1109
  modified: Date;
923
1110
  }
924
1111
  export interface DeployAttemptCriteria {
@@ -951,9 +1138,7 @@ export interface Deployment {
951
1138
  id?: string | undefined;
952
1139
  createdBy: string;
953
1140
  modifiedBy: string;
954
- /** Enables basic storage and retrieval of dates and times. */
955
1141
  created: Date;
956
- /** Enables basic storage and retrieval of dates and times. */
957
1142
  modified: Date;
958
1143
  }
959
1144
  export interface DeploymentActivity {
@@ -969,14 +1154,11 @@ export interface DeploymentActivity {
969
1154
  type: ActivityTypeEnum;
970
1155
  title: string;
971
1156
  by: string;
972
- /** Enables basic storage and retrieval of dates and times. */
973
1157
  performed: Date;
974
1158
  id?: string | undefined;
975
1159
  createdBy: string;
976
1160
  modifiedBy: string;
977
- /** Enables basic storage and retrieval of dates and times. */
978
1161
  created: Date;
979
- /** Enables basic storage and retrieval of dates and times. */
980
1162
  modified: Date;
981
1163
  }
982
1164
  export interface DeploymentActivityCriteria {
@@ -990,7 +1172,6 @@ export interface DeploymentActivityCriteria {
990
1172
  type?: string | undefined;
991
1173
  title?: string | undefined;
992
1174
  by?: string | undefined;
993
- /** Enables basic storage and retrieval of dates and times. */
994
1175
  performed?: Date | undefined;
995
1176
  assetsName?: string | undefined;
996
1177
  ids?: string[] | undefined;
@@ -1025,9 +1206,7 @@ export interface DeployPipeline {
1025
1206
  id?: string | undefined;
1026
1207
  createdBy: string;
1027
1208
  modifiedBy: string;
1028
- /** Enables basic storage and retrieval of dates and times. */
1029
1209
  created: Date;
1030
- /** Enables basic storage and retrieval of dates and times. */
1031
1210
  modified: Date;
1032
1211
  }
1033
1212
  export interface DeployPipelineCriteria {
@@ -1080,9 +1259,7 @@ export interface Enterprise {
1080
1259
  domains: HostNameConfig[];
1081
1260
  createdBy: string;
1082
1261
  modifiedBy: string;
1083
- /** Enables basic storage and retrieval of dates and times. */
1084
1262
  created: Date;
1085
- /** Enables basic storage and retrieval of dates and times. */
1086
1263
  modified: Date;
1087
1264
  }
1088
1265
  export interface EnterpriseCriteria {
@@ -1119,10 +1296,14 @@ export interface EnterpriseRunState {
1119
1296
  id?: string | undefined;
1120
1297
  createdBy: string;
1121
1298
  modifiedBy: string;
1122
- /** Enables basic storage and retrieval of dates and times. */
1123
1299
  created: Date;
1124
- /** Enables basic storage and retrieval of dates and times. */
1125
1300
  modified: Date;
1301
+ /** Markdown block of instructions or other descriptions from the author about this particular version. */
1302
+ notes?: string | undefined;
1303
+ /** Key-value pairs (aka: property bag) for this particular version. */
1304
+ labels?: Label[] | undefined;
1305
+ /** Starting point for threaded discussions on this particular version. */
1306
+ comments?: Comment[] | undefined;
1126
1307
  }
1127
1308
  export interface EnterpriseRunStateCriteria {
1128
1309
  enterprise?: string | undefined;
@@ -1156,15 +1337,22 @@ export interface EnterpriseVersionConfig {
1156
1337
  id?: string | undefined;
1157
1338
  createdBy: string;
1158
1339
  modifiedBy: string;
1159
- /** Enables basic storage and retrieval of dates and times. */
1160
1340
  created: Date;
1161
- /** Enables basic storage and retrieval of dates and times. */
1162
1341
  modified: Date;
1342
+ /** Markdown block of instructions or other descriptions from the author about this particular version. */
1343
+ notes?: string | undefined;
1344
+ /** Key-value pairs (aka: property bag) for this particular version. */
1345
+ labels?: Label[] | undefined;
1346
+ /** Starting point for threaded discussions on this particular version. */
1347
+ comments?: Comment[] | undefined;
1163
1348
  }
1164
1349
  export interface EnterpriseVersionConfigCriteria {
1165
1350
  enterprise?: string | undefined;
1166
1351
  version?: string | undefined;
1167
1352
  contentHash?: string | undefined;
1353
+ /** Boolean logic filter for string values. Useful for querying on tags */
1354
+ tags?: AndOrNotFilter | undefined;
1355
+ labels?: object | undefined;
1168
1356
  ids?: string[] | undefined;
1169
1357
  all?: boolean | undefined;
1170
1358
  /** Specification for the sort order of a query.
@@ -1186,9 +1374,7 @@ export interface EntityAcl {
1186
1374
  id: string;
1187
1375
  createdBy: string;
1188
1376
  modifiedBy: string;
1189
- /** Enables basic storage and retrieval of dates and times. */
1190
1377
  created: Date;
1191
- /** Enables basic storage and retrieval of dates and times. */
1192
1378
  modified: Date;
1193
1379
  }
1194
1380
  export interface EntityAclCriteria {
@@ -1207,6 +1393,26 @@ export interface EntityAclRoleFilter {
1207
1393
  property?: string | undefined;
1208
1394
  $not?: EntityAclRoleFilter | undefined;
1209
1395
  }
1396
+ /** Overrides the startup command for a container. */
1397
+ export interface EntryPoint {
1398
+ enterprise: string;
1399
+ asset: string;
1400
+ /** The command to run. Not executed within a shell. */
1401
+ command: string;
1402
+ /** Agruments for the command. The container image's CMD is used if this is not provided. */
1403
+ args: string[];
1404
+ /** (optional) Folder path within the image from which to execute the command.
1405
+ * Overrides the default working directory specified by the container image. */
1406
+ workingDir?: string | undefined;
1407
+ /** Semantic version range in which this entrypoint definition is applicable. */
1408
+ versionRange?: string | undefined;
1409
+ disabled?: boolean | undefined;
1410
+ id?: string | undefined;
1411
+ createdBy: string;
1412
+ modifiedBy: string;
1413
+ created: Date;
1414
+ modified: Date;
1415
+ }
1210
1416
  /** "Enum" form of [RFC8927](https://datatracker.ietf.org/doc/rfc8927/) */
1211
1417
  export interface EnumTypeDef {
1212
1418
  enumValue: string[];
@@ -1227,9 +1433,7 @@ export interface Environment {
1227
1433
  defaultFootprint?: Partial<ContainerFootprint> | undefined;
1228
1434
  createdBy: string;
1229
1435
  modifiedBy: string;
1230
- /** Enables basic storage and retrieval of dates and times. */
1231
1436
  created: Date;
1232
- /** Enables basic storage and retrieval of dates and times. */
1233
1437
  modified: Date;
1234
1438
  }
1235
1439
  export interface EnvironmentCriteria {
@@ -1286,9 +1490,7 @@ export interface FileStoreDef {
1286
1490
  id?: string | undefined;
1287
1491
  createdBy: string;
1288
1492
  modifiedBy: string;
1289
- /** Enables basic storage and retrieval of dates and times. */
1290
1493
  created: Date;
1291
- /** Enables basic storage and retrieval of dates and times. */
1292
1494
  modified: Date;
1293
1495
  }
1294
1496
  export interface FileStoreDefCriteria {
@@ -1322,13 +1524,16 @@ export declare enum FileStoreTypeEnum {
1322
1524
  AzureDisk = "AzureDisk",
1323
1525
  AzureFileStorage = "AzureFileStorage",
1324
1526
  HostMachineFolder = "HostMachineFolder"
1325
- } /** Calls out the cabinet and its parent structures. */
1527
+ }
1528
+ /** Calls out the cabinet and its parent structures. */
1326
1529
  export interface FullyQualifiedCabinetScopes {
1327
1530
  enterprises: EnterpriseScope[];
1328
1531
  clusters: string[];
1329
1532
  }
1330
1533
  export interface HelmAssetTemplate {
1331
- /** Maps a port number to the associated setting (full dot path name) in the chart config. */
1534
+ /** Maps a port number to the associated setting (full dot path name) in the chart config.
1535
+ *
1536
+ * TODO: Revisit this data structure. */
1332
1537
  portMappings: object;
1333
1538
  chart: HelmChartSpec;
1334
1539
  assetType: AssetTypesEnum;
@@ -1388,7 +1593,8 @@ export declare enum HostNameStrategyEnum {
1388
1593
  service_dot_domain = "service_dot_domain",
1389
1594
  shared_ingress_ip = "shared_ingress_ip",
1390
1595
  svc_dot_cab_dot_domain = "svc_dot_cab_dot_domain"
1391
- } /** Identifying information of the subscription as it is represented in the billing system.
1596
+ }
1597
+ /** Identifying information of the subscription as it is represented in the billing system.
1392
1598
  * This object should get hydrated by a sync task. */
1393
1599
  export interface IBillingPlanRef {
1394
1600
  /** The name for the plan as it appears to a user. */
@@ -1399,9 +1605,23 @@ export interface IBillingPlanRef {
1399
1605
  customerId: string;
1400
1606
  /** Human-readable immutable identitifer for the plan. */
1401
1607
  code: string;
1402
- /** Enables basic storage and retrieval of dates and times. */
1608
+ /** (Optional, undefined for subscriptions recurring in perptuity)
1609
+ * The earliest date at which the tenant subscription will change in the billing system,
1610
+ * requiring another sync to determine state of the subscription.
1611
+ * That is, the earliest scheduled end of any part of the current contract that affects the total number of seat licenses.
1612
+ *
1613
+ * IMPORTANT: This date declares the next time the contract is EXPLICITLY SCHEDULED TO CHANGE STATUS,
1614
+ * which is NOT NECESSARILY the end of the tenant's overall subscription contract.
1615
+ *
1616
+ * NOTE: This date SHOULD NEVER be in the past for an active subscription.
1617
+ * If it is, it means the status properties of this subscription are stale,
1618
+ * requiring a sync action be performed against the billing system to validate the status of this subscription.
1619
+ *
1620
+ * EXAMPLE: This value shall be undefined for a tenant with a recurring base subscription, even if that tenant has paid for a year in advance.
1621
+ * EXAMPLE: This value shall be the date 6 months from now for a tenant with a monthly base subscription that is explicitly set to terminate in 6 months.
1622
+ * EXAMPLE: This value shall be the date 12 months from now for a tenant who has added 5 extra seats that are scheduled to terminate in a year, even though they have a perpetual monthly recurring subscription that will continue after those additional seats expire. */
1403
1623
  nextRequiredSync?: Date | undefined;
1404
- /** Enables basic storage and retrieval of dates and times. */
1624
+ /** The most recent event that successfully refreshed the status properties of this subscription object from the billing system. */
1405
1625
  lastSync?: Date | undefined;
1406
1626
  }
1407
1627
  export interface ICommandLineProbeAction {
@@ -1442,9 +1662,7 @@ export interface Image {
1442
1662
  id?: string | undefined;
1443
1663
  createdBy: string;
1444
1664
  modifiedBy: string;
1445
- /** Enables basic storage and retrieval of dates and times. */
1446
1665
  created: Date;
1447
- /** Enables basic storage and retrieval of dates and times. */
1448
1666
  modified: Date;
1449
1667
  name: string;
1450
1668
  scope?: string | undefined;
@@ -1477,9 +1695,7 @@ export interface ImageRegistry {
1477
1695
  pullSecretSecondary?: PullSecretRef | undefined;
1478
1696
  createdBy: string;
1479
1697
  modifiedBy: string;
1480
- /** Enables basic storage and retrieval of dates and times. */
1481
1698
  created: Date;
1482
- /** Enables basic storage and retrieval of dates and times. */
1483
1699
  modified: Date;
1484
1700
  code: string;
1485
1701
  url: string;
@@ -1520,7 +1736,8 @@ export declare enum ImageRegistryTypes {
1520
1736
  DockerHub = "DockerHub",
1521
1737
  Other = "Other",
1522
1738
  helm = "helm"
1523
- } /** An unversioned reference to an image repository.
1739
+ }
1740
+ /** An unversioned reference to an image repository.
1524
1741
  * Matches an Image entity. This class is for use as a request: it is NOT A DOMAIN ENTITY. */
1525
1742
  export interface ImageSpec {
1526
1743
  name: string;
@@ -1542,11 +1759,59 @@ export interface IngressDef {
1542
1759
  id?: string | undefined;
1543
1760
  createdBy: string;
1544
1761
  modifiedBy: string;
1545
- /** Enables basic storage and retrieval of dates and times. */
1546
1762
  created: Date;
1547
- /** Enables basic storage and retrieval of dates and times. */
1548
1763
  modified: Date;
1549
1764
  }
1765
+ /** A script or program to run (from within a given container) before an asset's main container is started.
1766
+ *
1767
+ * Failure of this container DOES prevent the asset's main container from starting.
1768
+ *
1769
+ * In Kubernetes, this gets implemented as an [Init Container](https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) */
1770
+ export interface InitContainer {
1771
+ name: string;
1772
+ id?: string | undefined;
1773
+ createdBy: string;
1774
+ modifiedBy: string;
1775
+ created: Date;
1776
+ modified: Date;
1777
+ /** Fully-qualified name of the image whose entrypoint command is to be run,
1778
+ *
1779
+ * Format: `[registryUrl]/[imageName]` (DockerHub is used by default).
1780
+ *
1781
+ * eg:
1782
+ * * `busybox`
1783
+ * * `myazAcr.azurecr.io/my-favorite-image` */
1784
+ image: string;
1785
+ /** Command run on container startup (Optional; defaults to the image's ENTRYPOINT, and if null, defaults to `/bin/sh -c`)
1786
+ *
1787
+ * Description from k8s docs:
1788
+ * Not executed within a shell. The container image\'s ENTRYPOINT is used if this is not provided.
1789
+ * Variable references $(VAR_NAME) are expanded using the container\'s environment.
1790
+ * If a variable cannot be resolved, the reference in the input string will be unchanged.
1791
+ * Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax:
1792
+ * i.e. \"$$(VAR_NAME)\" will produce the string literal \"$(VAR_NAME)\".
1793
+ * Escaped references will never be expanded, regardless of whether the variable exists or not.
1794
+ * Cannot be updated. */
1795
+ entryPointCommand?: string[] | undefined;
1796
+ /** (Optional; defaults to whatever the image has as its "CMD")
1797
+ * Gets passed to the entryPointCommand. Often, the entrypointCommand opens a shell, allowing this to be the command to run inside the shell,
1798
+ *
1799
+ * eg: `entryPointCommand="/bin/sh -c"` and `entryPointArgs="ls -a"` which yields: `/bin/sh -c ls -a` */
1800
+ entryPointArgs?: string[] | undefined;
1801
+ /** Container\'s working directory. If not specified, the container runtime\'s default will be used,
1802
+ * which might be configured in the container image. Cannot be updated. */
1803
+ workingDir?: string | undefined;
1804
+ /** (optional; defaults to false) UNLESS this is set to true, the init container will also get the env variables that are declared in Codiac for the asset. */
1805
+ preventAssetEnv?: boolean | undefined;
1806
+ /** (optional; defaults to false) UNLESS this is set to true, the init container will also get the config files that are declared in Codiac for the asset. */
1807
+ preventAssetConfig?: boolean | undefined;
1808
+ /** (optional; defaults to false) UNLESS this is set to true, the init container will also get the volume mounts that are declared in Codiac for the asset. */
1809
+ preventAssetVolumes?: boolean | undefined;
1810
+ /** (optional) Min/Max Mem and CPU allocations */
1811
+ footprint?: Pick<ContainerFootprint, "memLimit" | "memRequest" | "cpuLimit" | "cpuRequest"> | undefined;
1812
+ /** (optional: defaults to all) The versions of the parent asset for which this init container is to be used. */
1813
+ versionRange?: string | undefined;
1814
+ }
1550
1815
  export interface ISocketProbeAction {
1551
1816
  /** Host name to connect to, defaults to the pod IP. */
1552
1817
  host: string;
@@ -1583,7 +1848,7 @@ export interface IVersionRef {
1583
1848
  }
1584
1849
  export interface JobAssetTemplate {
1585
1850
  image: ImageSpec;
1586
- defaultPort: number;
1851
+ defaultPort: PortMapping | PortMapping | number[] | number;
1587
1852
  defaultImageVersion?: string | undefined;
1588
1853
  assetType: AssetTypesEnum;
1589
1854
  defaultName: string;
@@ -1632,9 +1897,7 @@ export interface Kit {
1632
1897
  tags: string[];
1633
1898
  createdBy: string;
1634
1899
  modifiedBy: string;
1635
- /** Enables basic storage and retrieval of dates and times. */
1636
1900
  created: Date;
1637
- /** Enables basic storage and retrieval of dates and times. */
1638
1901
  modified: Date;
1639
1902
  }
1640
1903
  /** Indicates who in the Codiac universe is allowed to view and use a Kit. */
@@ -1689,9 +1952,7 @@ export interface KvpStoreDef {
1689
1952
  id?: string | undefined;
1690
1953
  createdBy: string;
1691
1954
  modifiedBy: string;
1692
- /** Enables basic storage and retrieval of dates and times. */
1693
1955
  created: Date;
1694
- /** Enables basic storage and retrieval of dates and times. */
1695
1956
  modified: Date;
1696
1957
  }
1697
1958
  export interface KvpStoreDefCriteria {
@@ -1726,9 +1987,7 @@ export interface KvpStoreInfrx {
1726
1987
  id?: string | undefined;
1727
1988
  createdBy: string;
1728
1989
  modifiedBy: string;
1729
- /** Enables basic storage and retrieval of dates and times. */
1730
1990
  created: Date;
1731
- /** Enables basic storage and retrieval of dates and times. */
1732
1991
  modified: Date;
1733
1992
  }
1734
1993
  /** List of codenames for supported KeyValue stores.
@@ -1741,6 +2000,36 @@ export declare enum KvpStoreTypesEnum {
1741
2000
  mongoCollection = "mongoCollection",
1742
2001
  mongoDocument = "mongoDocument"
1743
2002
  }
2003
+ /** A key-value pair applied to an entity in an enterprise. */
2004
+ export interface Label {
2005
+ value: string;
2006
+ name: string;
2007
+ ownerType: string;
2008
+ ownerId: string;
2009
+ enterprise: string;
2010
+ id?: string | undefined;
2011
+ createdBy: string;
2012
+ modifiedBy: string;
2013
+ created: Date;
2014
+ modified: Date;
2015
+ }
2016
+ export interface LabelCriteria {
2017
+ name?: StringFilter | undefined;
2018
+ value?: StringFilter | undefined;
2019
+ ownerType?: string | undefined;
2020
+ ownerId?: StringFilter | undefined;
2021
+ createdBy?: string | undefined;
2022
+ ids?: string[] | undefined;
2023
+ all?: boolean | undefined;
2024
+ /** Specification for the sort order of a query.
2025
+ *
2026
+ * Example: ```{ "color": "asc", size: OrderEnum.desc }```
2027
+ *
2028
+ * Example: ```"color"```
2029
+ *
2030
+ * Example: ```[ "color", "lastName" ]``` */
2031
+ sort?: string[] | "asc" | "desc" | string | undefined;
2032
+ }
1744
2033
  export interface MyTenantRequest {
1745
2034
  }
1746
2035
  export declare enum NativeDataTypeEnum {
@@ -1755,12 +2044,28 @@ export declare enum NativeDataTypeEnum {
1755
2044
  uint16 = "uint16",
1756
2045
  uint32 = "uint32",
1757
2046
  uint8 = "uint8"
1758
- } /** "Type" form of [RFC8927](https://datatracker.ietf.org/doc/rfc8927/) */
2047
+ }
2048
+ /** "Type" form of [RFC8927](https://datatracker.ietf.org/doc/rfc8927/) */
1759
2049
  export interface NativeTypeDef {
1760
2050
  type: NativeDataTypeEnum;
1761
2051
  nullable?: boolean | undefined;
1762
2052
  metadata?: any | undefined;
1763
2053
  }
2054
+ export interface NodePlacement {
2055
+ createdBy: string;
2056
+ modifiedBy: string;
2057
+ created: Date;
2058
+ modified: Date;
2059
+ /** Matches for node labels (aka: nodeSelector). Results in this asset being scheduled only onto nodes whose labels match all of these. */
2060
+ nodeSelector?: object | undefined;
2061
+ /** Controls how Pods are spread across your cluster among failure-domains such as regions, zones, nodes,
2062
+ * and other user-defined topology domains.
2063
+ *
2064
+ * This can help to achieve high availability as well as efficient resource utilization. */
2065
+ spread?: PodTopologySpreadConstraint[] | undefined;
2066
+ /** Semantic version range of the asset in which this node placement is applicable. */
2067
+ versionRange?: string | undefined;
2068
+ }
1764
2069
  /** An arbitrary grouping of OS-specific cluster nodes.
1765
2070
  * All nodes in a pool are of the same vm type. */
1766
2071
  export interface NodePoolDef {
@@ -1768,13 +2073,13 @@ export interface NodePoolDef {
1768
2073
  name: string;
1769
2074
  nodeSpec: string;
1770
2075
  startingNodeCount: number;
2076
+ nodesMin?: number | undefined;
2077
+ nodesMax?: number | undefined;
1771
2078
  isWindows?: boolean | undefined;
1772
2079
  id?: string | undefined;
1773
2080
  createdBy: string;
1774
2081
  modifiedBy: string;
1775
- /** Enables basic storage and retrieval of dates and times. */
1776
2082
  created: Date;
1777
- /** Enables basic storage and retrieval of dates and times. */
1778
2083
  modified: Date;
1779
2084
  }
1780
2085
  export interface NodePoolDefCriteria {
@@ -1785,10 +2090,10 @@ export interface NodePoolDefCriteria {
1785
2090
  * This filter approach does NOT provide for:
1786
2091
  *
1787
2092
  * 1) Formula-driven filtering: (property-scoped) function(propVal: number)
1788
- * comparison of calc on the property value ie: WHERE 2 * [Overhead] <= 50,000
2093
+ * comparison of calc on the property value ie: WHERE 2 * [Overhead] <= 50,000
1789
2094
  *
1790
2095
  * 2) Entity-scoped formula-driven filtering function (entity: T)
1791
- * comparison of calcs on MANY DIFFERENT property values ie: WHERE [Overhead] < 0.33 * [Revenue] */
2096
+ * comparison of calcs on MANY DIFFERENT property values ie: WHERE [Overhead] < 0.33 * [Revenue] */
1792
2097
  startingNodeCount?: NumericFilter | undefined;
1793
2098
  isWindows?: boolean | undefined;
1794
2099
  ids?: string[] | undefined;
@@ -1806,10 +2111,10 @@ export interface NodePoolDefCriteria {
1806
2111
  * This filter approach does NOT provide for:
1807
2112
  *
1808
2113
  * 1) Formula-driven filtering: (property-scoped) function(propVal: number)
1809
- * comparison of calc on the property value ie: WHERE 2 * [Overhead] <= 50,000
2114
+ * comparison of calc on the property value ie: WHERE 2 * [Overhead] <= 50,000
1810
2115
  *
1811
2116
  * 2) Entity-scoped formula-driven filtering function (entity: T)
1812
- * comparison of calcs on MANY DIFFERENT property values ie: WHERE [Overhead] < 0.33 * [Revenue] */
2117
+ * comparison of calcs on MANY DIFFERENT property values ie: WHERE [Overhead] < 0.33 * [Revenue] */
1813
2118
  export interface NumericFilter {
1814
2119
  /** property of the target object to compare (conventional default to the name of the criteria property) */
1815
2120
  property?: string | undefined;
@@ -1828,12 +2133,20 @@ export interface NumericFilter {
1828
2133
  * This filter approach does NOT provide for:
1829
2134
  *
1830
2135
  * 1) Formula-driven filtering: (property-scoped) function(propVal: number)
1831
- * comparison of calc on the property value ie: WHERE 2 * [Overhead] <= 50,000
2136
+ * comparison of calc on the property value ie: WHERE 2 * [Overhead] <= 50,000
1832
2137
  *
1833
2138
  * 2) Entity-scoped formula-driven filtering function (entity: T)
1834
- * comparison of calcs on MANY DIFFERENT property values ie: WHERE [Overhead] < 0.33 * [Revenue] */
2139
+ * comparison of calcs on MANY DIFFERENT property values ie: WHERE [Overhead] < 0.33 * [Revenue] */
1835
2140
  $not?: NumericFilter | undefined;
1836
2141
  }
2142
+ /** Specifies the direction that a single property should be sorted. */
2143
+ export declare enum OrderEnum {
2144
+ asc = "asc",
2145
+ desc = "desc"
2146
+ }
2147
+ export type PartialWithId<TEntity extends IDomainEntity> = Partial<TEntity> & {
2148
+ "id": string;
2149
+ };
1837
2150
  export interface patchOperation {
1838
2151
  op: patchOperationType;
1839
2152
  path: string;
@@ -1846,11 +2159,29 @@ export declare enum patchOperationType {
1846
2159
  remove = "remove",
1847
2160
  replace = "replace",
1848
2161
  test = "test"
1849
- } /** The granting of priveleges to a given Role. */
2162
+ }
2163
+ /** The granting of priveleges to a given Role. */
1850
2164
  export interface Permission {
1851
2165
  role: AuthRole;
1852
2166
  priveleges: Privelege[];
1853
2167
  }
2168
+ /** Instructs the kube-scheduler how to place each incoming Pod in relation to the existing Pods across your cluster.
2169
+ *
2170
+ * These can be assigned at the pod level or at the cluster level ([via a KubeSchedulerConfiguration entity](https://v1-24.docs.kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/#cluster-level-default-constraints)). */
2171
+ export interface PodTopologySpreadConstraint {
2172
+ maxSkew: number;
2173
+ topologyKey?: string | undefined;
2174
+ whenUnsatisfiable?: string | undefined;
2175
+ labelSelector?: object | undefined;
2176
+ }
2177
+ /** Declares the port to use when making requests to an asset, and reroutes them to a different port inside the container
2178
+ * (so that the software in the container does not have to be reconfigured when a different port number is assigned to the asset). */
2179
+ export interface PortMapping {
2180
+ /** The port through which requests can be sent to the asset. */
2181
+ external: number;
2182
+ /** The port on which the software inside the container is listening. */
2183
+ internal?: number | undefined;
2184
+ }
1854
2185
  /** A type of operation that a given Role is allowed to perform on a securable object. */
1855
2186
  export declare enum Privelege {
1856
2187
  "value0" = 0,
@@ -1858,7 +2189,8 @@ export declare enum Privelege {
1858
2189
  "value2" = 2,
1859
2190
  "value3" = 3,
1860
2191
  "value4" = 4
1861
- } /** Declares a probe action and when to run it against an asset. */
2192
+ }
2193
+ /** Declares a probe action and when to run it against an asset. */
1862
2194
  export interface Probe {
1863
2195
  enterprise: string;
1864
2196
  asset: string;
@@ -1869,15 +2201,44 @@ export interface Probe {
1869
2201
  action: ICommandLineProbeAction | IHttpProbeAction | IGrpcProbeAction | ISocketProbeAction | string;
1870
2202
  /** Semantic version range in which this probe is applicable. */
1871
2203
  versionRange?: string | undefined;
2204
+ /** From [K8s docs](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes):
2205
+ * Number of seconds after the container has started before startup,
2206
+ * liveness or readiness probes are initiated.
2207
+ * If a startup probe is defined, liveness and readiness probe delays
2208
+ * do not begin until the startup probe has succeeded.
2209
+ * Defaults to 0 seconds. Minimum value is 0. */
1872
2210
  initialDelaySeconds?: number | undefined;
2211
+ /** From [K8s docs](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes):
2212
+ * How often (in seconds) to perform the probe.
2213
+ * Default to 10 seconds. The minimum value is 1. */
1873
2214
  periodSeconds?: number | undefined;
2215
+ /** How long to wait (in seconds) for a probe to respond before declaring it a failed execution.
2216
+ *
2217
+ * From [K8s docs](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes):
2218
+ * Number of seconds after which the probe times out.
2219
+ * Defaults to 1 second. Minimum value is 1. */
2220
+ timeoutSeconds?: number | undefined;
2221
+ /** Minimum consecutive successes for the probe to be considered successful
2222
+ * after having failed. Defaults to 1.
2223
+ * Must be 1 for liveness and startup Probes. Minimum value is 1. */
2224
+ successThreshold?: number | undefined;
2225
+ /** The number of probe executions to allow before determining the pod unhealthy.
2226
+ *
2227
+ * From [K8s docs](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes):
2228
+ * After a probe fails failureThreshold times in a row, Kubernetes considers that the overall check has failed:
2229
+ * the container is not ready/healthy/live.
2230
+ * For the case of a startup or liveness probe, if at least failureThreshold probes have failed,
2231
+ * Kubernetes treats the container as unhealthy and triggers a restart for that specific container.
2232
+ * The kubelet honors the setting of terminationGracePeriodSeconds for that container.
2233
+ * For a failed readiness probe, the kubelet continues running the container that failed checks,
2234
+ * and also continues to run more probes; because the check failed,
2235
+ * the kubelet sets the Ready condition on the Pod to false. */
2236
+ failureThreshold?: number | undefined;
1874
2237
  disabled?: boolean | undefined;
1875
2238
  id?: string | undefined;
1876
2239
  createdBy: string;
1877
2240
  modifiedBy: string;
1878
- /** Enables basic storage and retrieval of dates and times. */
1879
2241
  created: Date;
1880
- /** Enables basic storage and retrieval of dates and times. */
1881
2242
  modified: Date;
1882
2243
  }
1883
2244
  /** Type declaration for the Probe sub-class, determining the nature of its behavior and handling. */
@@ -1910,7 +2271,8 @@ export declare enum ProbeUsageTypesEnum {
1910
2271
  liveness = "liveness",
1911
2272
  readiness = "readiness",
1912
2273
  startup = "startup"
1913
- } /** A grouping of assets within an enterprise that are released together. */
2274
+ }
2275
+ /** A grouping of assets within an enterprise that are released together. */
1914
2276
  export interface Product {
1915
2277
  enterpriseCode: string;
1916
2278
  name: string;
@@ -1918,9 +2280,7 @@ export interface Product {
1918
2280
  id?: string | undefined;
1919
2281
  createdBy: string;
1920
2282
  modifiedBy: string;
1921
- /** Enables basic storage and retrieval of dates and times. */
1922
2283
  created: Date;
1923
- /** Enables basic storage and retrieval of dates and times. */
1924
2284
  modified: Date;
1925
2285
  }
1926
2286
  export interface ProductCriteria {
@@ -1952,10 +2312,14 @@ export interface ProductVersionConfig {
1952
2312
  id?: string | undefined;
1953
2313
  createdBy: string;
1954
2314
  modifiedBy: string;
1955
- /** Enables basic storage and retrieval of dates and times. */
1956
2315
  created: Date;
1957
- /** Enables basic storage and retrieval of dates and times. */
1958
2316
  modified: Date;
2317
+ /** Markdown block of instructions or other descriptions from the author about this particular version. */
2318
+ notes?: string | undefined;
2319
+ /** Key-value pairs (aka: property bag) for this particular version. */
2320
+ labels?: Label[] | undefined;
2321
+ /** Starting point for threaded discussions on this particular version. */
2322
+ comments?: Comment[] | undefined;
1959
2323
  }
1960
2324
  export interface ProductVersionConfigCriteria {
1961
2325
  enterpriseCode?: string | undefined;
@@ -1992,7 +2356,6 @@ export interface PropertiesTypeDef {
1992
2356
  /** Metadata for the credentials that a cluster will use when pulling images from an image registry.
1993
2357
  * This class points to a a specific secret record in a known secret store. */
1994
2358
  export interface PullSecretRef {
1995
- /** Enables basic storage and retrieval of dates and times. */
1996
2359
  expiresOn: Date;
1997
2360
  /** Applies to the creation of this instance of PullSecretRef, not necessarily the same as the secret itself in the secret store. */
1998
2361
  created: Date;
@@ -2097,10 +2460,8 @@ export interface ScopedConfig {
2097
2460
  targetFile: string;
2098
2461
  sourcedSettings?: ISourcedSetting[] | undefined;
2099
2462
  id?: string | undefined;
2100
- /** Enables basic storage and retrieval of dates and times. */
2101
2463
  modified: Date;
2102
2464
  modifiedBy: string;
2103
- /** Enables basic storage and retrieval of dates and times. */
2104
2465
  created: Date;
2105
2466
  createdBy: string;
2106
2467
  /** The contents of the config itself. The config file can be produced by writing this property to a file named by this.targetFile. */
@@ -2142,9 +2503,7 @@ export interface ScopedHostNameConfig {
2142
2503
  governs?: boolean | undefined;
2143
2504
  createdBy: string;
2144
2505
  modifiedBy: string;
2145
- /** Enables basic storage and retrieval of dates and times. */
2146
2506
  created: Date;
2147
- /** Enables basic storage and retrieval of dates and times. */
2148
2507
  modified: Date;
2149
2508
  }
2150
2509
  export interface ScopedHostNameConfigCriteria {
@@ -2183,9 +2542,7 @@ export interface ScopedSetting {
2183
2542
  id?: string | undefined;
2184
2543
  createdBy: string;
2185
2544
  modifiedBy: string;
2186
- /** Enables basic storage and retrieval of dates and times. */
2187
2545
  created: Date;
2188
- /** Enables basic storage and retrieval of dates and times. */
2189
2546
  modified: Date;
2190
2547
  }
2191
2548
  export interface ScopedSettingCriteria {
@@ -2230,7 +2587,8 @@ export declare enum ScopeLevel {
2230
2587
  cabinet = "cabinet",
2231
2588
  enterprise = "enterprise",
2232
2589
  environment = "environment"
2233
- } /** A cloud provider account for an individual user or application. */
2590
+ }
2591
+ /** A cloud provider account for an individual user or application. */
2234
2592
  export interface SecurityAccount {
2235
2593
  /** (guid) The id of the service principal, used when assigining permissions. eg: "bf52a5ea-3663-476c-bb54-aacf9a1b39db", */
2236
2594
  id: string;
@@ -2250,10 +2608,11 @@ export interface SecurityAccount {
2250
2608
  export declare enum SecurityAccountTypeEnum {
2251
2609
  managedIdentity = "managedIdentity",
2252
2610
  servicePrincipal = "servicePrincipal"
2253
- } /** An asset consisting of a k8s service
2611
+ }
2612
+ /** An asset consisting of a k8s service
2254
2613
  * backed by a pod replica set (generated via a k8s Deployment entity). */
2255
2614
  export interface ServiceAssetTemplate {
2256
- defaultPort: number;
2615
+ defaultPort: PortMapping | PortMapping | number[] | number;
2257
2616
  image: ImageSpec;
2258
2617
  defaultImageVersion?: string | undefined;
2259
2618
  assetType: AssetTypesEnum;
@@ -2288,9 +2647,7 @@ export interface SetupJournal {
2288
2647
  data: object;
2289
2648
  createdBy: string;
2290
2649
  modifiedBy: string;
2291
- /** Enables basic storage and retrieval of dates and times. */
2292
2650
  created: Date;
2293
- /** Enables basic storage and retrieval of dates and times. */
2294
2651
  modified: Date;
2295
2652
  }
2296
2653
  export interface SetupJournalCriteria {
@@ -2338,9 +2695,7 @@ export interface Snapshot {
2338
2695
  id?: string | undefined;
2339
2696
  createdBy: string;
2340
2697
  modifiedBy: string;
2341
- /** Enables basic storage and retrieval of dates and times. */
2342
2698
  created: Date;
2343
- /** Enables basic storage and retrieval of dates and times. */
2344
2699
  modified: Date;
2345
2700
  }
2346
2701
  export interface SnapshotCriteria {
@@ -2362,9 +2717,7 @@ export interface SourceRepo {
2362
2717
  id?: string | undefined;
2363
2718
  createdBy: string;
2364
2719
  modifiedBy: string;
2365
- /** Enables basic storage and retrieval of dates and times. */
2366
2720
  created: Date;
2367
- /** Enables basic storage and retrieval of dates and times. */
2368
2721
  modified: Date;
2369
2722
  }
2370
2723
  export interface SourceRepoCriteria {
@@ -2427,9 +2780,7 @@ export interface Subscription {
2427
2780
  enterprises: Enterprise[];
2428
2781
  createdBy: string;
2429
2782
  modifiedBy: string;
2430
- /** Enables basic storage and retrieval of dates and times. */
2431
2783
  created: Date;
2432
- /** Enables basic storage and retrieval of dates and times. */
2433
2784
  modified: Date;
2434
2785
  }
2435
2786
  export interface SubscriptionCriteria {
@@ -2453,19 +2804,12 @@ export declare enum SubscriptionStatus {
2453
2804
  pending = "pending",
2454
2805
  suspended = "suspended",
2455
2806
  trial = "trial"
2456
- } /** The token must be submitted in the
2807
+ }
2808
+ /** The token must be submitted in the
2457
2809
  * http header designated in the AuthSettings object for the auth api. */
2458
2810
  export interface SwitchTenantRequest {
2459
2811
  newTenantCode: string;
2460
2812
  }
2461
- export interface T {
2462
- }
2463
- export interface T_1 {
2464
- }
2465
- export interface T_2 {
2466
- }
2467
- export interface T_3 {
2468
- }
2469
2813
  export interface Tag {
2470
2814
  name: string;
2471
2815
  ownerType: string;
@@ -2474,9 +2818,7 @@ export interface Tag {
2474
2818
  id?: string | undefined;
2475
2819
  createdBy: string;
2476
2820
  modifiedBy: string;
2477
- /** Enables basic storage and retrieval of dates and times. */
2478
2821
  created: Date;
2479
- /** Enables basic storage and retrieval of dates and times. */
2480
2822
  modified: Date;
2481
2823
  }
2482
2824
  export interface TagCriteria {
@@ -2495,8 +2837,6 @@ export interface TagCriteria {
2495
2837
  * Example: ```[ "color", "lastName" ]``` */
2496
2838
  sort?: string[] | "asc" | "desc" | string | undefined;
2497
2839
  }
2498
- export interface TCriteria {
2499
- }
2500
2840
  export interface TenantRegistrationRequest {
2501
2841
  tenantName: string;
2502
2842
  newUser: boolean;
@@ -2520,7 +2860,6 @@ export interface TenantSubscriptionUpdate {
2520
2860
  totalSeats?: number | undefined;
2521
2861
  enabled?: boolean | undefined;
2522
2862
  status?: "cancelled" | "closed" | "current" | "overdue" | "pending" | "suspended" | "trial" | undefined;
2523
- /** Enables basic storage and retrieval of dates and times. */
2524
2863
  expiration?: Date | undefined;
2525
2864
  newName?: string | undefined;
2526
2865
  }
@@ -2577,9 +2916,7 @@ export interface VersionConfig {
2577
2916
  id?: string | undefined;
2578
2917
  createdBy: string;
2579
2918
  modifiedBy: string;
2580
- /** Enables basic storage and retrieval of dates and times. */
2581
2919
  created: Date;
2582
- /** Enables basic storage and retrieval of dates and times. */
2583
2920
  modified: Date;
2584
2921
  }
2585
2922
  export interface VersionConfigCriteria {
@@ -2605,14 +2942,11 @@ export interface VersionCreateActivity {
2605
2942
  type: ActivityTypeEnum;
2606
2943
  title: string;
2607
2944
  by: string;
2608
- /** Enables basic storage and retrieval of dates and times. */
2609
2945
  performed: Date;
2610
2946
  id?: string | undefined;
2611
2947
  createdBy: string;
2612
2948
  modifiedBy: string;
2613
- /** Enables basic storage and retrieval of dates and times. */
2614
2949
  created: Date;
2615
- /** Enables basic storage and retrieval of dates and times. */
2616
2950
  modified: Date;
2617
2951
  }
2618
2952
  export interface VersionCreateActivityCriteria {
@@ -2621,7 +2955,6 @@ export interface VersionCreateActivityCriteria {
2621
2955
  type?: string | undefined;
2622
2956
  title?: string | undefined;
2623
2957
  by?: string | undefined;
2624
- /** Enables basic storage and retrieval of dates and times. */
2625
2958
  performed?: Date | undefined;
2626
2959
  cabinet?: string | undefined;
2627
2960
  assetsName?: string | undefined;
@@ -2637,7 +2970,7 @@ export interface VersionCreateActivityCriteria {
2637
2970
  sort?: string[] | "asc" | "desc" | string | undefined;
2638
2971
  }
2639
2972
  export interface VersionGetsertRequest {
2640
- overlays: object[];
2973
+ overlays: AssetVersion[];
2641
2974
  enterpriseCode: string;
2642
2975
  startingEntVersion?: string | undefined;
2643
2976
  targetCabinet?: string | undefined;
@@ -2650,6 +2983,8 @@ export interface VersionGetsertRequest {
2650
2983
  export interface WeeklyTime {
2651
2984
  day: "fr" | "mo" | "sa" | "su" | "th" | "tu" | "we";
2652
2985
  hr24: "0" | "1" | "10" | "11" | "12" | "13" | "14" | "15" | "16" | "17" | "18" | "19" | "2" | "20" | "21" | "22" | "23" | "3" | "4" | "5" | "6" | "7" | "8" | "9";
2986
+ /** DEVNOTE: Do these need to be strings? why not integers? */
2987
+ m?: string | undefined;
2653
2988
  }
2654
2989
  export interface WhoAmIRequest {
2655
2990
  }
@@ -2669,9 +3004,7 @@ export interface WorkFlowStrategy {
2669
3004
  id?: string | undefined;
2670
3005
  createdBy: string;
2671
3006
  modifiedBy: string;
2672
- /** Enables basic storage and retrieval of dates and times. */
2673
3007
  created: Date;
2674
- /** Enables basic storage and retrieval of dates and times. */
2675
3008
  modified: Date;
2676
3009
  }
2677
3010
  export interface WorkFlowStrategyCriteria {
@@ -2699,9 +3032,7 @@ export interface ZombiePeriod {
2699
3032
  id?: string | undefined;
2700
3033
  createdBy: string;
2701
3034
  modifiedBy: string;
2702
- /** Enables basic storage and retrieval of dates and times. */
2703
3035
  created: Date;
2704
- /** Enables basic storage and retrieval of dates and times. */
2705
3036
  modified: Date;
2706
3037
  }
2707
3038
  export interface ZombiePeriodCriteria {