k8ts 0.9.2 → 0.11.2

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 (173) hide show
  1. package/dist/common-world.d.ts +12 -0
  2. package/dist/common-world.d.ts.map +1 -0
  3. package/dist/{default-world.js → common-world.js} +11 -6
  4. package/dist/common-world.js.map +1 -0
  5. package/dist/env/env.d.ts +10 -12
  6. package/dist/env/env.d.ts.map +1 -1
  7. package/dist/env/env.js +9 -34
  8. package/dist/env/env.js.map +1 -1
  9. package/dist/env/index.d.ts +1 -1
  10. package/dist/env/index.d.ts.map +1 -1
  11. package/dist/env/types.d.ts +5 -13
  12. package/dist/env/types.d.ts.map +1 -1
  13. package/dist/env/types.js +0 -11
  14. package/dist/env/types.js.map +1 -1
  15. package/dist/index.d.ts +1 -2
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +3 -4
  18. package/dist/index.js.map +1 -1
  19. package/dist/origins/file/file.d.ts +3 -3
  20. package/dist/origins/file/file.d.ts.map +1 -1
  21. package/dist/origins/file/file.js +1 -1
  22. package/dist/origins/file/file.js.map +1 -1
  23. package/dist/origins/file/modifier.js +1 -1
  24. package/dist/origins/file/modifier.js.map +1 -1
  25. package/dist/origins/file/section.d.ts +4 -4
  26. package/dist/origins/file/section.d.ts.map +1 -1
  27. package/dist/origins/file/section.js +1 -1
  28. package/dist/origins/file/section.js.map +1 -1
  29. package/dist/origins/index.d.ts +0 -1
  30. package/dist/origins/index.d.ts.map +1 -1
  31. package/dist/origins/index.js +0 -1
  32. package/dist/origins/index.js.map +1 -1
  33. package/dist/origins/world.d.ts +2 -5
  34. package/dist/origins/world.d.ts.map +1 -1
  35. package/dist/origins/world.js +4 -10
  36. package/dist/origins/world.js.map +1 -1
  37. package/dist/resources/config/config-keys-of.d.ts +2 -0
  38. package/dist/resources/config/config-keys-of.d.ts.map +1 -0
  39. package/dist/resources/config/config-keys-of.js +3 -0
  40. package/dist/resources/config/config-keys-of.js.map +1 -0
  41. package/dist/resources/config/configmap.d.ts +11 -0
  42. package/dist/resources/config/configmap.d.ts.map +1 -0
  43. package/dist/resources/config/configmap.js +20 -0
  44. package/dist/resources/config/configmap.js.map +1 -0
  45. package/dist/resources/config/index.d.ts +4 -0
  46. package/dist/resources/config/index.d.ts.map +1 -0
  47. package/dist/resources/{configmap → config}/index.js +2 -0
  48. package/dist/resources/config/index.js.map +1 -0
  49. package/dist/resources/config/key-ref.d.ts +7 -0
  50. package/dist/resources/config/key-ref.d.ts.map +1 -0
  51. package/dist/resources/config/key-ref.js +13 -0
  52. package/dist/resources/config/key-ref.js.map +1 -0
  53. package/dist/resources/config/resolver.d.ts +10 -0
  54. package/dist/resources/config/resolver.d.ts.map +1 -0
  55. package/dist/resources/config/resolver.js +31 -0
  56. package/dist/resources/config/resolver.js.map +1 -0
  57. package/dist/resources/config/secret.d.ts +24 -0
  58. package/dist/resources/config/secret.d.ts.map +1 -0
  59. package/dist/resources/config/secret.js +24 -0
  60. package/dist/resources/config/secret.js.map +1 -0
  61. package/dist/resources/deployment/deployment.d.ts +2 -2
  62. package/dist/resources/deployment/deployment.d.ts.map +1 -1
  63. package/dist/resources/http-route/http-route.d.ts +3 -3
  64. package/dist/resources/index.d.ts +3 -7
  65. package/dist/resources/index.d.ts.map +1 -1
  66. package/dist/resources/index.js +3 -7
  67. package/dist/resources/index.js.map +1 -1
  68. package/dist/resources/persistent/claim/pvc.d.ts +3 -3
  69. package/dist/resources/persistent/volume/pv.d.ts +4 -4
  70. package/dist/resources/persistent/volume/pv.d.ts.map +1 -1
  71. package/dist/resources/persistent/volume/pv.js.map +1 -1
  72. package/dist/resources/pod/container/container.d.ts +13 -9
  73. package/dist/resources/pod/container/container.d.ts.map +1 -1
  74. package/dist/resources/pod/container/container.js +46 -0
  75. package/dist/resources/pod/container/container.js.map +1 -1
  76. package/dist/resources/pod/container/mounts.d.ts +2 -3
  77. package/dist/resources/pod/container/mounts.d.ts.map +1 -1
  78. package/dist/resources/pod/pod-template.d.ts +15 -7
  79. package/dist/resources/pod/pod-template.d.ts.map +1 -1
  80. package/dist/resources/pod/pod-template.js +11 -1
  81. package/dist/resources/pod/pod-template.js.map +1 -1
  82. package/dist/resources/pod/volume/devices.d.ts +1 -0
  83. package/dist/resources/pod/volume/devices.d.ts.map +1 -1
  84. package/dist/resources/pod/volume/devices.js +4 -0
  85. package/dist/resources/pod/volume/devices.js.map +1 -1
  86. package/dist/resources/pod/volume/volumes.d.ts +31 -14
  87. package/dist/resources/pod/volume/volumes.d.ts.map +1 -1
  88. package/dist/resources/pod/volume/volumes.js +29 -24
  89. package/dist/resources/pod/volume/volumes.js.map +1 -1
  90. package/dist/resources/rbac/cluster-role.d.ts +1 -1
  91. package/dist/resources/rbac/cluster-role.d.ts.map +1 -1
  92. package/dist/resources/rbac/cluster-role.js +1 -1
  93. package/dist/resources/rbac/cluster-role.js.map +1 -1
  94. package/dist/resources/rbac/index.d.ts +4 -0
  95. package/dist/resources/rbac/index.d.ts.map +1 -0
  96. package/dist/resources/{secret → rbac}/index.js +3 -1
  97. package/dist/resources/rbac/index.js.map +1 -0
  98. package/dist/resources/service/service.d.ts +2 -2
  99. package/dist/resources/service/service.d.ts.map +1 -1
  100. package/dist/resources/service/service.js.map +1 -1
  101. package/dist/runner/exporter/assembler.d.ts.map +1 -1
  102. package/dist/runner/exporter/assembler.js +1 -0
  103. package/dist/runner/exporter/assembler.js.map +1 -1
  104. package/dist/runner/exporter/loader.d.ts.map +1 -1
  105. package/dist/runner/exporter/loader.js +2 -0
  106. package/dist/runner/exporter/loader.js.map +1 -1
  107. package/dist/runner/exporter/manifester.d.ts.map +1 -1
  108. package/dist/runner/exporter/manifester.js +0 -2
  109. package/dist/runner/exporter/manifester.js.map +1 -1
  110. package/package.json +9 -10
  111. package/src/{default-world.ts → common-world.ts} +14 -7
  112. package/src/env/env.ts +30 -57
  113. package/src/env/index.ts +1 -1
  114. package/src/env/types.ts +5 -22
  115. package/src/index.ts +1 -2
  116. package/src/origins/file/file.ts +4 -7
  117. package/src/origins/file/modifier.ts +1 -1
  118. package/src/origins/file/section.ts +5 -12
  119. package/src/origins/index.ts +0 -1
  120. package/src/origins/world.ts +4 -12
  121. package/src/resources/config/config-keys-of.ts +0 -0
  122. package/src/resources/config/configmap.ts +24 -0
  123. package/src/resources/config/index.ts +3 -0
  124. package/src/resources/config/key-ref.ts +8 -0
  125. package/src/resources/config/resolver.ts +29 -0
  126. package/src/resources/config/secret.ts +43 -0
  127. package/src/resources/deployment/deployment.ts +2 -2
  128. package/src/resources/http-route/http-route.ts +2 -2
  129. package/src/resources/index.ts +3 -7
  130. package/src/resources/persistent/claim/pvc.ts +2 -2
  131. package/src/resources/persistent/volume/pv.ts +5 -11
  132. package/src/resources/pod/container/container.ts +70 -9
  133. package/src/resources/pod/container/mounts.ts +1 -1
  134. package/src/resources/pod/pod-template.ts +54 -6
  135. package/src/resources/pod/volume/devices.ts +4 -1
  136. package/src/resources/pod/volume/volumes.ts +66 -53
  137. package/src/resources/rbac/cluster-role.ts +1 -1
  138. package/src/resources/rbac/index.ts +3 -0
  139. package/src/resources/service/service.ts +2 -2
  140. package/src/runner/exporter/assembler.ts +1 -0
  141. package/src/runner/exporter/loader.ts +3 -0
  142. package/src/runner/exporter/manifester.ts +0 -3
  143. package/dist/default-world.d.ts +0 -5
  144. package/dist/default-world.d.ts.map +0 -1
  145. package/dist/default-world.js.map +0 -1
  146. package/dist/origins/external.d.ts +0 -8
  147. package/dist/origins/external.d.ts.map +0 -1
  148. package/dist/origins/external.js +0 -19
  149. package/dist/origins/external.js.map +0 -1
  150. package/dist/resources/configmap/configmap.d.ts +0 -12
  151. package/dist/resources/configmap/configmap.d.ts.map +0 -1
  152. package/dist/resources/configmap/configmap.js +0 -27
  153. package/dist/resources/configmap/configmap.js.map +0 -1
  154. package/dist/resources/configmap/index.d.ts +0 -2
  155. package/dist/resources/configmap/index.d.ts.map +0 -1
  156. package/dist/resources/configmap/index.js.map +0 -1
  157. package/dist/resources/external/index.d.ts +0 -19
  158. package/dist/resources/external/index.d.ts.map +0 -1
  159. package/dist/resources/external/index.js +0 -44
  160. package/dist/resources/external/index.js.map +0 -1
  161. package/dist/resources/secret/index.d.ts +0 -2
  162. package/dist/resources/secret/index.d.ts.map +0 -1
  163. package/dist/resources/secret/index.js.map +0 -1
  164. package/dist/resources/secret/secret.d.ts +0 -13
  165. package/dist/resources/secret/secret.d.ts.map +0 -1
  166. package/dist/resources/secret/secret.js +0 -18
  167. package/dist/resources/secret/secret.js.map +0 -1
  168. package/src/origins/external.ts +0 -14
  169. package/src/resources/configmap/configmap.ts +0 -36
  170. package/src/resources/configmap/index.ts +0 -1
  171. package/src/resources/external/index.ts +0 -49
  172. package/src/resources/secret/index.ts +0 -1
  173. package/src/resources/secret/secret.ts +0 -20
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/resources/config/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,4CAAyB;AACzB,2CAAwB"}
@@ -0,0 +1,7 @@
1
+ import type { Ref2_Of } from "@k8ts/instruments";
2
+ export declare class ConfigKeyRef<Backend extends Ref2_Of = Ref2_Of, K extends string = string> {
3
+ readonly backend: Backend;
4
+ readonly key: K;
5
+ constructor(backend: Backend, key: K);
6
+ }
7
+ //# sourceMappingURL=key-ref.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"key-ref.d.ts","sourceRoot":"","sources":["../../../src/resources/config/key-ref.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAEhD,qBAAa,YAAY,CAAC,OAAO,SAAS,OAAO,GAAG,OAAO,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM;IAE9E,QAAQ,CAAC,OAAO,EAAE,OAAO;aACT,GAAG,EAAE,CAAC;gBADb,OAAO,EAAE,OAAO,EACT,GAAG,EAAE,CAAC;CAE7B"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConfigKeyRef = void 0;
4
+ class ConfigKeyRef {
5
+ backend;
6
+ key;
7
+ constructor(backend, key) {
8
+ this.backend = backend;
9
+ this.key = key;
10
+ }
11
+ }
12
+ exports.ConfigKeyRef = ConfigKeyRef;
13
+ //# sourceMappingURL=key-ref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"key-ref.js","sourceRoot":"","sources":["../../../src/resources/config/key-ref.ts"],"names":[],"mappings":";;;AAEA,MAAa,YAAY;IAER;IACO;IAFpB,YACa,OAAgB,EACT,GAAM;QADb,YAAO,GAAP,OAAO,CAAS;QACT,QAAG,GAAH,GAAG,CAAG;IACvB,CAAC;CACP;AALD,oCAKC"}
@@ -0,0 +1,10 @@
1
+ import { type DataSource, type Resource_Ref_Min } from "@k8ts/instruments";
2
+ export declare function resolveDataSourceRecord(resource: Resource_Ref_Min, input: Record<string, DataSource>): Promise<{
3
+ data: {
4
+ [k: string]: string;
5
+ };
6
+ binaryData: {
7
+ [k: string]: string;
8
+ };
9
+ }>;
10
+ //# sourceMappingURL=resolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../src/resources/config/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,UAAU,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAG3F,wBAAsB,uBAAuB,CACzC,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC;;;;;;;GAuBpC"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveDataSourceRecord = resolveDataSourceRecord;
4
+ const instruments_1 = require("@k8ts/instruments");
5
+ const what_are_you_1 = require("what-are-you");
6
+ async function resolveDataSourceRecord(resource, input) {
7
+ const binaryData = [];
8
+ const data = [];
9
+ const entries = Object.entries(input ?? {});
10
+ for (const [k, v] of entries) {
11
+ let current = v;
12
+ if (current instanceof instruments_1.DataSource_Lazy) {
13
+ current = await current.get();
14
+ }
15
+ if ((0, what_are_you_1.isTypedArray)(current) || (0, what_are_you_1.isArrayBufferLike)(current)) {
16
+ const encoded = Buffer.from(current).toString("base64");
17
+ binaryData.push([k, encoded]);
18
+ }
19
+ else if (typeof current === "string") {
20
+ data.push([k, current]);
21
+ }
22
+ else {
23
+ throw new Error(`Unsupported DataSource for ConfigMap ${resource} key "${k}"`);
24
+ }
25
+ }
26
+ return {
27
+ data: Object.fromEntries(data),
28
+ binaryData: Object.fromEntries(binaryData)
29
+ };
30
+ }
31
+ //# sourceMappingURL=resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/resources/config/resolver.ts"],"names":[],"mappings":";;AAGA,0DAyBC;AA5BD,mDAA2F;AAC3F,+CAA8D;AAEvD,KAAK,UAAU,uBAAuB,CACzC,QAA0B,EAC1B,KAAiC;IAEjC,MAAM,UAAU,GAAuB,EAAE,CAAA;IACzC,MAAM,IAAI,GAAuB,EAAE,CAAA;IACnC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAA2B,CAAA;IACrE,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,OAAO,GAAG,CAAC,CAAA;QACf,IAAI,OAAO,YAAY,6BAAe,EAAE,CAAC;YACrC,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,CAAA;QACjC,CAAC;QACD,IAAI,IAAA,2BAAY,EAAC,OAAO,CAAC,IAAI,IAAA,gCAAiB,EAAC,OAAO,CAAC,EAAE,CAAC;YACtD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YACvD,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;QACjC,CAAC;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;QAC3B,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,wCAAwC,QAAQ,SAAS,CAAC,GAAG,CAAC,CAAA;QAClF,CAAC;IACL,CAAC;IACD,OAAO;QACH,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC;QAC9B,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC;KAC7C,CAAA;AACL,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { Resource_Top, type DataSource } from "@k8ts/instruments";
2
+ export interface Secret_Data_Entry {
3
+ as: "base64" | "plain";
4
+ value: DataSource;
5
+ }
6
+ export type Secret_Types = `kubernetes.io/${"service-account-token" | "dockercfg" | "dockerconfigjson" | "basic-auth" | "ssh-auth" | "tls"}` | "bootstrap.kubernetes.io/token";
7
+ export interface Secret_Props<Keys extends string = string> {
8
+ $type?: Secret_Types;
9
+ $data?: Record<Keys, DataSource>;
10
+ }
11
+ export declare class Secret<Name extends string = string, Keys extends string = string> extends Resource_Top<Name, Secret_Props<Keys>> {
12
+ get keys(): Keys[];
13
+ get kind(): import("@k8ts/instruments").Kind.Kind<"", "v1", "Secret">;
14
+ protected body(): Promise<{
15
+ type: string;
16
+ data: {
17
+ [k: string]: string;
18
+ };
19
+ stringData: {
20
+ [k: string]: string;
21
+ };
22
+ }>;
23
+ }
24
+ //# sourceMappingURL=secret.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret.d.ts","sourceRoot":"","sources":["../../../src/resources/config/secret.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAIjE,MAAM,WAAW,iBAAiB;IAC9B,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAA;IACtB,KAAK,EAAE,UAAU,CAAA;CACpB;AAED,MAAM,MAAM,YAAY,GAClB,iBACM,uBAAuB,GACvB,WAAW,GACX,kBAAkB,GAClB,YAAY,GACZ,UAAU,GACV,KAAK,EAAE,GACb,+BAA+B,CAAA;AACrC,MAAM,WAAW,YAAY,CAAC,IAAI,SAAS,MAAM,GAAG,MAAM;IACtD,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;CACnC;AAED,qBAAa,MAAM,CACf,IAAI,SAAS,MAAM,GAAG,MAAM,EAC5B,IAAI,SAAS,MAAM,GAAG,MAAM,CAC9B,SAAQ,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,IAAI,IAC0C,IAAI,EAAE,CACvD;IACD,IAAI,IAAI,8DAEP;cAEe,IAAI;;;;;;;;;CAQvB"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Secret = void 0;
4
+ const instruments_1 = require("@k8ts/instruments");
5
+ const default_1 = require("../../kinds/default");
6
+ const resolver_1 = require("./resolver");
7
+ class Secret extends instruments_1.Resource_Top {
8
+ get keys() {
9
+ return Object.keys(this.props.$data ?? {});
10
+ }
11
+ get kind() {
12
+ return default_1.v1.Secret._;
13
+ }
14
+ async body() {
15
+ const resolved = await (0, resolver_1.resolveDataSourceRecord)(this, this.props.$data ?? {});
16
+ return {
17
+ type: this.props.$type ?? "Opaque",
18
+ data: resolved.binaryData,
19
+ stringData: resolved.data
20
+ };
21
+ }
22
+ }
23
+ exports.Secret = Secret;
24
+ //# sourceMappingURL=secret.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secret.js","sourceRoot":"","sources":["../../../src/resources/config/secret.ts"],"names":[],"mappings":";;;AAAA,mDAAiE;AACjE,iDAAwC;AACxC,yCAAoD;AAqBpD,MAAa,MAGX,SAAQ,0BAAsC;IAC5C,IAAI,IAAI;QACJ,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAW,CAAA;IACxD,CAAC;IACD,IAAI,IAAI;QACJ,OAAO,YAAE,CAAC,MAAM,CAAC,CAAC,CAAA;IACtB,CAAC;IAES,KAAK,CAAC,IAAI;QAChB,MAAM,QAAQ,GAAG,MAAM,IAAA,kCAAuB,EAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;QAC5E,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,QAAQ;YAClC,IAAI,EAAE,QAAQ,CAAC,UAAU;YACzB,UAAU,EAAE,QAAQ,CAAC,IAAI;SAC5B,CAAA;IACL,CAAC;CACJ;AAnBD,wBAmBC"}
@@ -1,4 +1,4 @@
1
- import { Resource_Core_Ref, Resource_Top, type Resource_Entity } from "@k8ts/instruments";
1
+ import { Ref2_Of, Resource_Top, type Resource_Entity } from "@k8ts/instruments";
2
2
  import { CDK } from "@k8ts/sample-interfaces";
