@jttc/projen-project-types 1.0.0-beta.2 → 1.0.0-beta.4

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.
@@ -0,0 +1,11 @@
1
+ import { Component, Project } from 'projen';
2
+ import { K8sVersion, Cdk8sBaseOptions } from './interfaces/Cdk8s';
3
+ export declare class Cdk8sComponent extends Component {
4
+ readonly appPath: string;
5
+ readonly appFile: string;
6
+ readonly imports: string[];
7
+ readonly outputPath: string;
8
+ readonly k8sVersion: K8sVersion;
9
+ constructor(project: Project, id: string, props?: Cdk8sBaseOptions);
10
+ postSynthesize(): void;
11
+ }
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.Cdk8sComponent = void 0;
5
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
+ const child_process_1 = require("child_process");
7
+ const path = require("path");
8
+ const projen_1 = require("projen");
9
+ const Cdk8s_1 = require("./interfaces/Cdk8s");
10
+ class Cdk8sComponent extends projen_1.Component {
11
+ constructor(project, id, props) {
12
+ super(project, id);
13
+ this.appPath = 'src';
14
+ this.appFile = 'main.ts';
15
+ this.outputPath = 'kubernetes';
16
+ this.k8sVersion = Cdk8s_1.K8sVersion.V1_30;
17
+ if (props && props.k8sVersion) {
18
+ this.k8sVersion = props.k8sVersion;
19
+ }
20
+ this.imports = [`k8s@${this.k8sVersion}`];
21
+ if (props && props.appPath) {
22
+ this.appPath = props.appPath;
23
+ }
24
+ if (props && props.appFile) {
25
+ this.appFile = props.appFile;
26
+ }
27
+ if (props && props.outputPath) {
28
+ this.outputPath = props.outputPath;
29
+ }
30
+ if (props && props.imports) {
31
+ props.imports.forEach((importPath) => {
32
+ this.imports.push(importPath);
33
+ });
34
+ }
35
+ const cdk8sPlusVersion = `cdk8s-plus-${this.k8sVersion.split('.')[1]}`;
36
+ // Note: constructs dependency is now managed by the BaseProject dependency override system
37
+ // to avoid conflicts between different project types
38
+ project.deps.addDependency('cdk8s', projen_1.DependencyType.RUNTIME);
39
+ project.deps.addDependency('cdk8s-cli', projen_1.DependencyType.BUILD);
40
+ project.deps.addDependency(cdk8sPlusVersion, projen_1.DependencyType.RUNTIME);
41
+ project.addTask('cdk8s', {
42
+ description: 'CDK8s command',
43
+ steps: [
44
+ {
45
+ exec: 'cdk8s',
46
+ say: 'cdk for kubernetes',
47
+ receiveArgs: true,
48
+ },
49
+ ],
50
+ });
51
+ project.addTask('cdk8s:import', {
52
+ description: 'Import cdk8s charts',
53
+ steps: [
54
+ {
55
+ exec: `cdk8s import --output ${this.appPath}/imports`,
56
+ say: 'Importing kubernetes files',
57
+ receiveArgs: true,
58
+ },
59
+ ],
60
+ });
61
+ project.addTask('cdk8s:synth', {
62
+ description: 'Synthesized cdk8s constructs',
63
+ steps: [
64
+ {
65
+ exec: `cdk8s synth --output ${this.outputPath}`,
66
+ say: 'Synthesizing kubernetes files',
67
+ receiveArgs: true,
68
+ },
69
+ ],
70
+ });
71
+ new projen_1.YamlFile(project, 'cdk8s.yaml', {
72
+ obj: {
73
+ language: 'typescript',
74
+ app: `npx ts-node ${this.appPath}/${this.appFile}`,
75
+ imports: this.imports,
76
+ },
77
+ });
78
+ const pjid = project.root.initProject?.type.pjid;
79
+ new projen_1.SampleFile(project, `${this.appPath}/${this.appFile}`, {
80
+ sourcePath: path.join(__dirname, 'main.ts.template'),
81
+ });
82
+ if (pjid === 'cdk8s-library' || pjid === 'cdk8s-app') {
83
+ new projen_1.SampleFile(project, 'test/main.test.ts', {
84
+ sourcePath: path.join(__dirname, 'main.test.ts.template'),
85
+ });
86
+ }
87
+ }
88
+ postSynthesize() {
89
+ const cdk8sImportTask = this.project.tasks.tryFind('cdk8s:import');
90
+ if (cdk8sImportTask) {
91
+ (0, child_process_1.execSync)(this.project.runTaskCommand(cdk8sImportTask));
92
+ }
93
+ }
94
+ }
95
+ exports.Cdk8sComponent = Cdk8sComponent;
96
+ _a = JSII_RTTI_SYMBOL_1;
97
+ Cdk8sComponent[_a] = { fqn: "@jttc/projen-project-types.Cdk8sComponent", version: "1.0.0-beta.4" };
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrOHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9jZGs4cy9jZGs4cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGlEQUF5QztBQUN6Qyw2QkFBNkI7QUFDN0IsbUNBTWdCO0FBRWhCLDhDQUFrRTtBQUVsRSxNQUFhLGNBQWUsU0FBUSxrQkFBUztJQU8zQyxZQUFZLE9BQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQ2hFLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFQWixZQUFPLEdBQVcsS0FBSyxDQUFDO1FBQ3hCLFlBQU8sR0FBVyxTQUFTLENBQUM7UUFFNUIsZUFBVSxHQUFXLFlBQVksQ0FBQztRQUNsQyxlQUFVLEdBQWUsa0JBQVUsQ0FBQyxLQUFLLENBQUM7UUFLakQsSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQztRQUNyQyxDQUFDO1FBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFFMUMsSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixDQUFDO1FBRUQsSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUMvQixDQUFDO1FBRUQsSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQztRQUNyQyxDQUFDO1FBRUQsSUFBSSxLQUFLLElBQUksS0FBSyxD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QUFDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7UUFDekQsQ0FBQztJQUNILENBQUM7O0FBckdILHdDQXNHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSAnY2hpbGRfcHJvY2Vzcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBEZXBlbmRlbmN5VHlwZSxcbiAgUHJvamVjdCxcbiAgU2FtcGxlRmlsZSxcbiAgWWFtbEZpbGUsXG59IGZyb20gJ3Byb2plbic7XG5cbmltcG9ydCB7IEs4c1ZlcnNpb24sIENkazhzQmFzZU9wdGlvbnMgfSBmcm9tICcuL2ludGVyZmFjZXMvQ2RrOHMnO1xuXG5leHBvcnQgY2xhc3MgQ2RrOHNDb21wb25lbnQgZXh0ZW5kcyBDb21wb25lbnQge1xuICByZWFkb25seSBhcHBQYXRoOiBzdHJpbmcgPSAnc3JjJztcbiAgcmVhZG9ubHkgYXBwRmlsZTogc3RyaW5nID0gJ21haW4udHMnO1xuICByZWFkb25seSBpbXBvcnRzOiBzdHJpbmdbXTtcbiAgcmVhZG9ubHkgb3V0cHV0UGF0aDogc3RyaW5nID0gJ2t1YmVybmV0ZXMnO1xuICByZWFkb25seSBrOHNWZXJzaW9uOiBLOHNWZXJzaW9uID0gSzhzVmVyc2lvbi5WMV8zMDtcblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBpZDogc3RyaW5nLCBwcm9wcz86IENkazhzQmFzZU9wdGlvbnMpIHtcbiAgICBzdXBlcihwcm9qZWN0LCBpZCk7XG5cbiAgICBpZiAocHJvcHMgJiYgcHJvcHMuazhzVmVyc2lvbikge1xuICAgICAgdGhpcy5rOHNWZXJzaW9uID0gcHJvcHMuazhzVmVyc2lvbjtcbiAgICB9XG5cbiAgICB0aGlzLmltcG9ydHMgPSBbYGs4c0Ake3RoaXMuazhzVmVyc2lvbn1gXTtcblxuICAgIGlmIChwcm9wcyAmJiBwcm9wcy5hcHBQYXRoKSB7XG4gICAgICB0aGlzLmFwcFBhdGggPSBwcm9wcy5hcHBQYXRoO1xuICAgIH1cblxuICAgIGlmIChwcm9wcyAmJiBwcm9wcy5hcHBGaWxlKSB7XG4gICAgICB0aGlzLmFwcEZpbGUgPSBwcm9wcy5hcHBGaWxlO1xuICAgIH1cblxuICAgIGlmIChwcm9wcyAmJiBwcm9wcy5vdXRwdXRQYXRoKSB7XG4gICAgICB0aGlzLm91dHB1dFBhdGggPSBwcm9wcy5vdXRwdXRQYXRoO1xuICAgIH1cblxuICAgIGlmIChwcm9wcyAmJiBwcm9wcy5pbXBvcnRzKSB7XG4gICAgICBwcm9wcy5pbXBvcnRzLmZvckVhY2goKGltcG9ydFBhdGgpID0+IHtcbiAgICAgICAgdGhpcy5pbXBvcnRzLnB1c2goaW1wb3J0UGF0aCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCBjZGs4c1BsdXNWZXJzaW9uID0gYGNkazhzLXBsdXMtJHt0aGlzLms4c1ZlcnNpb24uc3BsaXQoJy4nKVsxXX1gO1xuXG4gICAgLy8gTm90ZTogY29uc3RydWN0cyBkZXBlbmRlbmN5IGlzIG5vdyBtYW5hZ2VkIGJ5IHRoZSBCYXNlUHJvamVjdCBkZXBlbmRlbmN5IG92ZXJyaWRlIHN5c3RlbVxuICAgIC8vIHRvIGF2b2lkIGNvbmZsaWN0cyBiZXR3ZWVuIGRpZmZlcmVudCBwcm9qZWN0IHR5cGVzXG4gICAgcHJvamVjdC5kZXBzLmFkZERlcGVuZGVuY3koJ2NkazhzJywgRGVwZW5kZW5jeVR5cGUuUlVOVElNRSk7XG4gICAgcHJvamVjdC5kZXBzLmFkZERlcGVuZGVuY3koJ2NkazhzLWNsaScsIERlcGVuZGVuY3lUeXBlLkJVSUxEKTtcbiAgICBwcm9qZWN0LmRlcHMuYWRkRGVwZW5kZW5jeShjZGs4c1BsdXNWZXJzaW9uLCBEZXBlbmRlbmN5VHlwZS5SVU5USU1FKTtcblxuICAgIHByb2plY3QuYWRkVGFzaygnY2RrOHMnLCB7XG4gICAgICBkZXNjcmlwdGlvbjogJ0NESzhzIGNvbW1hbmQnLFxuICAgICAgc3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGV4ZWM6ICdjZGs4cycsXG4gICAgICAgICAgc2F5OiAnY2RrIGZvciBrdWJlcm5ldGVzJyxcbiAgICAgICAgICByZWNlaXZlQXJnczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICBwcm9qZWN0LmFkZFRhc2soJ2NkazhzOmltcG9ydCcsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnSW1wb3J0IGNkazhzIGNoYXJ0cycsXG4gICAgICBzdGVwczogW1xuICAgICAgICB7XG4gICAgICAgICAgZXhlYzogYGNkazhzIGltcG9ydCAtLW91dHB1dCAke3RoaXMuYXBwUGF0aH0vaW1wb3J0c2AsXG4gICAgICAgICAgc2F5OiAnSW1wb3J0aW5nIGt1YmVybmV0ZXMgZmlsZXMnLFxuICAgICAgICAgIHJlY2VpdmVBcmdzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KTtcblxuICAgIHByb2plY3QuYWRkVGFzaygnY2RrOHM6c3ludGgnLCB7XG4gICAgICBkZXNjcmlwdGlvbjogJ1N5bnRoZXNpemVkIGNkazhzIGNvbnN0cnVjdHMnLFxuICAgICAgc3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGV4ZWM6IGBjZGs4cyBzeW50aCAtLW91dHB1dCAke3RoaXMub3V0cHV0UGF0aH1gLFxuICAgICAgICAgIHNheTogJ1N5bnRoZXNpemluZyBrdWJlcm5ldGVzIGZpbGVzJyxcbiAgICAgICAgICByZWNlaXZlQXJnczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICBuZXcgWWFtbEZpbGUocHJvamVjdCwgJ2NkazhzLnlhbWwnLCB7XG4gICAgICBvYmo6IHtcbiAgICAgICAgbGFuZ3VhZ2U6ICd0eXBlc2NyaXB0JyxcbiAgICAgICAgYXBwOiBgbnB4IHRzLW5vZGUgJHt0aGlzLmFwcFBhdGh9LyR7dGhpcy5hcHBGaWxlfWAsXG4gICAgICAgIGltcG9ydHM6IHRoaXMuaW1wb3J0cyxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBwamlkID0gcHJvamVjdC5yb290LmluaXRQcm9qZWN0Py50eXBlLnBqaWQ7XG5cbiAgICBuZXcgU2FtcGxlRmlsZShwcm9qZWN0LCBgJHt0aGlzLmFwcFBhdGh9LyR7dGhpcy5hcHBGaWxlfWAsIHtcbiAgICAgIHNvdXJjZVBhdGg6IHBhdGguam9pbihfX2Rpcm5hbWUsICdtYWluLnRzLnRlbXBsYXRlJyksXG4gICAgfSk7XG5cbiAgICBpZiAocGppZCA9PT0gJ2NkazhzLWxpYnJhcnknIHx8IHBqaWQgPT09ICdjZGs4cy1hcHAnKSB7XG4gICAgICBuZXcgU2FtcGxlRmlsZShwcm9qZWN0LCAndGVzdC9tYWluLnRlc3QudHMnLCB7XG4gICAgICAgIHNvdXJjZVBhdGg6IHBhdGguam9pbihfX2Rpcm5hbWUsICdtYWluLnRlc3QudHMudGVtcGxhdGUnKSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHBvc3RTeW50aGVzaXplKCk6IHZvaWQge1xuICAgIGNvbnN0IGNkazhzSW1wb3J0VGFzayA9IHRoaXMucHJvamVjdC50YXNrcy50cnlGaW5kKCdjZGs4czppbXBvcnQnKTtcbiAgICBpZiAoY2RrOHNJbXBvcnRUYXNrKSB7XG4gICAgICBleGVjU3luYyh0aGlzLnByb2plY3QucnVuVGFza0NvbW1hbmQoY2RrOHNJbXBvcnRUYXNrKSk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './cdk8s';
2
+ export * from './interfaces/Cdk8s';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./cdk8s"), exports);
18
+ __exportStar(require("./interfaces/Cdk8s"), exports);
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9jZGs4cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMENBQXdCO0FBQ3hCLHFEQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2RrOHMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzL0NkazhzJztcbiJdfQ==
@@ -0,0 +1,39 @@
1
+ import { AwsCdkConstructLibraryOptions, AwsCdkTypeScriptAppOptions } from 'projen/lib/awscdk';
2
+ export declare enum K8sVersion {
3
+ V1_29 = "1.29.0",
4
+ V1_30 = "1.30.0",
5
+ V1_31 = "1.31.0",
6
+ V1_32 = "1.32.0",
7
+ V1_33 = "1.33.0"
8
+ }
9
+ export interface Cdk8sBaseOptions {
10
+ /**
11
+ * path of main file to execute the typescript transpilation
12
+ *
13
+ * @default "src/k8s"
14
+ */
15
+ readonly appPath?: string;
16
+ /**
17
+ * The name of the main file
18
+ * @default main.ts
19
+ */
20
+ readonly appFile?: string;
21
+ /**
22
+ * List of kubernetes imports to be added
23
+ */
24
+ readonly imports?: string[];
25
+ /**
26
+ * The path where the output synthesized file will be saved
27
+ * @default "kubernetes"
28
+ */
29
+ readonly outputPath?: string;
30
+ /**
31
+ * The kubernetes version to use
32
+ * @default 1.31
33
+ */
34
+ readonly k8sVersion?: K8sVersion;
35
+ }
36
+ export interface Cdk8sLibraryOptions extends Cdk8sBaseOptions, AwsCdkConstructLibraryOptions {
37
+ }
38
+ export interface Cdk8sAppOptions extends Cdk8sBaseOptions, AwsCdkTypeScriptAppOptions {
39
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.K8sVersion = void 0;
4
+ var K8sVersion;
5
+ (function (K8sVersion) {
6
+ K8sVersion["V1_29"] = "1.29.0";
7
+ K8sVersion["V1_30"] = "1.30.0";
8
+ K8sVersion["V1_31"] = "1.31.0";
9
+ K8sVersion["V1_32"] = "1.32.0";
10
+ K8sVersion["V1_33"] = "1.33.0";
11
+ })(K8sVersion || (exports.K8sVersion = K8sVersion = {}));
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2RrOHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9jZGs4cy9pbnRlcmZhY2VzL0NkazhzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUtBLElBQVksVUFNWDtBQU5ELFdBQVksVUFBVTtJQUNwQiw4QkFBZ0IsQ0FBQTtJQUNoQiw4QkFBZ0IsQ0FBQTtJQUNoQiw4QkFBZ0IsQ0FBQTtJQUNoQiw4QkFBZ0IsQ0FBQTtJQUNoQiw4QkFBZ0IsQ0FBQTtBQUNsQixDQUFDLEVBTlcsVUFBVSwwQkFBVixVQUFVLFFBTXJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQXdzQ2RrQ29uc3RydWN0TGlicmFyeU9wdGlvbnMsXG4gIEF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zLFxufSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5cbmV4cG9ydCBlbnVtIEs4c1ZlcnNpb24ge1xuICBWMV8yOSA9ICcxLjI5LjAnLFxuICBWMV8zMCA9ICcxLjMwLjAnLFxuICBWMV8zMSA9ICcxLjMxLjAnLFxuICBWMV8zMiA9ICcxLjMyLjAnLFxuICBWMV8zMyA9ICcxLjMzLjAnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENkazhzQmFzZU9wdGlvbnMge1xuICAvKipcbiAgICogcGF0aCBvZiBtYWluIGZpbGUgdG8gZXhlY3V0ZSB0aGUgdHlwZXNjcmlwdCB0cmFuc3BpbGF0aW9uXG4gICAqXG4gICAqIEBkZWZhdWx0IFwic3JjL2s4c1wiXG4gICAqL1xuICByZWFkb25seSBhcHBQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgbWFpbiBmaWxlXG4gICAqIEBkZWZhdWx0IG1haW4udHNcbiAgICovXG4gIHJlYWRvbmx5IGFwcEZpbGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBMaXN0IG9mIGt1YmVybmV0ZXMgaW1wb3J0cyB0byBiZSBhZGRlZFxuICAgKi9cbiAgcmVhZG9ubHkgaW1wb3J0cz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgcGF0aCB3aGVyZSB0aGUgb3V0cHV0IHN5bnRoZXNpemVkIGZpbGUgd2lsbCBiZSBzYXZlZFxuICAgKiBAZGVmYXVsdCBcImt1YmVybmV0ZXNcIlxuICAgKi9cbiAgcmVhZG9ubHkgb3V0cHV0UGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGt1YmVybmV0ZXMgdmVyc2lvbiB0byB1c2VcbiAgICogQGRlZmF1bHQgMS4zMVxuICAgKi9cbiAgcmVhZG9ubHkgazhzVmVyc2lvbj86IEs4c1ZlcnNpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2RrOHNMaWJyYXJ5T3B0aW9uc1xuICBleHRlbmRzIENkazhzQmFzZU9wdGlvbnMsIEF3c0Nka0NvbnN0cnVjdExpYnJhcnlPcHRpb25zIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2RrOHNBcHBPcHRpb25zXG4gIGV4dGVuZHMgQ2RrOHNCYXNlT3B0aW9ucywgQXdzQ2RrVHlwZVNjcmlwdEFwcE9wdGlvbnMge31cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ test('hello', () => {
2
+ expect(true).toBeTruthy();
3
+ });
@@ -0,0 +1,38 @@
1
+ import { App, Chart, ChartProps, ApiObject } from 'cdk8s';
2
+ import { Construct } from 'constructs';
3
+
4
+ export class MyChart extends Chart {
5
+ constructor(scope: Construct, id: string, props: ChartProps = {}) {
6
+ super(scope, id, props);
7
+
8
+ const label = { app: 'hello-k8s' };
9
+
10
+ new ApiObject(this, 'deployment', {
11
+ apiVersion: 'v1',
12
+ kind: 'Pod',
13
+ metadata: {
14
+ namespace: 'frontend',
15
+ name: 'nginx',
16
+ labels: label,
17
+ },
18
+ spec: {
19
+ containers: [
20
+ {
21
+ name: 'nginx',
22
+ image: 'nginx:1.14-alpine',
23
+ resources: {
24
+ limits: {
25
+ memory: '20Mi',
26
+ cpu: 0.2,
27
+ },
28
+ },
29
+ },
30
+ ],
31
+ },
32
+ });
33
+ }
34
+ }
35
+
36
+ const app = new App();
37
+ new MyChart(app, 'hello');
38
+ app.synth();
@@ -0,0 +1 @@
1
+ export * from './cdk8s';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./cdk8s"), exports);
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMENBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jZGs4cyc7XG4iXX0=
package/lib/index.d.ts CHANGED
@@ -1 +1,4 @@
1
1
  export * from './cdk/cdk-library-project';
2
+ export * from './cdk/cdk-app-project';
3
+ export * from './cdk/cdk8s-library-project';
4
+ export * from './components';
package/lib/index.js CHANGED
@@ -15,4 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./cdk/cdk-library-project"), exports);
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDREQUEwQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2RrL2Nkay1saWJyYXJ5LXByb2plY3QnO1xuIl19
18
+ __exportStar(require("./cdk/cdk-app-project"), exports);
19
+ __exportStar(require("./cdk/cdk8s-library-project"), exports);
20
+ __exportStar(require("./components"), exports);
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDREQUEwQztBQUMxQyx3REFBc0M7QUFDdEMsOERBQTRDO0FBQzVDLCtDQUE2QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2RrL2Nkay1saWJyYXJ5LXByb2plY3QnO1xuZXhwb3J0ICogZnJvbSAnLi9jZGsvY2RrLWFwcC1wcm9qZWN0JztcbmV4cG9ydCAqIGZyb20gJy4vY2RrL2NkazhzLWxpYnJhcnktcHJvamVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMnO1xuIl19
package/mkdocs.yml CHANGED
@@ -6,6 +6,10 @@ nav:
6
6
  - index.md
7
7
  - Project Types:
8
8
  - CDK Library: project-types/cdk-library.md
9
+ - CDK App: project-types/cdk-app.md
10
+ - CDK8s Library: project-types/cdk8s-library.md
11
+ - Components:
12
+ - CDK8s Component: components/cdk8s.md
9
13
  - Configuration:
10
14
  - Default Configurations: default-configurations.md
11
15
  theme:
package/package.json CHANGED
@@ -52,29 +52,29 @@
52
52
  "jest": "^30.2.0",
53
53
  "jest-junit": "^16",
54
54
  "jsii": "~5.9.0",
55
- "jsii-diff": "^1.121.0",
55
+ "jsii-diff": "^1.125.0",
56
56
  "jsii-docgen": "^10.5.0",
57
- "jsii-pacmak": "^1.121.0",
57
+ "jsii-pacmak": "^1.125.0",
58
58
  "jsii-rosetta": "~5.9.0",
59
59
  "prettier": "^3.7.4",
60
- "projen": "^0.98.30",
60
+ "projen": "^0.99.0",
61
61
  "ts-jest": "^29.4.6",
62
62
  "ts-node": "^10.9.2",
63
63
  "typescript": "^5.9.3"
64
64
  },
65
65
  "peerDependencies": {
66
66
  "constructs": "^10.4.4",
67
- "projen": "^0.98.30"
67
+ "projen": "^0.99.0"
68
68
  },
69
69
  "dependencies": {
70
- "projen": "^0.98.30"
70
+ "projen": "^0.99.0"
71
71
  },
72
72
  "main": "lib/index.js",
73
73
  "license": "Apache-2.0",
74
74
  "publishConfig": {
75
75
  "access": "public"
76
76
  },
77
- "version": "1.0.0-beta.2",
77
+ "version": "1.0.0-beta.4",
78
78
  "jest": {
79
79
  "coverageProvider": "v8",
80
80
  "verbose": true,