k8ts 0.9.1 → 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.
- package/dist/common-world.d.ts +12 -0
- package/dist/common-world.d.ts.map +1 -0
- package/dist/{default-world.js → common-world.js} +11 -6
- package/dist/common-world.js.map +1 -0
- package/dist/env/env.d.ts +10 -12
- package/dist/env/env.d.ts.map +1 -1
- package/dist/env/env.js +9 -34
- package/dist/env/env.js.map +1 -1
- package/dist/env/index.d.ts +1 -1
- package/dist/env/index.d.ts.map +1 -1
- package/dist/env/types.d.ts +5 -13
- package/dist/env/types.d.ts.map +1 -1
- package/dist/env/types.js +0 -11
- package/dist/env/types.js.map +1 -1
- package/dist/index.d.ts +1 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -4
- package/dist/index.js.map +1 -1
- package/dist/origins/file/file.d.ts +3 -3
- package/dist/origins/file/file.d.ts.map +1 -1
- package/dist/origins/file/file.js +1 -1
- package/dist/origins/file/file.js.map +1 -1
- package/dist/origins/file/modifier.js +1 -1
- package/dist/origins/file/modifier.js.map +1 -1
- package/dist/origins/file/section.d.ts +4 -4
- package/dist/origins/file/section.d.ts.map +1 -1
- package/dist/origins/file/section.js +1 -1
- package/dist/origins/file/section.js.map +1 -1
- package/dist/origins/index.d.ts +0 -1
- package/dist/origins/index.d.ts.map +1 -1
- package/dist/origins/index.js +0 -1
- package/dist/origins/index.js.map +1 -1
- package/dist/origins/world.d.ts +2 -5
- package/dist/origins/world.d.ts.map +1 -1
- package/dist/origins/world.js +4 -10
- package/dist/origins/world.js.map +1 -1
- package/dist/resources/config/config-keys-of.d.ts +2 -0
- package/dist/resources/config/config-keys-of.d.ts.map +1 -0
- package/dist/resources/config/config-keys-of.js +3 -0
- package/dist/resources/config/config-keys-of.js.map +1 -0
- package/dist/resources/config/configmap.d.ts +11 -0
- package/dist/resources/config/configmap.d.ts.map +1 -0
- package/dist/resources/config/configmap.js +20 -0
- package/dist/resources/config/configmap.js.map +1 -0
- package/dist/resources/config/index.d.ts +4 -0
- package/dist/resources/config/index.d.ts.map +1 -0
- package/dist/resources/{configmap → config}/index.js +2 -0
- package/dist/resources/config/index.js.map +1 -0
- package/dist/resources/config/key-ref.d.ts +7 -0
- package/dist/resources/config/key-ref.d.ts.map +1 -0
- package/dist/resources/config/key-ref.js +13 -0
- package/dist/resources/config/key-ref.js.map +1 -0
- package/dist/resources/config/resolver.d.ts +10 -0
- package/dist/resources/config/resolver.d.ts.map +1 -0
- package/dist/resources/config/resolver.js +31 -0
- package/dist/resources/config/resolver.js.map +1 -0
- package/dist/resources/config/secret.d.ts +24 -0
- package/dist/resources/config/secret.d.ts.map +1 -0
- package/dist/resources/config/secret.js +24 -0
- package/dist/resources/config/secret.js.map +1 -0
- package/dist/resources/deployment/deployment.d.ts +2 -2
- package/dist/resources/deployment/deployment.d.ts.map +1 -1
- package/dist/resources/http-route/http-route.d.ts +3 -3
- package/dist/resources/index.d.ts +3 -7
- package/dist/resources/index.d.ts.map +1 -1
- package/dist/resources/index.js +3 -7
- package/dist/resources/index.js.map +1 -1
- package/dist/resources/persistent/claim/pvc.d.ts +3 -3
- package/dist/resources/persistent/volume/pv.d.ts +4 -4
- package/dist/resources/persistent/volume/pv.d.ts.map +1 -1
- package/dist/resources/persistent/volume/pv.js.map +1 -1
- package/dist/resources/pod/container/container.d.ts +13 -9
- package/dist/resources/pod/container/container.d.ts.map +1 -1
- package/dist/resources/pod/container/container.js +46 -0
- package/dist/resources/pod/container/container.js.map +1 -1
- package/dist/resources/pod/container/mounts.d.ts +2 -3
- package/dist/resources/pod/container/mounts.d.ts.map +1 -1
- package/dist/resources/pod/pod-template.d.ts +15 -7
- package/dist/resources/pod/pod-template.d.ts.map +1 -1
- package/dist/resources/pod/pod-template.js +11 -1
- package/dist/resources/pod/pod-template.js.map +1 -1
- package/dist/resources/pod/volume/devices.d.ts +1 -0
- package/dist/resources/pod/volume/devices.d.ts.map +1 -1
- package/dist/resources/pod/volume/devices.js +4 -0
- package/dist/resources/pod/volume/devices.js.map +1 -1
- package/dist/resources/pod/volume/volumes.d.ts +31 -14
- package/dist/resources/pod/volume/volumes.d.ts.map +1 -1
- package/dist/resources/pod/volume/volumes.js +29 -24
- package/dist/resources/pod/volume/volumes.js.map +1 -1
- package/dist/resources/rbac/cluster-role.d.ts +1 -1
- package/dist/resources/rbac/cluster-role.d.ts.map +1 -1
- package/dist/resources/rbac/cluster-role.js +1 -1
- package/dist/resources/rbac/cluster-role.js.map +1 -1
- package/dist/resources/rbac/index.d.ts +4 -0
- package/dist/resources/rbac/index.d.ts.map +1 -0
- package/dist/resources/{secret → rbac}/index.js +3 -1
- package/dist/resources/rbac/index.js.map +1 -0
- package/dist/resources/service/service.d.ts +2 -2
- package/dist/resources/service/service.d.ts.map +1 -1
- package/dist/resources/service/service.js.map +1 -1
- package/dist/runner/exporter/assembler.d.ts.map +1 -1
- package/dist/runner/exporter/assembler.js +1 -0
- package/dist/runner/exporter/assembler.js.map +1 -1
- package/dist/runner/exporter/loader.d.ts.map +1 -1
- package/dist/runner/exporter/loader.js +2 -0
- package/dist/runner/exporter/loader.js.map +1 -1
- package/dist/runner/exporter/manifester.d.ts.map +1 -1
- package/dist/runner/exporter/manifester.js +0 -2
- package/dist/runner/exporter/manifester.js.map +1 -1
- package/package.json +9 -10
- package/src/{default-world.ts → common-world.ts} +14 -7
- package/src/env/env.ts +30 -57
- package/src/env/index.ts +1 -1
- package/src/env/types.ts +5 -22
- package/src/index.ts +1 -2
- package/src/origins/file/file.ts +4 -7
- package/src/origins/file/modifier.ts +1 -1
- package/src/origins/file/section.ts +5 -12
- package/src/origins/index.ts +0 -1
- package/src/origins/world.ts +4 -12
- package/src/resources/config/config-keys-of.ts +0 -0
- package/src/resources/config/configmap.ts +24 -0
- package/src/resources/config/index.ts +3 -0
- package/src/resources/config/key-ref.ts +8 -0
- package/src/resources/config/resolver.ts +29 -0
- package/src/resources/config/secret.ts +43 -0
- package/src/resources/deployment/deployment.ts +2 -2
- package/src/resources/http-route/http-route.ts +2 -2
- package/src/resources/index.ts +3 -7
- package/src/resources/persistent/claim/pvc.ts +2 -2
- package/src/resources/persistent/volume/pv.ts +5 -11
- package/src/resources/pod/container/container.ts +70 -9
- package/src/resources/pod/container/mounts.ts +1 -1
- package/src/resources/pod/pod-template.ts +54 -6
- package/src/resources/pod/volume/devices.ts +4 -1
- package/src/resources/pod/volume/volumes.ts +66 -53
- package/src/resources/rbac/cluster-role.ts +1 -1
- package/src/resources/rbac/index.ts +3 -0
- package/src/resources/service/service.ts +2 -2
- package/src/runner/exporter/assembler.ts +1 -0
- package/src/runner/exporter/loader.ts +3 -0
- package/src/runner/exporter/manifester.ts +0 -3
- package/dist/default-world.d.ts +0 -5
- package/dist/default-world.d.ts.map +0 -1
- package/dist/default-world.js.map +0 -1
- package/dist/origins/external.d.ts +0 -8
- package/dist/origins/external.d.ts.map +0 -1
- package/dist/origins/external.js +0 -19
- package/dist/origins/external.js.map +0 -1
- package/dist/resources/configmap/configmap.d.ts +0 -12
- package/dist/resources/configmap/configmap.d.ts.map +0 -1
- package/dist/resources/configmap/configmap.js +0 -27
- package/dist/resources/configmap/configmap.js.map +0 -1
- package/dist/resources/configmap/index.d.ts +0 -2
- package/dist/resources/configmap/index.d.ts.map +0 -1
- package/dist/resources/configmap/index.js.map +0 -1
- package/dist/resources/external/index.d.ts +0 -19
- package/dist/resources/external/index.d.ts.map +0 -1
- package/dist/resources/external/index.js +0 -44
- package/dist/resources/external/index.js.map +0 -1
- package/dist/resources/secret/index.d.ts +0 -2
- package/dist/resources/secret/index.d.ts.map +0 -1
- package/dist/resources/secret/index.js.map +0 -1
- package/dist/resources/secret/secret.d.ts +0 -13
- package/dist/resources/secret/secret.d.ts.map +0 -1
- package/dist/resources/secret/secret.js +0 -18
- package/dist/resources/secret/secret.js.map +0 -1
- package/src/origins/external.ts +0 -14
- package/src/resources/configmap/configmap.ts +0 -36
- package/src/resources/configmap/index.ts +0 -1
- package/src/resources/external/index.ts +0 -49
- package/src/resources/secret/index.ts +0 -1
- 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 {
|
|
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> =
|
|
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,
|
|
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
|
|
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:
|
|
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:
|
|
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 "./
|
|
1
|
+
export * from "./config";
|
|
2
2
|
export * from "./cronjob";
|
|
3
3
|
export * from "./deployment";
|
|
4
|
-
export * from "./
|
|
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
|
|
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,
|
|
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"}
|
package/dist/resources/index.js
CHANGED
|
@@ -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("./
|
|
17
|
+
__exportStar(require("./config"), exports);
|
|
18
18
|
__exportStar(require("./cronjob"), exports);
|
|
19
19
|
__exportStar(require("./deployment"), exports);
|
|
20
|
-
__exportStar(require("./
|
|
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
|
|
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,
|
|
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
|
|
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?:
|
|
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:
|
|
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 {
|
|
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?:
|
|
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> =
|
|
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:
|
|
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,
|
|
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,
|
|
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
|
|
4
|
-
import {
|
|
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 =
|
|
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
|
|
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?:
|
|
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
|
|
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,
|
|
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":";;;
|
|
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
|
|
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,
|
|
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,
|
|
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> =
|
|
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
|
|
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
|
|
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
|
|
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:
|
|
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,
|
|
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
|
-
|
|
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":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"pod-template.js","sourceRoot":"","sources":["../../../src/resources/pod/pod-template.ts"],"names":[],"mappings":"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"}
|