3
3
  import { apps } from "../../kinds/apps";
4
4
  import { type Pod_Props } from "../pod";
@@ -14,7 +14,7 @@ export type Deployment_Props<Ports extends string> = Deployment_Props_Original &
14
14
  $template: Pod_Props<Ports>;
15
15
  $strategy?: Deployment_Strategy;
16
16
  };
17
- export type Deployment_Ref<Ports extends string> = Resource_Core_Ref<apps.v1.Deployment._> & {
17
+ export type Deployment_Ref<Ports extends string> = Ref2_Of<apps.v1.Deployment._> & {
18
18
  __PORTS__: Ports;
19
19
  };
20
20
  export declare class Deployment<Name extends string, Ports extends string = string> extends Resource_Top<Name, Deployment_Props<Ports>> {
@@ -1 +1 @@
1
- {"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../../src/resources/deployment/deployment.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,iBAAiB,EACjB,YAAY,EACZ,KAAK,eAAe,EACvB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAI7C,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACvC,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAA;AAErD,MAAM,WAAW,iCAAkC,SAAQ,GAAG,CAAC,uBAAuB;IAClF,IAAI,EAAE,eAAe,CAAA;CACxB;AACD,MAAM,WAAW,4BAA4B;IACzC,IAAI,EAAE,UAAU,CAAA;CACnB;AACD,MAAM,MAAM,mBAAmB,GAAG,iCAAiC,GAAG,4BAA4B,CAAA;AAClG,MAAM,MAAM,yBAAyB,GAAG,IAAI,CACxC,GAAG,CAAC,cAAc,EAClB,UAAU,GAAG,UAAU,GAAG,UAAU,CACvC,CAAA;AAED,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,MAAM,IAAI,yBAAyB,GAAG;IAC7E,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAA;IAC3B,SAAS,CAAC,EAAE,mBAAmB,CAAA;CAClC,CAAA;AACD,MAAM,MAAM,cAAc,CAAC,KAAK,SAAS,MAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG;IACzF,SAAS,EAAE,KAAK,CAAA;CACnB,CAAA;AAED,qBAAa,UAAU,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,YAAY,CAC5F,IAAI,EACJ,gBAAgB,CAAC,KAAK,CAAC,CAC1B;;IACG,SAAS,EAAG,KAAK,CAAA;IACjB,IAAI,IAAI,sEAEP;IAYD,SAAS,CAAC,QAAQ,IAAI,eAAe,EAAE;IAGvC,SAAS,CAAC,IAAI,IAAI,GAAG,CAAC,mBAAmB;IAiBzC,OAAO,KAAK,SAAS,GAepB;IACD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAIxB;IAEF,IAAI,KAAK,wEAER;CACJ"}
1
+ {"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../../src/resources/deployment/deployment.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,OAAO,EACP,YAAY,EACZ,KAAK,eAAe,EACvB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAI7C,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACvC,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAA;AAErD,MAAM,WAAW,iCAAkC,SAAQ,GAAG,CAAC,uBAAuB;IAClF,IAAI,EAAE,eAAe,CAAA;CACxB;AACD,MAAM,WAAW,4BAA4B;IACzC,IAAI,EAAE,UAAU,CAAA;CACnB;AACD,MAAM,MAAM,mBAAmB,GAAG,iCAAiC,GAAG,4BAA4B,CAAA;AAClG,MAAM,MAAM,yBAAyB,GAAG,IAAI,CACxC,GAAG,CAAC,cAAc,EAClB,UAAU,GAAG,UAAU,GAAG,UAAU,CACvC,CAAA;AAED,MAAM,MAAM,gBAAgB,CAAC,KAAK,SAAS,MAAM,IAAI,yBAAyB,GAAG;IAC7E,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAA;IAC3B,SAAS,CAAC,EAAE,mBAAmB,CAAA;CAClC,CAAA;AACD,MAAM,MAAM,cAAc,CAAC,KAAK,SAAS,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG;IAC/E,SAAS,EAAE,KAAK,CAAA;CACnB,CAAA;AAED,qBAAa,UAAU,CAAC,IAAI,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,YAAY,CAC5F,IAAI,EACJ,gBAAgB,CAAC,KAAK,CAAC,CAC1B;;IACG,SAAS,EAAG,KAAK,CAAA;IACjB,IAAI,IAAI,sEAEP;IAYD,SAAS,CAAC,QAAQ,IAAI,eAAe,EAAE;IAGvC,SAAS,CAAC,IAAI,IAAI,GAAG,CAAC,mBAAmB;IAiBzC,OAAO,KAAK,SAAS,GAepB;IACD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAIxB;IAEF,IAAI,KAAK,wEAER;CACJ"}
@@ -1,9 +1,9 @@
1
- import { Resource_Top, type Resource_Full_Ref } from "@k8ts/instruments";
1
+ import { Resource_Top, type Resource_Ref_Full } from "@k8ts/instruments";
2
2
  import { CDK } from "@k8ts/sample-interfaces";
3
3
  import { gateway } from "../../kinds/gateway";
4
4
  import type { Port } from "../service/service-port";
5
5
  export interface HttpRoute_Props<Ports extends string> {
6
- $gateway: Resource_Full_Ref<gateway.v1.Gateway._>;
6
+ $gateway: Resource_Ref_Full<gateway.v1.Gateway._>;
7
7
  $hostname: string;
8
8
  $backend: Port<Ports>;
9
9
  _filters?: CDK.HttpRouteSpecRulesFilters[];
@@ -26,7 +26,7 @@ export declare class HttpRoute<Name extends string, Ports extends string> extend
26
26
  };
27
27
  };
28
28
  protected __needs__(): {
29
- gateway: Resource_Full_Ref<import("@k8ts/instruments").Kind.Kind<"gateway.networking.k8s.io", "v1", "Gateway">>;
29
+ gateway: Resource_Ref_Full<import("@k8ts/instruments").Kind.Kind<"gateway.networking.k8s.io", "v1", "Gateway">>;
30
30
  service: import("..").Service<Ports, string>;
31
31
  };
32
32
  }
