cdk8s-cli 2.0.32 → 2.0.35
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/.gitattributes +1 -0
- package/.projenrc.ts +185 -0
- package/lib/cli/cmds/init.js +4 -3
- package/package.json +16 -8
- package/projenrc/integ.ts +103 -0
- package/templates/typescript-app/package.json +2 -2
package/.gitattributes
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
/.github/workflows/auto-approve.yml linguist-generated
|
|
9
9
|
/.github/workflows/backport.yml linguist-generated
|
|
10
10
|
/.github/workflows/build.yml linguist-generated
|
|
11
|
+
/.github/workflows/integ.yml linguist-generated
|
|
11
12
|
/.github/workflows/pull-request-lint.yml linguist-generated
|
|
12
13
|
/.github/workflows/release-1.x.yml linguist-generated
|
|
13
14
|
/.github/workflows/release.yml linguist-generated
|
package/.projenrc.ts
ADDED
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import { Cdk8sCommon } from '@cdk8s/projen-common';
|
|
2
|
+
import { github, typescript, JsonFile, DependencyType } from 'projen';
|
|
3
|
+
import { addIntegTests } from './projenrc/integ';
|
|
4
|
+
|
|
5
|
+
const project = new typescript.TypeScriptProject({
|
|
6
|
+
...Cdk8sCommon.props,
|
|
7
|
+
|
|
8
|
+
projenrcTs: true,
|
|
9
|
+
name: 'cdk8s-cli',
|
|
10
|
+
description: 'This is the command line tool for Cloud Development Kit (CDK) for Kubernetes (cdk8s).',
|
|
11
|
+
repositoryUrl: 'https://github.com/cdk8s-team/cdk8s-cli.git',
|
|
12
|
+
projenUpgradeSecret: 'PROJEN_GITHUB_TOKEN',
|
|
13
|
+
authorName: 'Amazon Web Services',
|
|
14
|
+
authorUrl: 'https://aws.amazon.com',
|
|
15
|
+
minNodeVersion: '14.17.0',
|
|
16
|
+
|
|
17
|
+
keywords: [
|
|
18
|
+
'k8s',
|
|
19
|
+
'cdk8s',
|
|
20
|
+
'kubernetes',
|
|
21
|
+
'cli',
|
|
22
|
+
'tools',
|
|
23
|
+
'automation',
|
|
24
|
+
'containers',
|
|
25
|
+
],
|
|
26
|
+
|
|
27
|
+
workflowBootstrapSteps: [{ run: 'pip3 install pipenv' }],
|
|
28
|
+
|
|
29
|
+
defaultReleaseBranch: '2.x',
|
|
30
|
+
majorVersion: 2,
|
|
31
|
+
releaseBranches: {
|
|
32
|
+
'1.x': {
|
|
33
|
+
majorVersion: 1,
|
|
34
|
+
npmDistTag: 'latest-1',
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
|
|
38
|
+
releaseToNpm: true,
|
|
39
|
+
bin: {
|
|
40
|
+
cdk8s: 'bin/cdk8s',
|
|
41
|
+
},
|
|
42
|
+
deps: [
|
|
43
|
+
'cdk8s',
|
|
44
|
+
'cdk8s-plus-22',
|
|
45
|
+
'codemaker',
|
|
46
|
+
'constructs',
|
|
47
|
+
'fs-extra@^8',
|
|
48
|
+
'jsii-srcmak',
|
|
49
|
+
'jsii-pacmak',
|
|
50
|
+
'sscaff',
|
|
51
|
+
'yaml',
|
|
52
|
+
'yargs@^15',
|
|
53
|
+
'json2jsii',
|
|
54
|
+
'colors',
|
|
55
|
+
'ajv',
|
|
56
|
+
],
|
|
57
|
+
devDeps: [
|
|
58
|
+
'@cdk8s/projen-common',
|
|
59
|
+
'@types/fs-extra@^8',
|
|
60
|
+
'@types/json-schema',
|
|
61
|
+
'glob',
|
|
62
|
+
'@types/glob',
|
|
63
|
+
'typescript-json-schema',
|
|
64
|
+
],
|
|
65
|
+
|
|
66
|
+
tsconfig: {
|
|
67
|
+
include: ['src/schemas/*.json'],
|
|
68
|
+
},
|
|
69
|
+
|
|
70
|
+
// run upgrade-dependencies workflow at a different hour than other cdk8s
|
|
71
|
+
// repos to decrease flakiness of integration tests caused by new versions of
|
|
72
|
+
// cdk8s and cdk8s+ being published to different languages at the same time
|
|
73
|
+
depsUpgradeOptions: {
|
|
74
|
+
// the latest versions of yaml require node > 12, which
|
|
75
|
+
// is a change we are still not willing to make.
|
|
76
|
+
exclude: ['yaml'],
|
|
77
|
+
workflowOptions: {
|
|
78
|
+
schedule: Cdk8sCommon.upgradeScheduleFor('cdk8s-cli'),
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
// ignore integration tests since they need to executed after packaging
|
|
84
|
+
// and are defined in a separate tasks.
|
|
85
|
+
project.jest?.addIgnorePattern('/test/integ/');
|
|
86
|
+
|
|
87
|
+
project.gitignore.exclude('.vscode/');
|
|
88
|
+
|
|
89
|
+
new Cdk8sCommon(project);
|
|
90
|
+
|
|
91
|
+
// add @types/node as a regular dependency since it's needed to during "import"
|
|
92
|
+
// to compile the generated jsii code.
|
|
93
|
+
project.deps.removeDependency('@types/node', DependencyType.BUILD);
|
|
94
|
+
project.deps.addDependency('@types/node@^12', DependencyType.RUNTIME);
|
|
95
|
+
|
|
96
|
+
const schemas = project.addTask('schemas');
|
|
97
|
+
schemas.exec('ts-node scripts/crd.schema.ts');
|
|
98
|
+
|
|
99
|
+
project.compileTask.spawn(schemas);
|
|
100
|
+
|
|
101
|
+
// run backport in clean directories every time.
|
|
102
|
+
const backportHome = '/tmp/.backport/';
|
|
103
|
+
const backportDir = `${backportHome}/repositories/cdk8s-team/cdk8s-cli`;
|
|
104
|
+
const backportConfig = new JsonFile(project, '.backportrc.json', {
|
|
105
|
+
// see https://github.com/sqren/backport/blob/main/docs/config-file-options.md
|
|
106
|
+
obj: {
|
|
107
|
+
repoOwner: 'cdk8s-team',
|
|
108
|
+
repoName: 'cdk8s-cli',
|
|
109
|
+
signoff: true,
|
|
110
|
+
branchLabelMapping: {
|
|
111
|
+
'^backport-to-(.+)$': '$1',
|
|
112
|
+
},
|
|
113
|
+
prTitle: '{commitMessages}',
|
|
114
|
+
fork: false,
|
|
115
|
+
publishStatusCommentOnFailure: true,
|
|
116
|
+
publishStatusCommentOnSuccess: true,
|
|
117
|
+
publishStatusCommentOnAbort: true,
|
|
118
|
+
targetPRLabels: [project.autoApprove!.label],
|
|
119
|
+
dir: backportDir,
|
|
120
|
+
},
|
|
121
|
+
});
|
|
122
|
+
|
|
123
|
+
// backport task to branches based on pr labels
|
|
124
|
+
const backportTask = createBackportTask();
|
|
125
|
+
|
|
126
|
+
// backport tasks to the explicit release branches
|
|
127
|
+
for (const branch of project.release!.branches) {
|
|
128
|
+
createBackportTask(branch);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
const backportWorkflow = project.github!.addWorkflow('backport');
|
|
132
|
+
backportWorkflow.on({ pullRequestTarget: { types: ['closed'] } });
|
|
133
|
+
backportWorkflow.addJob('backport', {
|
|
134
|
+
runsOn: ['ubuntu-18.04'],
|
|
135
|
+
permissions: {
|
|
136
|
+
contents: github.workflows.JobPermission.WRITE,
|
|
137
|
+
},
|
|
138
|
+
steps: [
|
|
139
|
+
// needed in order to run the projen task as well
|
|
140
|
+
// as use the backport configuration in the repo.
|
|
141
|
+
{
|
|
142
|
+
name: 'checkout',
|
|
143
|
+
uses: 'actions/checkout@v3',
|
|
144
|
+
with: {
|
|
145
|
+
// required because we need the full history
|
|
146
|
+
// for proper backports.
|
|
147
|
+
'fetch-depth': 0,
|
|
148
|
+
},
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
name: 'Set Git Identity',
|
|
152
|
+
run: 'git config --global user.name "github-actions" && git config --global user.email "github-actions@github.com"',
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
name: 'backport',
|
|
156
|
+
if: 'github.event.pull_request.merged == true',
|
|
157
|
+
run: `npx projen ${backportTask.name}`,
|
|
158
|
+
env: {
|
|
159
|
+
GITHUB_TOKEN: '${{ secrets.PROJEN_GITHUB_TOKEN }}',
|
|
160
|
+
BACKPORT_PR_NUMBER: '${{ github.event.pull_request.number }}',
|
|
161
|
+
},
|
|
162
|
+
},
|
|
163
|
+
],
|
|
164
|
+
});
|
|
165
|
+
|
|
166
|
+
function createBackportTask(branch?: string) {
|
|
167
|
+
const name = branch ? `backport:${branch}` : 'backport';
|
|
168
|
+
const task = project.addTask(name, { requiredEnv: ['BACKPORT_PR_NUMBER', 'GITHUB_TOKEN'] });
|
|
169
|
+
task.exec(`rm -rf ${backportHome}`);
|
|
170
|
+
task.exec(`mkdir -p ${backportHome}`);
|
|
171
|
+
task.exec(`cp ${backportConfig.path} ${backportHome}`);
|
|
172
|
+
|
|
173
|
+
const command = ['npx', 'backport', '--accesstoken', '${GITHUB_TOKEN}', '--pr', '${BACKPORT_PR_NUMBER}'];
|
|
174
|
+
if (branch) {
|
|
175
|
+
command.push(...['--branch', branch]);
|
|
176
|
+
} else {
|
|
177
|
+
command.push('--non-interactive');
|
|
178
|
+
}
|
|
179
|
+
task.exec(command.join(' '), { cwd: backportHome });
|
|
180
|
+
return task;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
addIntegTests(project);
|
|
184
|
+
|
|
185
|
+
project.synth();
|
package/lib/cli/cmds/init.js
CHANGED
|
@@ -61,6 +61,7 @@ class Command {
|
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
async function determineDeps() {
|
|
64
|
+
var _a;
|
|
64
65
|
const cdk8s = new ModuleVersion('cdk8s', { jsii: true });
|
|
65
66
|
const cdk8sPlus = new ModuleVersion('cdk8s-plus-22', { jsii: true });
|
|
66
67
|
const cdk8sCli = new ModuleVersion('cdk8s-cli');
|
|
@@ -76,8 +77,8 @@ async function determineDeps() {
|
|
|
76
77
|
cdk8s_plus_version: cdk8sPlus.version,
|
|
77
78
|
constructs_version: constructsVersion,
|
|
78
79
|
jsii_version: jsii.version,
|
|
79
|
-
//
|
|
80
|
-
npm_cdk8s_cli: process.env.
|
|
80
|
+
// when running tests, install the tarball created from our source
|
|
81
|
+
npm_cdk8s_cli: (_a = process.env.CDK8S_TARBALL) !== null && _a !== void 0 ? _a : cdk8sCli.npmDependency,
|
|
81
82
|
};
|
|
82
83
|
}
|
|
83
84
|
class ModuleVersion {
|
|
@@ -123,4 +124,4 @@ class ModuleVersion {
|
|
|
123
124
|
}
|
|
124
125
|
}
|
|
125
126
|
module.exports = new Command();
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbGkvY21kcy9pbml0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyQ0FBNkI7QUFDN0IsNkNBQStCO0FBQy9CLG9EQUFzQztBQUN0QywrRUFBaUU7QUFDakUsbUNBQWdDO0FBR2hDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFFdkQsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDO0FBQ2hFLE1BQU0saUJBQWlCLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUV2RSxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztBQUNyRCxNQUFNLGtCQUFrQixHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFFeEYsTUFBTSxPQUFPO0lBQWI7UUFDa0IsWUFBTyxHQUFHLFdBQVcsQ0FBQztRQUN0QixhQUFRLEdBQUcsNkNBQTZDLENBQUM7UUFDekQsWUFBTyxHQUFHLENBQUMsSUFBZ0IsRUFBRSxFQUFFLENBQUMsSUFBSTthQUNqRCxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLENBQUM7YUFDaEUsY0FBYyxDQUFDLEtBQUssQ0FBQzthQUNyQixPQUFP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QVUsS0FBSyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkQsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVPLGNBQWMsQ0FBQyxNQUFjO1FBQ25DLElBQUksTUFBTSxLQUFLLFdBQVcsRUFBRTtZQUMxQixNQUFNLEdBQUcsV0FBVyxDQUFDO1NBQ3RCO1FBRUQsaUVBQWlFO1FBQ2pFLE9BQU8sT0FBTyxDQUFDLEdBQUcsTUFBTSxlQUFlLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDbkQsQ0FBQztDQUNGO0FBR0QsTUFBTSxDQUFDLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCAqIGFzIHBhY21hayBmcm9tICdqc2lpLXBhY21hayc7XG5pbXBvcnQgKiBhcyBwYWNtYWt2IGZyb20gJ2pzaWktcGFjbWFrL2xpYi90YXJnZXRzL3ZlcnNpb24tdXRpbHMnO1xuaW1wb3J0IHsgc3NjYWZmIH0gZnJvbSAnc3NjYWZmJztcbmltcG9ydCAqIGFzIHlhcmdzIGZyb20gJ3lhcmdzJztcblxuY29uc3QgcGtncm9vdCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICcuLicsICcuLicsICcuLicpO1xuXG5jb25zdCBwa2cgPSBmcy5yZWFkSnNvblN5bmMocGF0aC5qb2luKHBrZ3Jvb3QsICdwYWNrYWdlLmpzb24nKSk7XG5jb25zdCBjb25zdHJ1Y3RzVmVyc2lvbiA9IHBrZy5kZXBlbmRlbmNpZXMuY29uc3RydWN0cy5yZXBsYWNlKCdeJywgJycpO1xuXG5jb25zdCB0ZW1wbGF0ZXNEaXIgPSBwYXRoLmpvaW4ocGtncm9vdCwgJ3RlbXBsYXRlcycpO1xuY29uc3QgYXZhaWxhYmxlVGVtcGxhdGVzID0gZnMucmVhZGRpclN5bmModGVtcGxhdGVzRGlyKS5maWx0ZXIoeCA9PiAheC5zdGFydHNXaXRoKCcuJykpO1xuXG5jbGFzcyBDb21tYW5kIGltcGxlbWVudHMgeWFyZ3MuQ29tbWFuZE1vZHVsZSB7XG4gIHB1YmxpYyByZWFkb25seSBjb21tYW5kID0gJ2luaXQgVFlQRSc7XG4gIHB1YmxpYyByZWFkb25seSBkZXNjcmliZSA9ICdDcmVhdGUgYSBuZXcgY2RrOHMgcHJvamVjdCBmcm9tIGEgdGVtcGxhdGUuJztcbiAgcHVibGljIHJlYWRvbmx5IGJ1aWxkZXIgPSAoYXJnczogeWFyZ3MuQXJndikgPT4gYXJnc1xuICAgIC5wb3NpdGlvbmFsKCdUWVBFJywgeyBkZW1hbmRPcHRpb246IHRydWUsIGRlc2M6ICdQcm9qZWN0IHR5cGUnIH0pXG4gICAgLnNob3dIZWxwT25GYWlsKGZhbHNlKVxuICAgIC5jaG9pY2VzKCdUWVBFJywgYXZhaWxhYmxlVGVtcGxhdGVzKTtcblxuICBwdWJsaWMgYXN5bmMgaGFuZGxlcihhcmd2OiBhbnkpIHtcbiAgICBpZiAoZnMucmVhZGRpclN5bmMoJy4nKS5maWx0ZXIoZiA9PiAhZi5zdGFydHNXaXRoKCcuJykpLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0Nhbm5vdCBpbml0aWFsaXplIGEgcHJvamVjdCBpbiBhIG5vbi1lbXB0eSBkaXJlY3RvcnknKTtcbiAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICB9XG5cbiAgICBjb25zb2xlLmVycm9yKGBJbml0aWFsaXppbmcgYSBwcm9qZWN0IGZyb20gdGhlICR7YXJndi50eXBlfSB0ZW1wbGF0ZWApO1xuICAgIGNvbnN0IHRlbXBsYXRlUGF0aCA9IHBhdGguam9pbih0ZW1wbGF0ZXNEaXIsIGFyZ3YudHlwZSk7XG4gICAgY29uc3QgZGVwczogYW55ID0gYXdhaXQgZGV0ZXJtaW5lRGVwcygpO1xuXG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHNzY2FmZih0ZW1wbGF0ZVBhdGgsICcuJywgZGVwcyk7XG4gICAgfSBjYXRjaCAoZXIpIHtcbiAgICAgIGNvbnN0IGUgPSBlciBhcyBhbnk7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYGVycm9yIGR1cmluZyBwcm9qZWN0IGluaXRpYWxpemF0aW9uOiAke2Uuc3RhY2t9XFxuU1RET1VUOlxcbiR7ZS5zdGRvdXQ/LnRvU3RyaW5nKCl9XFxuU1RERVJSOlxcbiR7ZS5zdGRlcnI/LnRvU3RyaW5nKCl9YCk7XG4gICAgfVxuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGRldGVybWluZURlcHMoKTogUHJvbWlzZTxEZXBzPiB7XG4gIGNvbnN0IGNkazhzID0gbmV3IE1vZHVsZVZlcnNpb24oJ2NkazhzJywgeyBqc2lpOiB0cnVlIH0pO1xuICBjb25zdCBjZGs4c1BsdXMgPSBuZXcgTW9kdWxlVmVyc2lvbignY2RrOHMtcGx1cy0yMicsIHsganNpaTogdHJ1ZSB9KTtcbiAgY29uc3QgY2RrOHNDbGkgPSBuZXcgTW9kdWxlVmVyc2lvbignY2RrOHMtY2xpJyk7XG4gIGNvbnN0IGpzaWkgPSBuZXcgTW9kdWxlVmVyc2lvbignanNpaScpO1xuXG4gIHJldHVybiB7XG4gICAgbnBtX2NkazhzOiBjZGs4cy5ucG1EZXBlbmRlbmN5LFxuICAgIG5wbV9jZGs4c19wbHVzOiBjZGs4c1BsdXMubnBtRGVwZW5kZW5jeSxcbiAgICBweXBpX2NkazhzOiBjZGs4cy5weXBpRGVwZW5kZW5jeSxcbiAgICBweXBpX2NkazhzX3BsdXM6IGNkazhzUGx1cy5weXBpRGVwZW5kZW5jeSxcbiAgICBtdm5fY2RrOHM6IGNkazhzLm1hdmVuRGVwZW5kZW5jeSxcbiAgICBtdm5fY2RrOHNfcGx1czogY2RrOHNQbHVzLm1hdmVuRGVwZW5kZW5jeSxcbiAgICBjZGs4c19jb3JlX3ZlcnNpb246IGNkazhzLnZlcnNpb24sXG4gICAgY2RrOHNfcGx1c192ZXJzaW9uOiBjZGs4c1BsdXMudmVyc2lvbixcbiAgICBjb25zdHJ1Y3RzX3ZlcnNpb246IGNvbnN0cnVjdHNWZXJzaW9uLFxuICAgIGpzaWlfdmVyc2lvbjoganNpaS52ZXJzaW9uLFxuXG4gICAgLy8gZG8gbm90IGF0dGVtcHQgdG8gaW5zdGFsbCBjZGs4cyBjbGkgaWYgd2UgYXJlIHJ1bm5pbmcgaW4gYSB0ZXN0IGNvbnRleHRcbiAgICBucG1fY2RrOHNfY2xpOiBwcm9jZXNzLmVudi5DREs4U19URVNUID8gdW5kZWZpbmVkIDogY2RrOHNDbGkubnBtRGVwZW5kZW5jeSxcbiAgfTtcbn1cblxuaW50ZXJmYWNlIERlcHMge1xuICBucG1fY2RrOHM6IHN0cmluZztcbiAgbnBtX2NkazhzX2NsaT86IHN0cmluZztcbiAgbnBtX2NkazhzX3BsdXM6IHN0cmluZztcbiAgcHlwaV9jZGs4czogc3RyaW5nO1xuICBweXBpX2NkazhzX3BsdXM6IHN0cmluZztcbiAgbXZuX2NkazhzOiBzdHJpbmc7XG4gIG12bl9jZGs4c19wbHVzOiBzdHJpbmc7XG4gIGNkazhzX2NvcmVfdmVyc2lvbjogc3RyaW5nO1xuICBjZGs4c19wbHVzX3ZlcnNpb246IHN0cmluZztcbiAgY29uc3RydWN0c192ZXJzaW9uOiBzdHJpbmc7XG4gIGpzaWlfdmVyc2lvbjogc3RyaW5nO1xufVxuXG5jbGFzcyBNb2R1bGVWZXJzaW9uIHtcbiAgcHVibGljIHJlYWRvbmx5IHB5cGlWZXJzaW9uOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBucG1WZXJzaW9uOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBtYXZlblZlcnNpb246IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IHZlcnNpb246IHN0cmluZztcblxuICBwcml2YXRlIHJlYWRvbmx5IGpzaWk6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBtb2R1bGVOYW1lOiBzdHJpbmcsIG9wdGlvbnM6IHsganNpaT86IGJvb2xlYW4gfSA9IHsgfSkge1xuICAgIHRoaXMudmVyc2lvbiA9IHRoaXMucmVzb2x2ZVZlcnNpb24obW9kdWxlTmFtZSk7XG4gICAgdGhpcy5ucG1WZXJzaW9uID0gdGhpcy52ZXJzaW9uO1xuICAgIHRoaXMucHlwaVZlcnNpb24gPSBwYWNtYWt2LnRvUmVsZWFzZVZlcnNpb24odGhpcy52ZXJzaW9uLCBwYWNtYWsuVGFyZ2V0TmFtZS5QWVRIT04pO1xuICAgIHRoaXMubWF2ZW5WZXJzaW9uID0gcGFjbWFrdi50b1JlbGVhc2VWZXJzaW9uKHRoaXMudmVyc2lvbiwgcGFjbWFrLlRhcmdldE5hbWUuSkFWQSk7XG4gICAgdGhpcy5qc2lpID0gb3B0aW9ucy5qc2lpID8/IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdldCBucG1UYXJiYWxsRmlsZSgpIHtcbiAgICBpZiAodGhpcy5qc2lpKSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5tb2R1bGVOYW1lfUAke3RoaXMudmVyc2lvbn0uanNpaS50Z3pgO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5tb2R1bGVOYW1lfS12JHt0aGlzLnZlcnNpb259LnRnemA7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBweXBpV2hlZWxGaWxlKCkge1xuICAgIGNvbnN0IFttYWpvciwgbWlub3IsIHBhdGNoLCBwcmVdID0gdGhpcy5weXBpVmVyc2lvbi5zcGxpdCgnLicpO1xuICAgIHJldHVybiBgJHt0aGlzLm1vZHVsZU5hbWUucmVwbGFjZSgvLS9nLCAnXycpfS0ke21ham9yfS4ke21pbm9yfS4ke3BhdGNofSR7cHJlID8/ICcnfS1weTMtbm9uZS1hbnkud2hsYDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgamF2YUphckZpbGUoKSB7XG4gICAgcmV0dXJuIGBvcmcvY2RrOHMvJHt0aGlzLm1vZHVsZU5hbWV9LyR7dGhpcy5tYXZlblZlcnNpb259LyR7dGhpcy5tb2R1bGVOYW1lfS0ke3RoaXMubWF2ZW5WZXJzaW9ufS5qYXJgO1xuICB9XG5cbiAgcHVibGljIGdldCBucG1EZXBlbmRlbmN5KCkge1xuICAgIHJldHVybiBgJHt0aGlzLm1vZHVsZU5hbWV9QF4ke3RoaXMubnBtVmVyc2lvbn1gO1xuICB9XG5cbiAgcHVibGljIGdldCBweXBpRGVwZW5kZW5jeSgpIHtcbiAgICByZXR1cm4gYCR7dGhpcy5tb2R1bGVOYW1lfX49JHt0aGlzLnB5cGlWZXJzaW9ufWA7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG1hdmVuRGVwZW5kZW5jeSgpIHtcbiAgICByZXR1cm4gdGhpcy5tYXZlblZlcnNpb247XG4gIH1cblxuICBwcml2YXRlIHJlc29sdmVWZXJzaW9uKG1vZHVsZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAobW9kdWxlID09PSAnY2RrOHMtY2xpJykge1xuICAgICAgbW9kdWxlID0gJy4uLy4uLy4uLyc7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbiAgICByZXR1cm4gcmVxdWlyZShgJHttb2R1bGV9L3BhY2thZ2UuanNvbmApLnZlcnNpb247XG4gIH1cbn1cblxuXG5tb2R1bGUuZXhwb3J0cyA9IG5ldyBDb21tYW5kKCk7XG4iXX0=
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jbGkvY21kcy9pbml0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyQ0FBNkI7QUFDN0IsNkNBQStCO0FBQy9CLG9EQUFzQztBQUN0QywrRUFBaUU7QUFDakUsbUNBQWdDO0FBR2hDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFFdkQsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDO0FBQ2hFLE1BQU0saUJBQWlCLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUV2RSxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztBQUNyRCxNQUFNLGtCQUFrQixHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFFeEYsTUFBTSxPQUFPO0lBQWI7UUFDa0IsWUFBTyxHQUFHLFdBQVcsQ0FBQztRQUN0QixhQUFRLEdBQUcsNkNBQTZDLENBQUM7UUFDekQsWUFBTyxHQUFHLENBQUMsSUFBZ0IsRUFBRSxFQUFFLENBQUMsSUFBSTthQUNqRCxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLENBQUM7YUFDaEUsY0FBYyxDQUFDLEtBQUssQ0FBQzthQUNyQixPQUFP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RUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFFTyxjQUFjLENBQUMsTUFBYztRQUNuQyxJQUFJLE1BQU0sS0FBSyxXQUFXLEVBQUU7WUFDMUIsTUFBTSxHQUFHLFdBQVcsQ0FBQztTQUN0QjtRQUVELGlFQUFpRTtRQUNqRSxPQUFPLE9BQU8sQ0FBQyxHQUFHLE1BQU0sZUFBZSxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQ25ELENBQUM7Q0FDRjtBQUdELE1BQU0sQ0FBQyxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmcy1leHRyYSc7XG5pbXBvcnQgKiBhcyBwYWNtYWsgZnJvbSAnanNpaS1wYWNtYWsnO1xuaW1wb3J0ICogYXMgcGFjbWFrdiBmcm9tICdqc2lpLXBhY21hay9saWIvdGFyZ2V0cy92ZXJzaW9uLXV0aWxzJztcbmltcG9ydCB7IHNzY2FmZiB9IGZyb20gJ3NzY2FmZic7XG5pbXBvcnQgKiBhcyB5YXJncyBmcm9tICd5YXJncyc7XG5cbmNvbnN0IHBrZ3Jvb3QgPSBwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4nLCAnLi4nLCAnLi4nKTtcblxuY29uc3QgcGtnID0gZnMucmVhZEpzb25TeW5jKHBhdGguam9pbihwa2dyb290LCAncGFja2FnZS5qc29uJykpO1xuY29uc3QgY29uc3RydWN0c1ZlcnNpb24gPSBwa2cuZGVwZW5kZW5jaWVzLmNvbnN0cnVjdHMucmVwbGFjZSgnXicsICcnKTtcblxuY29uc3QgdGVtcGxhdGVzRGlyID0gcGF0aC5qb2luKHBrZ3Jvb3QsICd0ZW1wbGF0ZXMnKTtcbmNvbnN0IGF2YWlsYWJsZVRlbXBsYXRlcyA9IGZzLnJlYWRkaXJTeW5jKHRlbXBsYXRlc0RpcikuZmlsdGVyKHggPT4gIXguc3RhcnRzV2l0aCgnLicpKTtcblxuY2xhc3MgQ29tbWFuZCBpbXBsZW1lbnRzIHlhcmdzLkNvbW1hbmRNb2R1bGUge1xuICBwdWJsaWMgcmVhZG9ubHkgY29tbWFuZCA9ICdpbml0IFRZUEUnO1xuICBwdWJsaWMgcmVhZG9ubHkgZGVzY3JpYmUgPSAnQ3JlYXRlIGEgbmV3IGNkazhzIHByb2plY3QgZnJvbSBhIHRlbXBsYXRlLic7XG4gIHB1YmxpYyByZWFkb25seSBidWlsZGVyID0gKGFyZ3M6IHlhcmdzLkFyZ3YpID0+IGFyZ3NcbiAgICAucG9zaXRpb25hbCgnVFlQRScsIHsgZGVtYW5kT3B0aW9uOiB0cnVlLCBkZXNjOiAnUHJvamVjdCB0eXBlJyB9KVxuICAgIC5zaG93SGVscE9uRmFpbChmYWxzZSlcbiAgICAuY2hvaWNlcygnVFlQRScsIGF2YWlsYWJsZVRlbXBsYXRlcyk7XG5cbiAgcHVibGljIGFzeW5jIGhhbmRsZXIoYXJndjogYW55KSB7XG4gICAgaWYgKGZzLnJlYWRkaXJTeW5jKCcuJykuZmlsdGVyKGYgPT4gIWYuc3RhcnRzV2l0aCgnLicpKS5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdDYW5ub3QgaW5pdGlhbGl6ZSBhIHByb2plY3QgaW4gYSBub24tZW1wdHkgZGlyZWN0b3J5Jyk7XG4gICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgfVxuXG4gICAgY29uc29sZS5lcnJvcihgSW5pdGlhbGl6aW5nIGEgcHJvamVjdCBmcm9tIHRoZSAke2FyZ3YudHlwZX0gdGVtcGxhdGVgKTtcbiAgICBjb25zdCB0ZW1wbGF0ZVBhdGggPSBwYXRoLmpvaW4odGVtcGxhdGVzRGlyLCBhcmd2LnR5cGUpO1xuICAgIGNvbnN0IGRlcHM6IGFueSA9IGF3YWl0IGRldGVybWluZURlcHMoKTtcblxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBzc2NhZmYodGVtcGxhdGVQYXRoLCAnLicsIGRlcHMpO1xuICAgIH0gY2F0Y2ggKGVyKSB7XG4gICAgICBjb25zdCBlID0gZXIgYXMgYW55O1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBlcnJvciBkdXJpbmcgcHJvamVjdCBpbml0aWFsaXphdGlvbjogJHtlLnN0YWNrfVxcblNURE9VVDpcXG4ke2Uuc3Rkb3V0Py50b1N0cmluZygpfVxcblNUREVSUjpcXG4ke2Uuc3RkZXJyPy50b1N0cmluZygpfWApO1xuICAgIH1cbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBkZXRlcm1pbmVEZXBzKCk6IFByb21pc2U8RGVwcz4ge1xuICBjb25zdCBjZGs4cyA9IG5ldyBNb2R1bGVWZXJzaW9uKCdjZGs4cycsIHsganNpaTogdHJ1ZSB9KTtcbiAgY29uc3QgY2RrOHNQbHVzID0gbmV3IE1vZHVsZVZlcnNpb24oJ2NkazhzLXBsdXMtMjInLCB7IGpzaWk6IHRydWUgfSk7XG4gIGNvbnN0IGNkazhzQ2xpID0gbmV3IE1vZHVsZVZlcnNpb24oJ2NkazhzLWNsaScpO1xuICBjb25zdCBqc2lpID0gbmV3IE1vZHVsZVZlcnNpb24oJ2pzaWknKTtcblxuICByZXR1cm4ge1xuICAgIG5wbV9jZGs4czogY2RrOHMubnBtRGVwZW5kZW5jeSxcbiAgICBucG1fY2RrOHNfcGx1czogY2RrOHNQbHVzLm5wbURlcGVuZGVuY3ksXG4gICAgcHlwaV9jZGs4czogY2RrOHMucHlwaURlcGVuZGVuY3ksXG4gICAgcHlwaV9jZGs4c19wbHVzOiBjZGs4c1BsdXMucHlwaURlcGVuZGVuY3ksXG4gICAgbXZuX2NkazhzOiBjZGs4cy5tYXZlbkRlcGVuZGVuY3ksXG4gICAgbXZuX2NkazhzX3BsdXM6IGNkazhzUGx1cy5tYXZlbkRlcGVuZGVuY3ksXG4gICAgY2RrOHNfY29yZV92ZXJzaW9uOiBjZGs4cy52ZXJzaW9uLFxuICAgIGNkazhzX3BsdXNfdmVyc2lvbjogY2RrOHNQbHVzLnZlcnNpb24sXG4gICAgY29uc3RydWN0c192ZXJzaW9uOiBjb25zdHJ1Y3RzVmVyc2lvbixcbiAgICBqc2lpX3ZlcnNpb246IGpzaWkudmVyc2lvbixcblxuICAgIC8vIHdoZW4gcnVubmluZyB0ZXN0cywgaW5zdGFsbCB0aGUgdGFyYmFsbCBjcmVhdGVkIGZyb20gb3VyIHNvdXJjZVxuICAgIG5wbV9jZGs4c19jbGk6IHByb2Nlc3MuZW52LkNESzhTX1RBUkJBTEwgPz8gY2RrOHNDbGkubnBtRGVwZW5kZW5jeSxcbiAgfTtcbn1cblxuaW50ZXJmYWNlIERlcHMge1xuICBucG1fY2RrOHM6IHN0cmluZztcbiAgbnBtX2NkazhzX2NsaT86IHN0cmluZztcbiAgbnBtX2NkazhzX3BsdXM6IHN0cmluZztcbiAgcHlwaV9jZGs4czogc3RyaW5nO1xuICBweXBpX2NkazhzX3BsdXM6IHN0cmluZztcbiAgbXZuX2NkazhzOiBzdHJpbmc7XG4gIG12bl9jZGs4c19wbHVzOiBzdHJpbmc7XG4gIGNkazhzX2NvcmVfdmVyc2lvbjogc3RyaW5nO1xuICBjZGs4c19wbHVzX3ZlcnNpb246IHN0cmluZztcbiAgY29uc3RydWN0c192ZXJzaW9uOiBzdHJpbmc7XG4gIGpzaWlfdmVyc2lvbjogc3RyaW5nO1xufVxuXG5jbGFzcyBNb2R1bGVWZXJzaW9uIHtcbiAgcHVibGljIHJlYWRvbmx5IHB5cGlWZXJzaW9uOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBucG1WZXJzaW9uOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBtYXZlblZlcnNpb246IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IHZlcnNpb246IHN0cmluZztcblxuICBwcml2YXRlIHJlYWRvbmx5IGpzaWk6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBtb2R1bGVOYW1lOiBzdHJpbmcsIG9wdGlvbnM6IHsganNpaT86IGJvb2xlYW4gfSA9IHsgfSkge1xuICAgIHRoaXMudmVyc2lvbiA9IHRoaXMucmVzb2x2ZVZlcnNpb24obW9kdWxlTmFtZSk7XG4gICAgdGhpcy5ucG1WZXJzaW9uID0gdGhpcy52ZXJzaW9uO1xuICAgIHRoaXMucHlwaVZlcnNpb24gPSBwYWNtYWt2LnRvUmVsZWFzZVZlcnNpb24odGhpcy52ZXJzaW9uLCBwYWNtYWsuVGFyZ2V0TmFtZS5QWVRIT04pO1xuICAgIHRoaXMubWF2ZW5WZXJzaW9uID0gcGFjbWFrdi50b1JlbGVhc2VWZXJzaW9uKHRoaXMudmVyc2lvbiwgcGFjbWFrLlRhcmdldE5hbWUuSkFWQSk7XG4gICAgdGhpcy5qc2lpID0gb3B0aW9ucy5qc2lpID8/IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdldCBucG1UYXJiYWxsRmlsZSgpIHtcbiAgICBpZiAodGhpcy5qc2lpKSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5tb2R1bGVOYW1lfUAke3RoaXMudmVyc2lvbn0uanNpaS50Z3pgO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy5tb2R1bGVOYW1lfS12JHt0aGlzLnZlcnNpb259LnRnemA7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBweXBpV2hlZWxGaWxlKCkge1xuICAgIGNvbnN0IFttYWpvciwgbWlub3IsIHBhdGNoLCBwcmVdID0gdGhpcy5weXBpVmVyc2lvbi5zcGxpdCgnLicpO1xuICAgIHJldHVybiBgJHt0aGlzLm1vZHVsZU5hbWUucmVwbGFjZSgvLS9nLCAnXycpfS0ke21ham9yfS4ke21pbm9yfS4ke3BhdGNofSR7cHJlID8/ICcnfS1weTMtbm9uZS1hbnkud2hsYDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgamF2YUphckZpbGUoKSB7XG4gICAgcmV0dXJuIGBvcmcvY2RrOHMvJHt0aGlzLm1vZHVsZU5hbWV9LyR7dGhpcy5tYXZlblZlcnNpb259LyR7dGhpcy5tb2R1bGVOYW1lfS0ke3RoaXMubWF2ZW5WZXJzaW9ufS5qYXJgO1xuICB9XG5cbiAgcHVibGljIGdldCBucG1EZXBlbmRlbmN5KCkge1xuICAgIHJldHVybiBgJHt0aGlzLm1vZHVsZU5hbWV9QF4ke3RoaXMubnBtVmVyc2lvbn1gO1xuICB9XG5cbiAgcHVibGljIGdldCBweXBpRGVwZW5kZW5jeSgpIHtcbiAgICByZXR1cm4gYCR7dGhpcy5tb2R1bGVOYW1lfX49JHt0aGlzLnB5cGlWZXJzaW9ufWA7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG1hdmVuRGVwZW5kZW5jeSgpIHtcbiAgICByZXR1cm4gdGhpcy5tYXZlblZlcnNpb247XG4gIH1cblxuICBwcml2YXRlIHJlc29sdmVWZXJzaW9uKG1vZHVsZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAobW9kdWxlID09PSAnY2RrOHMtY2xpJykge1xuICAgICAgbW9kdWxlID0gJy4uLy4uLy4uLyc7XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbiAgICByZXR1cm4gcmVxdWlyZShgJHttb2R1bGV9L3BhY2thZ2UuanNvbmApLnZlcnNpb247XG4gIH1cbn1cblxuXG5tb2R1bGUuZXhwb3J0cyA9IG5ldyBDb21tYW5kKCk7XG4iXX0=
|
package/package.json
CHANGED
|
@@ -15,6 +15,11 @@
|
|
|
15
15
|
"default": "npx projen default",
|
|
16
16
|
"eject": "npx projen eject",
|
|
17
17
|
"eslint": "npx projen eslint",
|
|
18
|
+
"integ:init": "npx projen integ:init",
|
|
19
|
+
"integ:init:go-app": "npx projen integ:init:go-app",
|
|
20
|
+
"integ:init:java-app": "npx projen integ:init:java-app",
|
|
21
|
+
"integ:init:python-app": "npx projen integ:init:python-app",
|
|
22
|
+
"integ:init:typescript-app": "npx projen integ:init:typescript-app",
|
|
18
23
|
"package": "npx projen package",
|
|
19
24
|
"post-compile": "npx projen post-compile",
|
|
20
25
|
"post-upgrade": "npx projen post-upgrade",
|
|
@@ -36,7 +41,7 @@
|
|
|
36
41
|
"organization": false
|
|
37
42
|
},
|
|
38
43
|
"devDependencies": {
|
|
39
|
-
"@cdk8s/projen-common": "^0.0.
|
|
44
|
+
"@cdk8s/projen-common": "^0.0.18",
|
|
40
45
|
"@types/fs-extra": "^8",
|
|
41
46
|
"@types/glob": "^7.2.0",
|
|
42
47
|
"@types/jest": "^26.0.24",
|
|
@@ -55,21 +60,22 @@
|
|
|
55
60
|
"projen": "^0.58.17",
|
|
56
61
|
"standard-version": "^9",
|
|
57
62
|
"ts-jest": "^27",
|
|
63
|
+
"ts-node": "^10.8.1",
|
|
58
64
|
"typescript": "~4.7.4",
|
|
59
65
|
"typescript-json-schema": "^0.53.1"
|
|
60
66
|
},
|
|
61
67
|
"dependencies": {
|
|
62
68
|
"@types/node": "^12",
|
|
63
69
|
"ajv": "^8.11.0",
|
|
64
|
-
"cdk8s": "^2.3.
|
|
65
|
-
"cdk8s-plus-22": "^2.0.0-rc.
|
|
70
|
+
"cdk8s": "^2.3.40",
|
|
71
|
+
"cdk8s-plus-22": "^2.0.0-rc.32",
|
|
66
72
|
"codemaker": "^1.61.0",
|
|
67
73
|
"colors": "1.4.0",
|
|
68
74
|
"constructs": "^10.1.42",
|
|
69
75
|
"fs-extra": "^8",
|
|
70
76
|
"jsii-pacmak": "^1.61.0",
|
|
71
|
-
"jsii-srcmak": "^0.1.
|
|
72
|
-
"json2jsii": "^0.3.
|
|
77
|
+
"jsii-srcmak": "^0.1.603",
|
|
78
|
+
"json2jsii": "^0.3.52",
|
|
73
79
|
"sscaff": "^1.2.274",
|
|
74
80
|
"yaml": "2.0.0-11",
|
|
75
81
|
"yargs": "^15"
|
|
@@ -88,7 +94,7 @@
|
|
|
88
94
|
},
|
|
89
95
|
"main": "lib/index.js",
|
|
90
96
|
"license": "Apache-2.0",
|
|
91
|
-
"version": "2.0.
|
|
97
|
+
"version": "2.0.35",
|
|
92
98
|
"jest": {
|
|
93
99
|
"testMatch": [
|
|
94
100
|
"<rootDir>/src/**/__tests__/**/*.ts?(x)",
|
|
@@ -105,10 +111,12 @@
|
|
|
105
111
|
],
|
|
106
112
|
"coverageDirectory": "coverage",
|
|
107
113
|
"coveragePathIgnorePatterns": [
|
|
108
|
-
"/node_modules/"
|
|
114
|
+
"/node_modules/",
|
|
115
|
+
"/test/integ/"
|
|
109
116
|
],
|
|
110
117
|
"testPathIgnorePatterns": [
|
|
111
|
-
"/node_modules/"
|
|
118
|
+
"/node_modules/",
|
|
119
|
+
"/test/integ/"
|
|
112
120
|
],
|
|
113
121
|
"watchPathIgnorePatterns": [
|
|
114
122
|
"/node_modules/"
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import * as fs from 'fs';
|
|
2
|
+
import * as path from 'path';
|
|
3
|
+
import { typescript, github } from 'projen';
|
|
4
|
+
|
|
5
|
+
export function addIntegTests(project: typescript.TypeScriptProject) {
|
|
6
|
+
|
|
7
|
+
const integWorkflow = project.github!.addWorkflow('integ');
|
|
8
|
+
integWorkflow.on({ pullRequest: {}, workflowDispatch: {} });
|
|
9
|
+
|
|
10
|
+
const initTask = project.addTask('integ:init');
|
|
11
|
+
initTask.exec(`yarn run ${project.compileTask.name}`);
|
|
12
|
+
initTask.exec(`yarn run ${project.packageTask.name}`);
|
|
13
|
+
initTask.exec(jest('integ/init.test.ts'));
|
|
14
|
+
|
|
15
|
+
const templatesDir = path.join(__dirname, '..', 'templates');
|
|
16
|
+
for (const template of fs.readdirSync(templatesDir)) {
|
|
17
|
+
if (fs.statSync(path.join(templatesDir, template)).isDirectory()) {
|
|
18
|
+
const task = project.addTask(`integ:init:${template}`);
|
|
19
|
+
task.exec(`yarn run ${project.compileTask.name}`);
|
|
20
|
+
task.exec(`yarn run ${project.packageTask.name}`);
|
|
21
|
+
task.exec(jest(`integ/init.test.ts -t ${template}`));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// run all init tests on node 14
|
|
26
|
+
integWorkflow.addJob('init', {
|
|
27
|
+
runsOn: ['ubuntu-latest'],
|
|
28
|
+
permissions: { contents: github.workflows.JobPermission.READ },
|
|
29
|
+
steps: runSteps(initTask.name, '14', true, true),
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
// run typescript app on node 16 and 18 as well
|
|
33
|
+
const nodeVersions = [16, 18];
|
|
34
|
+
integWorkflow.addJob('init-typescript-app', {
|
|
35
|
+
runsOn: ['ubuntu-latest'],
|
|
36
|
+
strategy: {
|
|
37
|
+
failFast: false,
|
|
38
|
+
matrix: { domain: { nodeVersion: nodeVersions } },
|
|
39
|
+
},
|
|
40
|
+
permissions: {
|
|
41
|
+
contents: github.workflows.JobPermission.READ,
|
|
42
|
+
},
|
|
43
|
+
steps: runSteps('integ:init:typescript-app', '${{ matrix.nodeVersion }}', false, false),
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
project.autoMerge!.addConditions('status-success=init');
|
|
47
|
+
|
|
48
|
+
for (const nodeVersion of nodeVersions) {
|
|
49
|
+
project.autoMerge!.addConditions(`status-success=init-typescript-app (${nodeVersion})`);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
function jest(args: string) {
|
|
55
|
+
// we override 'testPathIgnorePatterns' so that it matches only integration tests
|
|
56
|
+
return `jest --testPathIgnorePatterns "^((?!integ).)*$" --passWithNoTests --all --updateSnapshot --coverageProvider=v8 ${args}`;
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
function runSteps(task: string, nodeVersion: string, python: boolean, go: boolean): github.workflows.JobStep[] {
|
|
60
|
+
const steps: github.workflows.JobStep[] = [
|
|
61
|
+
{ uses: 'actions/checkout@v2' },
|
|
62
|
+
{
|
|
63
|
+
name: 'Set up Node.js',
|
|
64
|
+
uses: 'actions/setup-node@v2',
|
|
65
|
+
with: { 'node-version': nodeVersion },
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
name: 'Install dependencies',
|
|
69
|
+
run: 'yarn install --frozen-lockfile',
|
|
70
|
+
},
|
|
71
|
+
];
|
|
72
|
+
|
|
73
|
+
if (python) {
|
|
74
|
+
steps.push({
|
|
75
|
+
name: 'Set up Python 3.x',
|
|
76
|
+
uses: 'actions/setup-python@v2',
|
|
77
|
+
with: {
|
|
78
|
+
'python-version': '3.x',
|
|
79
|
+
},
|
|
80
|
+
});
|
|
81
|
+
steps.push({
|
|
82
|
+
name: 'Install pipenv',
|
|
83
|
+
run: 'pip install pipenv',
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
if (go) {
|
|
88
|
+
steps.push({
|
|
89
|
+
name: 'Set up Go',
|
|
90
|
+
uses: 'actions/setup-go@v2',
|
|
91
|
+
with: {
|
|
92
|
+
'go-version': '1.16',
|
|
93
|
+
},
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
steps.push({
|
|
98
|
+
name: 'Run integration tests',
|
|
99
|
+
run: `yarn run ${task}`,
|
|
100
|
+
},
|
|
101
|
+
);
|
|
102
|
+
return steps;
|
|
103
|
+
}
|
|
@@ -8,8 +8,8 @@
|
|
|
8
8
|
"scripts": {
|
|
9
9
|
"import": "cdk8s import",
|
|
10
10
|
"synth": "cdk8s synth",
|
|
11
|
-
"compile": "tsc",
|
|
12
|
-
"watch": "tsc -w",
|
|
11
|
+
"compile": "./node_modules/typescript/bin/tsc",
|
|
12
|
+
"watch": "./node_modules/typescript/bin/tsc -w",
|
|
13
13
|
"test": "jest",
|
|
14
14
|
"build": "npm run compile && npm run test && npm run synth",
|
|
15
15
|
"upgrade": "npm i cdk8s@latest cdk8s-cli@latest",
|