@@ -1,14 +1,10 @@
1
- export * from "./configmap";
1
+ export * from "./config";
2
2
  export * from "./cronjob";
3
3
  export * from "./deployment";
4
- export * from "./external";
5
- export * from "./http-route/http-route";
4
+ export * from "./http-route";
6
5
  export * from "./namespace";
7
6
  export * from "./persistent";
8
7
  export * from "./pod";
9
- export * from "./rbac/cluster-role";
10
- export * from "./rbac/cluster-role-binding";
11
- export * from "./rbac/service-account";
12
- export * from "./secret";
8
+ export * from "./rbac";
13
9
  export * from "./service";
14
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,yBAAyB,CAAA;AACvC,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,OAAO,CAAA;AACrB,cAAc,qBAAqB,CAAA;AACnC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,wBAAwB,CAAA;AACtC,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,OAAO,CAAA;AACrB,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA"}
@@ -14,17 +14,13 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./configmap"), exports);
17
+ __exportStar(require("./config"), exports);
18
18
  __exportStar(require("./cronjob"), exports);
19
19
  __exportStar(require("./deployment"), exports);
20
- __exportStar(require("./external"), exports);
21
- __exportStar(require("./http-route/http-route"), exports);
20
+ __exportStar(require("./http-route"), exports);
22
21
  __exportStar(require("./namespace"), exports);
23
22
  __exportStar(require("./persistent"), exports);
24
23
  __exportStar(require("./pod"), exports);
25
- __exportStar(require("./rbac/cluster-role"), exports);
26
- __exportStar(require("./rbac/cluster-role-binding"), exports);
27
- __exportStar(require("./rbac/service-account"), exports);
28
- __exportStar(require("./secret"), exports);
24
+ __exportStar(require("./rbac"), exports);
29
25
  __exportStar(require("./service"), exports);
30
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,4CAAyB;AACzB,+CAA4B;AAC5B,6CAA0B;AAC1B,0DAAuC;AACvC,8CAA2B;AAC3B,+CAA4B;AAC5B,wCAAqB;AACrB,sDAAmC;AACnC,8DAA2C;AAC3C,yDAAsC;AACtC,2CAAwB;AACxB,4CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,4CAAyB;AACzB,+CAA4B;AAC5B,+CAA4B;AAC5B,8CAA2B;AAC3B,+CAA4B;AAC5B,wCAAqB;AACrB,yCAAsB;AACtB,4CAAyB"}
@@ -1,4 +1,4 @@
1
- import { Resource_Top, ResourcesSpec, type Resource_Full_Ref } from "@k8ts/instruments";
1
+ import { Resource_Top, ResourcesSpec, type Resource_Ref_Full } from "@k8ts/instruments";
2
2
  import { CDK } from "@k8ts/sample-interfaces";
3
3
  import { Prefix$ } from "../../../_type/prefix$";
4
4
  import { Access } from "../access-mode";
@@ -12,7 +12,7 @@ type Pvc_Resources = Prefix$<(typeof pvc_ResourcesSpec)["__INPUT__"]>;
12
12
  export interface Pvc_Props<Mode extends Pv_VolumeMode> extends Pvc_Resources {
13
13
  $accessModes: Access;
14
14
  $mode?: Mode;
15
- $storageClass?: Resource_Full_Ref<typeof StorageClassKind>;
15
+ $storageClass?: Resource_Ref_Full<typeof StorageClassKind>;
16
16
  $bind?: Pv_Ref<Mode>;
17
17
  }
18
18
  export declare class Pvc<Mode extends Pv_VolumeMode, Name extends string = string> extends Resource_Top<Name, Pvc_Props<Mode>> {
@@ -20,7 +20,7 @@ export declare class Pvc<Mode extends Pv_VolumeMode, Name extends string = strin
20
20
  get kind(): import("@k8ts/instruments").Kind.Kind<"", "v1", "PersistentVolumeClaim">;
21
21
  protected __needs__(): {
22
22
  bind: Pv<Mode, string> | undefined;
23
- storageClass: Resource_Full_Ref<import("@k8ts/instruments").Kind.Kind<"storage.k8s.io", "v1", "StorageClass">> | undefined;
23
+ storageClass: Resource_Ref_Full<import("@k8ts/instruments").Kind.Kind<"storage.k8s.io", "v1", "StorageClass">> | undefined;
24
24
  };
25
25
  protected body(): CDK.KubePersistentVolumeClaimProps;
26
26
  get bound(): Pv<Mode> | undefined;
@@ -1,4 +1,4 @@
1
- import { Resource_Core_Ref, Resource_Top, type Resource_Full_Ref, type Unit } from "@k8ts/instruments";
1
+ import { Ref2_Of, Resource_Top, type Resource_Ref_Full, type Unit } from "@k8ts/instruments";
2
2
  import { CDK } from "@k8ts/sample-interfaces";
3
3
  import { v1 } from "../../../kinds/default";
4
4
  import { storage } from "../../../kinds/storage";
@@ -21,7 +21,7 @@ export interface Pv_Backend_Nfs {
21
21
  export type Pv_Backend = Pv_Backend_HostPath | Pv_Backend_Local | Pv_Backend_Nfs;
22
22
  export interface Pv_Props_K8ts<Mode extends Pv_VolumeMode = Pv_VolumeMode> {
23
23
  $accessModes: Access;
24
- $storageClass?: Resource_Full_Ref<storage.v1.StorageClass._>;
24
+ $storageClass?: Resource_Ref_Full<storage.v1.StorageClass._>;
25
25
  $mode?: Mode;
26
26
  reclaimPolicy?: Reclaim;
27
27
  $capacity: Unit.Data;
@@ -30,14 +30,14 @@ export interface Pv_Props_K8ts<Mode extends Pv_VolumeMode = Pv_VolumeMode> {
30
30
  nodeAffinity?: CDK.VolumeNodeAffinity;
31
31
  }
32
32
  export type Reclaim = "Retain" | "Delete" | "Recycle";
33
- export type Pv_Ref<Mode extends Pv_VolumeMode = Pv_VolumeMode> = Resource_Core_Ref<v1.PersistentVolume._> & {
33
+ export type Pv_Ref<Mode extends Pv_VolumeMode = Pv_VolumeMode> = Ref2_Of<v1.PersistentVolume._> & {
34
34
  __MODE__: Mode;
35
35
  };
36
36
  export declare class Pv<Mode extends Pv_VolumeMode = "Filesystem", Name extends string = string> extends Resource_Top<Name, Pv_Props_K8ts<Mode>> {
37
37
  __MODE__: Mode;
38
38
  get kind(): import("@k8ts/instruments").Kind.Kind<"", "v1", "PersistentVolume">;
39
39
  protected __needs__(): {
40
- storageClass: Resource_Full_Ref<import("@k8ts/instruments").Kind.Kind<"storage.k8s.io", "v1", "StorageClass">> | undefined;
40
+ storageClass: Resource_Ref_Full<import("@k8ts/instruments").Kind.Kind<"storage.k8s.io", "v1", "StorageClass">> | undefined;
41
41
  };
42
42
  protected body(): {
43
43
  spec: CDK.PersistentVolumeSpec;
@@ -1 +1 @@
1
- {"version":3,"file":"pv.d.ts","sourceRoot":"","sources":["../../../../src/resources/persistent/volume/pv.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,iBAAiB,EACjB,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,IAAI,EACZ,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAE7C,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAKlD,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,UAAU,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;CACf;AACD,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,OAAO,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACf;AACD,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,KAAK,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACf;AAED,MAAM,MAAM,UAAU,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,cAAc,CAAA;AAChF,MAAM,WAAW,aAAa,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa;IACrE,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IAC5D,KAAK,CAAC,EAAE,IAAI,CAAA;IACZ,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAA;IACpB,QAAQ,CAAC,EAAE,UAAU,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,YAAY,CAAC,EAAE,GAAG,CAAC,kBAAkB,CAAA;CACxC;AACD,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;AACrD,MAAM,MAAM,MAAM,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa,IACzD,iBAAiB,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG;IACvC,QAAQ,EAAE,IAAI,CAAA;CACjB,CAAA;AAEL,qBAAa,EAAE,CACX,IAAI,SAAS,aAAa,GAAG,YAAY,EACzC,IAAI,SAAS,MAAM,GAAG,MAAM,CAC9B,SAAQ,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;IAC7C,QAAQ,EAAG,IAAI,CAAA;IACf,IAAI,IAAI,wEAEP;IAED,SAAS,CAAC,SAAS;;;IAKnB,SAAS,CAAC,IAAI;;;CAqCjB"}
1
+ {"version":3,"file":"pv.d.ts","sourceRoot":"","sources":["../../../../src/resources/persistent/volume/pv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAA;AAC5F,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAE7C,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAKlD,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,UAAU,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;CACf;AACD,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,OAAO,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACf;AACD,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,KAAK,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACf;AAED,MAAM,MAAM,UAAU,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,cAAc,CAAA;AAChF,MAAM,WAAW,aAAa,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa;IACrE,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IAC5D,KAAK,CAAC,EAAE,IAAI,CAAA;IACZ,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAA;IACpB,QAAQ,CAAC,EAAE,UAAU,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,YAAY,CAAC,EAAE,GAAG,CAAC,kBAAkB,CAAA;CACxC;AACD,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;AACrD,MAAM,MAAM,MAAM,CAAC,IAAI,SAAS,aAAa,GAAG,aAAa,IAAI,OAAO,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG;IAC9F,QAAQ,EAAE,IAAI,CAAA;CACjB,CAAA;AAED,qBAAa,EAAE,CACX,IAAI,SAAS,aAAa,GAAG,YAAY,EACzC,IAAI,SAAS,MAAM,GAAG,MAAM,CAC9B,SAAQ,YAAY,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;IAC7C,QAAQ,EAAG,IAAI,CAAA;IACf,IAAI,IAAI,wEAEP;IAED,SAAS,CAAC,SAAS;;;IAKnB,SAAS,CAAC,IAAI;;;CAqCjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"pv.js","sourceRoot":"","sources":["../../../../src/resources/persistent/volume/pv.ts"],"names":[],"mappings":";;;AAAA,mDAK0B;AAC1B,+DAA6C;AAC7C,0CAA0C;AAC1C,oDAA2C;AAC3C,oDAAgD;AAChD,gDAAuC;AAEvC,mDAA8C;AAE9C,MAAM,gBAAgB,GAAG,iBAAO,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;AAkClD,MAAa,EAGX,SAAQ,0BAAuC;IAC7C,QAAQ,CAAO;IACf,IAAI,IAAI;QACJ,OAAO,YAAE,CAAC,gBAAgB,CAAC,CAAC,CAAA;IAChC,CAAC;IAES,SAAS;QACf,OAAO;YACH,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa;SACzC,CAAA;IACL,CAAC;IACS,IAAI;QACV,MAAM,IAAI,GAAG,IAAI,CAAA;QACjB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAA;QAC1B,MAAM,WAAW,GAAG,oBAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;QACnE,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBACxB,MAAM,IAAI,iBAAS,CACf,qBAAqB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,iDAAiD,CACnG,CAAA;YACL,CAAC;QACL,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;YACpD,MAAM,IAAI,iBAAS,CACf,qBAAqB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,8DAA8D,CAChH,CAAA;QACL,CAAC;QACD,IAAI,IAAI,GAA6B;YACjC,WAAW;YACX,gBAAgB,EAAE,OAAO,CAAC,aAAa,EAAE,IAAI,IAAI,UAAU;YAC3D,QAAQ,EAAE,OAAO,CAAC,SAAS;gBACvB,CAAC,CAAC;oBACI,OAAO,EAAE,uBAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC;iBACtD;gBACH,CAAC,CAAC,SAAS;YACf,UAAU,EAAE,OAAO,CAAC,KAAK,IAAI,YAAY;YACzC,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,6BAA6B,EAAE,OAAO,CAAC,aAAa,IAAI,QAAQ;YAChE,YAAY,EAAE,OAAO,CAAC,YAAY;SACrC,CAAA;QACD,IAAI,GAAG;YACH,GAAG,IAAI;YACP,GAAG,IAAA,4BAAY,EAAC,OAAO,CAAC,QAAQ,CAAC;SACpC,CAAA;QACD,OAAO;YACH,IAAI,EAAE,IAAI;SACb,CAAA;IACL,CAAC;CACJ;AAnDD,gBAmDC"}
1
+ {"version":3,"file":"pv.js","sourceRoot":"","sources":["../../../../src/resources/persistent/volume/pv.ts"],"names":[],"mappings":";;;AAAA,mDAA4F;AAC5F,+DAA6C;AAC7C,0CAA0C;AAC1C,oDAA2C;AAC3C,oDAAgD;AAChD,gDAAuC;AAEvC,mDAA8C;AAE9C,MAAM,gBAAgB,GAAG,iBAAO,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;AAiClD,MAAa,EAGX,SAAQ,0BAAuC;IAC7C,QAAQ,CAAO;IACf,IAAI,IAAI;QACJ,OAAO,YAAE,CAAC,gBAAgB,CAAC,CAAC,CAAA;IAChC,CAAC;IAES,SAAS;QACf,OAAO;YACH,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa;SACzC,CAAA;IACL,CAAC;IACS,IAAI;QACV,MAAM,IAAI,GAAG,IAAI,CAAA;QACjB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAA;QAC1B,MAAM,WAAW,GAAG,oBAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;QACnE,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBACxB,MAAM,IAAI,iBAAS,CACf,qBAAqB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,iDAAiD,CACnG,CAAA;YACL,CAAC;QACL,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;YACpD,MAAM,IAAI,iBAAS,CACf,qBAAqB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,8DAA8D,CAChH,CAAA;QACL,CAAC;QACD,IAAI,IAAI,GAA6B;YACjC,WAAW;YACX,gBAAgB,EAAE,OAAO,CAAC,aAAa,EAAE,IAAI,IAAI,UAAU;YAC3D,QAAQ,EAAE,OAAO,CAAC,SAAS;gBACvB,CAAC,CAAC;oBACI,OAAO,EAAE,uBAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC;iBACtD;gBACH,CAAC,CAAC,SAAS;YACf,UAAU,EAAE,OAAO,CAAC,KAAK,IAAI,YAAY;YACzC,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,6BAA6B,EAAE,OAAO,CAAC,aAAa,IAAI,QAAQ;YAChE,YAAY,EAAE,OAAO,CAAC,YAAY;SACrC,CAAA;QACD,IAAI,GAAG;YACH,GAAG,IAAI;YACP,GAAG,IAAA,4BAAY,EAAC,OAAO,CAAC,QAAQ,CAAC;SACpC,CAAA;QACD,OAAO;YACH,IAAI,EAAE,IAAI;SACb,CAAA;IACL,CAAC;CACJ;AAnDD,gBAmDC"}
@@ -1,8 +1,7 @@
1
- import { PortSet, ResourcesSpec, type CmdBuilder, type InputPortSetRecord, type TaggedImage } from "@k8ts/instruments";
1
+ import { PortSet, ResourcesSpec, type CmdBuilder, type InputPortSetRecord, type Ref2_Of, type TaggedImage } from "@k8ts/instruments";
2
2
  import type { CDK } from "@k8ts/sample-interfaces";
3
- import type { Resource_Entity, Resource_Min_Ref, Resource_Top } from "@k8ts/instruments";
4
- import { Resource_Child } from "@k8ts/instruments";
5
- import { type InputEnvMapping } from "../../../env";
3
+ import { Resource_Child, Resource_Entity, Resource_Ref_Min, Resource_Top } from "@k8ts/instruments";
4
+ import type { Env_Leaf } from "../../../env/types";
6
5
  import { v1 } from "../../../kinds/default";
7
6
  import { type Container_Mount } from "./mounts";
8
7
  declare const container_ResourcesSpec: ResourcesSpec<{
@@ -10,19 +9,24 @@ declare const container_ResourcesSpec: ResourcesSpec<{
10
9
  readonly memory: "M" | "G" | "T" | "K" | "Mi" | "Gi" | "Ki";
11
10
  }>;
12
11
  type Container_Resources = (typeof container_ResourcesSpec)["__INPUT__"];
13
- type Container_Mount_Some = Resource_Min_Ref<v1.Pod.Container.DeviceMount._ | v1.Pod.Container.VolumeMount._>;
12
+ type Container_Mount_Some = Resource_Ref_Min<v1.Pod.Container.DeviceMount._ | v1.Pod.Container.VolumeMount._>;
14
13
  export type Container_Mounts = {
15
14
  [key: string]: Container_Mount_Some;
16
15
  };
17
- interface Container_Props_K8ts<Ports extends string = never> {
16
+ export interface Container_Env_From {
17
+ source: Ref2_Of<v1.ConfigMap._> | Ref2_Of<v1.Secret._>;
18
+ prefix?: string;
19
+ optional?: boolean;
20
+ }
21
+ export interface Container_Props<Ports extends string = never, _Env extends Record<string, Env_Leaf> = Record<string, Env_Leaf>> extends Omit<CDK.Container, "name"> {
18
22
  $image: TaggedImage;
19
23
  $ports?: InputPortSetRecord<Ports>;
20
24
  $command?: CmdBuilder;
21
25
  $mounts?: Container_Mounts;
22
- $env?: InputEnvMapping;
26
+ $env?: _Env;
27
+ $envFrom?: Container_Env_From[];
23
28
  $resources?: Container_Resources;
24
29
  }
25
- export type Container_Props<Ports extends string = never> = Container_Props_K8ts<Ports> & Omit<CDK.Container, keyof Container_Props_K8ts | "name">;
26
30
  export declare class Container<Ports extends string = string> extends Resource_Child<Container_Props<Ports>> {
27
31
  readonly subtype: "init" | "main";
28
32
  readonly props: Container_Props<Ports>;
@@ -33,7 +37,7 @@ export declare class Container<Ports extends string = string> extends Resource_C
33
37
  mount: Container_Mount;
34
38
  path: string;
35
39
  }[];
36
- get volumes(): (import("..").Pod_Device | import("..").Pod_Volume<import("..").Pod_Volume_Backend<import("../..").Pv_VolumeMode>>)[];
40
+ get volumes(): (import("..").Pod_Device | import("..").Pod_Volume<import("..").Pod_Volume_Backend>)[];
37
41
  get ports(): PortSet<Ports>;
38
42
  protected __submanifest__(): CDK.Container;
39
43
  constructor(parent: Resource_Entity, name: string, subtype: "init" | "main", props: Container_Props<Ports>);
@@ -1 +1 @@
1
- {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../../src/resources/pod/container/container.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EACP,aAAa,EAEb,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,WAAW,EACnB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAGlD,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAGlD,OAAO,EAAO,KAAK,eAAe,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAA;AAC3C,OAAO,EAA0B,KAAK,eAAe,EAAE,MAAM,UAAU,CAAA;AACvE,QAAA,MAAM,uBAAuB;;;EAG3B,CAAA;AAEF,KAAK,mBAAmB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,WAAW,CAAC,CAAA;AACxE,KAAK,oBAAoB,GAAG,gBAAgB,CACxC,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAClE,CAAA;AACD,MAAM,MAAM,gBAAgB,GAAG;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAA;CACtC,CAAA;AACD,UAAU,oBAAoB,CAAC,KAAK,SAAS,MAAM,GAAG,KAAK;IACvD,MAAM,EAAE,WAAW,CAAA;IACnB,MAAM,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAA;IAClC,QAAQ,CAAC,EAAE,UAAU,CAAA;IACrB,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B,IAAI,CAAC,EAAE,eAAe,CAAA;IACtB,UAAU,CAAC,EAAE,mBAAmB,CAAA;CACnC;AAED,MAAM,MAAM,eAAe,CAAC,KAAK,SAAS,MAAM,GAAG,KAAK,IAAI,oBAAoB,CAAC,KAAK,CAAC,GACnF,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,oBAAoB,GAAG,MAAM,CAAC,CAAA;AAE5D,qBAAa,SAAS,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,cAAc,CACxE,eAAe,CAAC,KAAK,CAAC,CACzB;IA2DO,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;aACf,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC;IA3DnD,SAAS,EAAG,KAAK,CAAA;IACjB,IAAI,IAAI,kHAEP;IAED,SAAS,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,EAAE,GAAG,SAAS,CAAC;IAOtF,IAAI,MAAM;eAIsB,eAAe;cACjB,MAAM;QAKnC;IAED,IAAI,OAAO,0HAKV;IACD,IAAI,KAAK,mBAER;IACD,SAAS,CAAC,eAAe,IAAI,GAAG,CAAC,SAAS;gBAuBtC,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,EACH,OAAO,EAAE,MAAM,GAAG,MAAM,EACf,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC;IAKnD,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,UAAU;CAOrB;AAED,wBAAgB,IAAI,CAAC,KAAK,SAAS,MAAM,EACrC,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC,oBAGhC"}
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../../src/resources/pod/container/container.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,51 @@ class Container extends instruments_2.Resource_Child {
54
54
  (0, doddle_1.seq)((0, adapters_1.toContainerPorts)(instruments_1.PortSet.make($ports)).values())
55
55
  .toArray()
56
56
  .pull();
57
+ const env = (0, env_1.Env)($env);
58
+ for (const [key, value] of env.entries) {
59
+ if (typeof value !== "object") {
60
+ continue;
61
+ }
62
+ if (!value) {
63
+ continue;
64
+ }
65
+ const backend = value.$backend;
66
+ if (backend instanceof instruments_2.Resource_Entity) {
67
+ if (backend.namespace !== self.namespace) {
68
+ throw new Error(`Environment variable reference "${key}" must be in the same namespace as the container "${self}", but was ${backend}"`);
69
+ }
70
+ }
71
+ }
72
+ for (const vol of self.volumes) {
73
+ if (vol.sourceNamespace !== self.namespace) {
74
+ throw new Error(`Volume reference "${vol}" must be in the same namespace as the container "${self}"`);
75
+ }
76
+ }
77
+ const envFroms = (self.props.$envFrom ?? []).map(ef => {
78
+ const source = ef.source;
79
+ if (source.namespace !== self.namespace) {
80
+ throw new Error(`EnvFrom source reference "${source}" must be in the same namespace as the container "${self}"`);
81
+ }
82
+ if (source.is(default_1.v1.Secret._)) {
83
+ return {
84
+ secretRef: {
85
+ optional: ef.optional,
86
+ name: source.name
87
+ }
88
+ };
89
+ }
90
+ else if (source.is(default_1.v1.ConfigMap._)) {
91
+ return {
92
+ configMapRef: {
93
+ optional: ef.optional,
94
+ name: source.name
95
+ }
96
+ };
97
+ }
98
+ else {
99
+ throw new Error(`EnvFrom source reference "${source}" must be a ConfigMap or Secret, but was ${source.kind}`);
100
+ }
101
+ });
57
102
  const container = {
58
103
  ...untaggedProps,
59
104
  name: self.name,
@@ -62,6 +107,7 @@ class Container extends instruments_2.Resource_Child {
62
107
  resources: resourcesObject,
63
108
  command: $command?.toArray(),
64
109
  env: (0, env_1.Env)($env).toEnvVars(),
110
+ envFrom: envFroms,
65
111
  ...self._groupedMounts()
66
112
  };
67
113
  return container;
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../../src/resources/pod/container/container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"container.js","sourceRoot":"","sources":["../../../../src/resources/pod/container/container.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { Kind } from "@k8ts/instruments";
2
2
  import type { CDK } from "@k8ts/sample-interfaces";
3
3
  import type { Pod_Volume } from "../volume";
4
4
  import type { Pod_Device } from "../volume/devices";
5
- type Path_Rooted = `/${string}`;
5
+ export type Path_Rooted = `/${string}`;
6
6
  export type Container_Mount_Path = `${"" | "." | ".."}${Path_Rooted}`;
7
7
  export type Container_Mount = Container_Mount_Volume | Container_Mount_Device;
8
8
  export interface Container_Mount_Props {
@@ -14,7 +14,7 @@ export declare class Container_Mount_Volume {
14
14
  readonly props: Container_Mount_Props;
15
15
  get kind(): Kind.SubKind<"VolumeMount", Kind.SubKind<"Container", Kind.Kind<"", "v1", "Pod">>>;
16
16
  constructor(props: Container_Mount_Props);
17
- get volume(): Pod_Volume<import("../volume").Pod_Volume_Backend<import("../..").Pv_VolumeMode>>;
17
+ get volume(): Pod_Volume<import("../volume").Pod_Volume_Backend>;
18
18
  protected __submanifest__(mountPath: string): CDK.VolumeMount;
19
19
  }
20
20
  export interface Container_Mount_Device_Props {
@@ -27,5 +27,4 @@ export declare class Container_Mount_Device {
27
27
  constructor(props: Container_Mount_Device_Props);
28
28
  protected __submanifest__(devicePath: string): CDK.VolumeDevice;
29
29
  }
30
- export {};
31
30
  //# sourceMappingURL=mounts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mounts.d.ts","sourceRoot":"","sources":["../../../../src/resources/pod/container/mounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,KAAK,WAAW,GAAG,IAAI,MAAM,EAAE,CAAA;AAC/B,MAAM,MAAM,oBAAoB,GAAG,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,GAAG,WAAW,EAAE,CAAA;AAErE,MAAM,MAAM,eAAe,GAAG,sBAAsB,GAAG,sBAAsB,CAAA;AAC7E,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,UAAU,CAAA;CACrB;AACD,qBAAa,sBAAsB;IAKnB,QAAQ,CAAC,KAAK,EAAE,qBAAqB;IAJjD,IAAI,IAAI,uFAEP;gBAEoB,KAAK,EAAE,qBAAqB;IAEjD,IAAI,MAAM,sFAET;IACD,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,WAAW;CAQhE;AAED,MAAM,WAAW,4BAA4B;IACzC,MAAM,EAAE,UAAU,CAAA;CACrB;AAED,qBAAa,sBAAsB;IAOnB,QAAQ,CAAC,KAAK,EAAE,4BAA4B;IANxD,IAAI,IAAI,uFAEP;IACD,IAAI,MAAM,eAET;gBACoB,KAAK,EAAE,4BAA4B;IACxD,SAAS,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAAC,YAAY;CAMlE"}
1
+ {"version":3,"file":"mounts.d.ts","sourceRoot":"","sources":["../../../../src/resources/pod/container/mounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,MAAM,MAAM,WAAW,GAAG,IAAI,MAAM,EAAE,CAAA;AACtC,MAAM,MAAM,oBAAoB,GAAG,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,GAAG,WAAW,EAAE,CAAA;AAErE,MAAM,MAAM,eAAe,GAAG,sBAAsB,GAAG,sBAAsB,CAAA;AAC7E,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,UAAU,CAAA;CACrB;AACD,qBAAa,sBAAsB;IAKnB,QAAQ,CAAC,KAAK,EAAE,qBAAqB;IAJjD,IAAI,IAAI,uFAEP;gBAEoB,KAAK,EAAE,qBAAqB;IAEjD,IAAI,MAAM,uDAET;IACD,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,GAAG,CAAC,WAAW;CAQhE;AAED,MAAM,WAAW,4BAA4B;IACzC,MAAM,EAAE,UAAU,CAAA;CACrB;AAED,qBAAa,sBAAsB;IAOnB,QAAQ,CAAC,KAAK,EAAE,4BAA4B;IANxD,IAAI,IAAI,uFAEP;IACD,IAAI,MAAM,eAET;gBACoB,KAAK,EAAE,4BAA4B;IACxD,SAAS,CAAC,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAAC,YAAY;CAMlE"}
@@ -1,12 +1,13 @@
1
- import { Resource_Child, Resource_Min_Ref } from "@k8ts/instruments";
1
+ import { Resource_Child, Resource_Ref_Min, type Ref2_Of, type Resource_Ref_Keys_Of } from "@k8ts/instruments";
2
2
  import { Meta } from "@k8ts/metadata";
3
3
  import { CDK } from "@k8ts/sample-interfaces";
4
+ import type { Env_Value } from "../../env/types";
4
5
  import { v1 } from "../../kinds/default";
5
6
  import { Container, type Container_Props } from "./container";
6
7
  import { Pod_Device, type Pod_Device_Backend } from "./volume/devices";
7
- import { Pod_Volume, type Pod_Volume_Backend } from "./volume/volumes";
8
+ import { Pod_Volume, type Pod_Volume_Backend, type Pod_Volume_Backend_ConfigMap, type Pod_Volume_Backend_Pvc, type Pod_Volume_Backend_Secret } from "./volume/volumes";
8
9
  export type Pod_Props_Original = Omit<CDK.PodSpec, "containers" | "initContainers" | "volumes">;
9
- type Container_Ref<Ports extends string> = Resource_Min_Ref<v1.Pod.Container._> & {
10
+ type Container_Ref<Ports extends string> = Resource_Ref_Min<v1.Pod.Container._> & {
10
11
  __PORTS__: Ports;
11
12
  };
12
13
  export type Pod_Container_Producer<Ports extends string> = (scope: PodScope) => Iterable<Container_Ref<Ports>>;
@@ -21,9 +22,9 @@ export declare class Pod_Template<Ports extends string = string> extends Resourc
21
22
  mount: import("./container/mounts").Container_Mount;
22
23
  path: string;
23
24
  }>;
24
- readonly volumes: import("doddle").Seq<Pod_Device | Pod_Volume<Pod_Volume_Backend<import("..").Pv_VolumeMode>>>;
25
+ readonly volumes: import("doddle").Seq<Pod_Device | Pod_Volume<Pod_Volume_Backend>>;
25
26
  readonly ports: import("doddle").Doddle<import("@k8ts/instruments").PortSet<Ports>>;
26
- protected __kids__(): (Pod_Device | Pod_Volume<Pod_Volume_Backend<import("..").Pv_VolumeMode>> | Container<Ports>)[];
27
+ protected __kids__(): (Pod_Device | Pod_Volume<Pod_Volume_Backend> | Container<Ports>)[];
27
28
  protected __metadata__(): {
28
29
  name: string;
29
30
  labels: Record<string, any>;
@@ -35,9 +36,16 @@ export declare class Pod_Template<Ports extends string = string> extends Resourc
35
36
  export declare class PodScope {
36
37
  private readonly _parent;
37
38
  constructor(_parent: Pod_Template);
38
- Container<Ports extends string>(name: string, options: Container_Props<Ports>): Container<Ports>;
39
+ Container<Ports extends string, Env extends {
40
+ [key in keyof Env]: {
41
+ $backend: Ref2_Of;
42
+ key: Env[key] extends object ? Resource_Ref_Keys_Of<Env[key]["$backend"], string> : never;
43
+ } | Env_Value;
44
+ }>(name: string, options: Container_Props<Ports, Env>): Container<Ports>;
39
45
  InitContainer(name: string, options: Container_Props<never>): Container<never>;
40
- Volume(name: string, options: Pod_Volume_Backend): Pod_Volume<Pod_Volume_Backend<import("..").Pv_VolumeMode>>;
46
+ Volume<Actual extends Ref2_Of<v1.ConfigMap._>>(name: string, options: Pod_Volume_Backend_ConfigMap<Actual>): Pod_Volume;
47
+ Volume<Actual extends Ref2_Of<v1.Secret._>>(name: string, options: Pod_Volume_Backend_Secret<Actual>): Pod_Volume;
48
+ Volume<Actual extends Ref2_Of<v1.PersistentVolumeClaim._>>(name: string, options: Pod_Volume_Backend_Pvc<Actual>): Pod_Volume;
41
49
  Device(name: string, options: Pod_Device_Backend): Pod_Device;
42
50
  }
43
51
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"pod-template.d.ts","sourceRoot":"","sources":["../../../src/resources/pod/pod-template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAG7C,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,EAAE,UAAU,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACtE,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,GAAG,gBAAgB,GAAG,SAAS,CAAC,CAAA;AAC/F,KAAK,aAAa,CAAC,KAAK,SAAS,MAAM,IAAI,gBAAgB,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG;IAC9E,SAAS,EAAE,KAAK,CAAA;CACnB,CAAA;AACD,MAAM,MAAM,sBAAsB,CAAC,KAAK,SAAS,MAAM,IAAI,CACvD,KAAK,EAAE,QAAQ,KACd,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;AAEnC,MAAM,WAAW,SAAS,CAAC,KAAK,SAAS,MAAM,CAAE,SAAQ,kBAAkB;IACvE,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,CAAA;IACjB,IAAI,EAAE,sBAAsB,CAAC,KAAK,CAAC,CAAA;CACtC;AAED,qBAAa,YAAY,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,CAAE,SAAQ,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC7F,IAAI,IAAI,mEAEP;IACD,QAAQ,CAAC,UAAU,yCAIP;IACZ,QAAQ,CAAC,MAAM;;;OAA8D;IAC7E,QAAQ,CAAC,OAAO,gGAA8D;IAC9E,QAAQ,CAAC,KAAK,sEAA4E;IAE1F,SAAS,CAAC,QAAQ;IAGlB,SAAS,CAAC,YAAY;;;;;IAOtB,QAAQ,CAAC,IAAI,YAA0D;IAEvE,SAAS,CAAC,eAAe,IAAI,GAAG,CAAC,eAAe;CA+BnD;AAED,qBAAa,QAAQ;IACL,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY;IAClD,SAAS,CAAC,KAAK,SAAS,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC;IAG7E,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC;IAG3D,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB;IAGhD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB;CAGnD"}
1
+ {"version":3,"file":"pod-template.d.ts","sourceRoot":"","sources":["../../../src/resources/pod/pod-template.ts"],"names":[],"mappings":"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"}
@@ -76,7 +76,17 @@ class PodScope {
76
76
  return new container_1.Container(this._parent, name, "init", options);
77
77
  }
78
78
  Volume(name, options) {
79
- return volumes_1.Pod_Volume.make(this._parent, name, options);
79
+ const backend = options.$backend;
80
+ if (backend.is(default_1.v1.ConfigMap._)) {
81
+ return new volumes_1.Pod_Volume_ConfigMap(this._parent, name, options);
82
+ }
83
+ else if (backend.is(default_1.v1.Secret._)) {
84
+ return new volumes_1.Pod_Volume_Secret(this._parent, name, options);
85
+ }
86
+ else if (backend.is(default_1.v1.PersistentVolumeClaim._)) {
87
+ return new volumes_1.Pod_Volume_Pvc(this._parent, name, options);
88
+ }
89
+ throw new Error(`Unsupported volume backend kind: ${backend.kind}`);
80
90
  }
81
91
  Device(name, options) {
82
92
  return new devices_1.Pod_Device(this._parent, name, options);
@@ -1 +1 @@
1
- {"version":3,"file":"pod-template.js","sourceRoot":"","sources":["../../../src/resources/pod/pod-template.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pod-template.js","sourceRoot":"","sources":["../../../src/resources/pod/pod-template.ts"],"names":[],"mappings":"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"}