projen 0.42.1 → 0.44.0
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/.jsii +438 -230
- package/API.md +177 -42
- package/docs/java.md +4 -6
- package/docs/python.md +1 -4
- package/docs/typescript.md +108 -0
- package/lib/awscdk/auto-discover.d.ts +7 -0
- package/lib/awscdk/auto-discover.js +6 -4
- package/lib/awscdk/awscdk-app-ts.d.ts +7 -28
- package/lib/awscdk/awscdk-app-ts.js +30 -37
- package/lib/awscdk/awscdk-construct.d.ts +13 -93
- package/lib/awscdk/awscdk-construct.js +49 -85
- package/lib/awscdk/awscdk-deps.d.ts +158 -0
- package/lib/awscdk/awscdk-deps.js +169 -0
- package/lib/awscdk/cdk-config.js +1 -1
- package/lib/awscdk/cdk-tasks.js +1 -1
- package/lib/awscdk/index.d.ts +1 -0
- package/lib/awscdk/index.js +2 -1
- package/lib/awscdk/integration-test.d.ts +7 -0
- package/lib/awscdk/integration-test.js +11 -9
- package/lib/awscdk/java-app.js +1 -1
- package/lib/awscdk/lambda-function.d.ts +8 -1
- package/lib/awscdk/lambda-function.js +14 -5
- package/lib/cdk/construct-lib.js +1 -1
- package/lib/cdk/jsii-docgen.js +1 -1
- package/lib/cdk/jsii-project.js +1 -1
- package/lib/cdk8s/cdk8s-app-ts.js +1 -1
- package/lib/cdk8s/cdk8s-construct.js +1 -1
- package/lib/cdktf/cdktf-construct.js +1 -1
- package/lib/component.js +1 -1
- package/lib/dependencies.js +1 -1
- package/lib/dev-env.js +1 -1
- package/lib/docker-compose.js +2 -2
- package/lib/file.js +1 -1
- package/lib/gitattributes.js +1 -1
- package/lib/github/auto-approve.js +1 -1
- package/lib/github/auto-merge.js +1 -1
- package/lib/github/dependabot.js +1 -1
- package/lib/github/github-project.js +1 -1
- package/lib/github/github.js +1 -1
- package/lib/github/mergify.js +1 -1
- package/lib/github/pr-template.js +1 -1
- package/lib/github/pull-request-lint.js +1 -1
- package/lib/github/stale.js +1 -1
- package/lib/github/task-workflow.js +1 -1
- package/lib/github/workflows.js +1 -1
- package/lib/gitpod.js +1 -1
- package/lib/ignore-file.js +1 -1
- package/lib/ini.js +1 -1
- package/lib/java/java-project.js +1 -1
- package/lib/java/junit.js +1 -1
- package/lib/java/maven-compile.js +1 -1
- package/lib/java/maven-packaging.js +1 -1
- package/lib/java/maven-sample.js +1 -1
- package/lib/java/pom.js +1 -1
- package/lib/java/projenrc.js +1 -1
- package/lib/javascript/bundler.js +1 -1
- package/lib/javascript/eslint.js +1 -1
- package/lib/javascript/jest.js +1 -1
- package/lib/javascript/node-package.js +6 -2
- package/lib/javascript/node-project.js +1 -1
- package/lib/javascript/npm-config.js +1 -1
- package/lib/javascript/projenrc.js +1 -1
- package/lib/javascript/typescript-config.js +1 -1
- package/lib/javascript/upgrade-dependencies.js +2 -2
- package/lib/json.js +1 -1
- package/lib/license.js +1 -1
- package/lib/logger.js +1 -1
- package/lib/makefile.js +1 -1
- package/lib/object-file.js +1 -1
- package/lib/project-build.js +1 -1
- package/lib/project.js +1 -1
- package/lib/projects.js +1 -1
- package/lib/projenrc-json.js +1 -1
- package/lib/python/pip.js +1 -1
- package/lib/python/poetry.js +2 -2
- package/lib/python/projenrc.js +6 -6
- package/lib/python/pytest.js +1 -1
- package/lib/python/python-project.d.ts +1 -1
- package/lib/python/python-project.js +3 -7
- package/lib/python/python-sample.js +1 -1
- package/lib/python/requirements-file.js +1 -1
- package/lib/python/setuppy.js +1 -1
- package/lib/python/setuptools.js +1 -1
- package/lib/python/venv.js +1 -1
- package/lib/readme.js +1 -1
- package/lib/release/publisher.js +1 -1
- package/lib/release/release-trigger.js +1 -1
- package/lib/release/release.js +1 -1
- package/lib/sample-file.js +2 -2
- package/lib/semver.js +1 -1
- package/lib/source-code.js +1 -1
- package/lib/task-runtime.js +1 -1
- package/lib/task.js +1 -1
- package/lib/tasks.js +1 -1
- package/lib/testing.js +1 -1
- package/lib/textfile.js +1 -1
- package/lib/toml.js +1 -1
- package/lib/typescript/projenrc.js +1 -1
- package/lib/typescript/typescript-typedoc.js +1 -1
- package/lib/typescript/typescript.js +3 -3
- package/lib/version.js +1 -1
- package/lib/vscode/devcontainer.js +1 -1
- package/lib/vscode/launch-config.js +1 -1
- package/lib/vscode/vscode.js +1 -1
- package/lib/web/next.js +3 -3
- package/lib/web/postcss.js +1 -1
- package/lib/web/react.js +4 -4
- package/lib/web/tailwind.js +1 -1
- package/lib/xmlfile.js +1 -1
- package/lib/yaml.js +1 -1
- package/package.json +1 -1
package/API.md
CHANGED
|
@@ -39,6 +39,7 @@ Name|Description
|
|
|
39
39
|
[YamlFile](#projen-yamlfile)|Represents a YAML file.
|
|
40
40
|
[awscdk.AutoDiscover](#projen-awscdk-autodiscover)|Automatically creates a `LambdaFunction` for all `.lambda.ts` files under the source directory of the project.
|
|
41
41
|
[awscdk.AwsCdkConstructLibrary](#projen-awscdk-awscdkconstructlibrary)|AWS CDK construct library project.
|
|
42
|
+
[awscdk.AwsCdkDeps](#projen-awscdk-awscdkdeps)|Manages dependencies on the AWS CDK.
|
|
42
43
|
[awscdk.AwsCdkJavaApp](#projen-awscdk-awscdkjavaapp)|AWS CDK app in Java.
|
|
43
44
|
[awscdk.AwsCdkTypeScriptApp](#projen-awscdk-awscdktypescriptapp)|AWS CDK app in TypeScript.
|
|
44
45
|
[awscdk.CdkConfig](#projen-awscdk-cdkconfig)|Represents cdk.json file.
|
|
@@ -162,7 +163,9 @@ Name|Description
|
|
|
162
163
|
[XmlFileOptions](#projen-xmlfileoptions)|Options for `XmlFile`.
|
|
163
164
|
[YamlFileOptions](#projen-yamlfileoptions)|Options for `JsonFile`.
|
|
164
165
|
[awscdk.AutoDiscoverOptions](#projen-awscdk-autodiscoveroptions)|Options for `AutoDiscover`.
|
|
165
|
-
[awscdk.AwsCdkConstructLibraryOptions](#projen-awscdk-awscdkconstructlibraryoptions)|Options for
|
|
166
|
+
[awscdk.AwsCdkConstructLibraryOptions](#projen-awscdk-awscdkconstructlibraryoptions)|Options for `AwsCdkConstructLibrary`.
|
|
167
|
+
[awscdk.AwsCdkDepsCommonOptions](#projen-awscdk-awscdkdepscommonoptions)|Options for `AwsCdkDeps`.
|
|
168
|
+
[awscdk.AwsCdkDepsOptions](#projen-awscdk-awscdkdepsoptions)|*No description*
|
|
166
169
|
[awscdk.AwsCdkJavaAppOptions](#projen-awscdk-awscdkjavaappoptions)|*No description*
|
|
167
170
|
[awscdk.AwsCdkTypeScriptAppOptions](#projen-awscdk-awscdktypescriptappoptions)|*No description*
|
|
168
171
|
[awscdk.CdkConfigCommonOptions](#projen-awscdk-cdkconfigcommonoptions)|Common options for `cdk.json`.
|
|
@@ -2852,6 +2855,7 @@ new awscdk.AutoDiscover(project: Project, options: AutoDiscoverOptions)
|
|
|
2852
2855
|
|
|
2853
2856
|
* **project** (<code>[Project](#projen-project)</code>) *No description*
|
|
2854
2857
|
* **options** (<code>[awscdk.AutoDiscoverOptions](#projen-awscdk-autodiscoveroptions)</code>) *No description*
|
|
2858
|
+
* **cdkDeps** (<code>[awscdk.AwsCdkDeps](#projen-awscdk-awscdkdeps)</code>) AWS CDK dependency manager.
|
|
2855
2859
|
* **srcdir** (<code>string</code>) Project source tree (relative to project output directory).
|
|
2856
2860
|
* **testdir** (<code>string</code>) Test source tree.
|
|
2857
2861
|
* **tsconfigPath** (<code>string</code>) Path to the tsconfig file to use for integration tests.
|
|
@@ -3019,14 +3023,14 @@ new awscdk.AwsCdkConstructLibrary(options: AwsCdkConstructLibraryOptions)
|
|
|
3019
3023
|
* **python** (<code>[cdk.JsiiPythonTarget](#projen-cdk-jsiipythontarget)</code>) *No description* __*Optional*__
|
|
3020
3024
|
* **rootdir** (<code>string</code>) *No description* __*Default*__: "."
|
|
3021
3025
|
* **catalog** (<code>[cdk.Catalog](#projen-cdk-catalog)</code>) Libraries will be picked up by the construct catalog when they are published to npm as jsii modules and will be published under:. __*Default*__: new version will be announced
|
|
3022
|
-
* **cdkVersion** (<code>string</code>) Minimum
|
|
3023
|
-
* **cdkAssert** (<code>boolean</code>) Install the @aws-cdk/assert library? __*Default*__:
|
|
3024
|
-
* **cdkAssertions** (<code>boolean</code>) Install the @aws-cdk/assertions library? __*Default*__:
|
|
3026
|
+
* **cdkVersion** (<code>string</code>) Minimum version of the AWS CDK to depend on.
|
|
3027
|
+
* **cdkAssert** (<code>boolean</code>) Install the @aws-cdk/assert library? __*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
|
|
3028
|
+
* **cdkAssertions** (<code>boolean</code>) Install the @aws-cdk/assertions library? __*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
|
|
3025
3029
|
* **cdkDependencies** (<code>Array<string></code>) Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed? __*Optional*__
|
|
3026
3030
|
* **cdkDependenciesAsDeps** (<code>boolean</code>) If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`). __*Default*__: true
|
|
3027
3031
|
* **cdkTestDependencies** (<code>Array<string></code>) AWS CDK modules required for testing. __*Optional*__
|
|
3028
|
-
* **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*
|
|
3029
|
-
* **constructsVersion** (<code>string</code>) Minimum
|
|
3032
|
+
* **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Optional*__
|
|
3033
|
+
* **constructsVersion** (<code>string</code>) Minimum version of the `constructs` library to depend on. __*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
|
|
3030
3034
|
* **lambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `aws_lambda.Function` for each `.lambda.ts` handler in your source tree. If this is disabled, you either need to explicitly call `aws_lambda.Function.autoDiscover()` or define a `new aws_lambda.Function()` for each handler. __*Default*__: true
|
|
3031
3035
|
* **lambdaOptions** (<code>[awscdk.LambdaFunctionCommonOptions](#projen-awscdk-lambdafunctioncommonoptions)</code>) Common options for all AWS Lambda functions. __*Default*__: default options
|
|
3032
3036
|
|
|
@@ -3037,24 +3041,18 @@ new awscdk.AwsCdkConstructLibrary(options: AwsCdkConstructLibraryOptions)
|
|
|
3037
3041
|
|
|
3038
3042
|
Name | Type | Description
|
|
3039
3043
|
-----|------|-------------
|
|
3040
|
-
**
|
|
3044
|
+
**cdkDeps**🔹 | <code>[awscdk.AwsCdkDeps](#projen-awscdk-awscdkdeps)</code> | <span></span>
|
|
3041
3045
|
**cdkVersion**🔹 | <code>string</code> | The target CDK version for this library.
|
|
3042
3046
|
**version**⚠️ | <code>string</code> | <span></span>
|
|
3043
3047
|
|
|
3044
3048
|
### Methods
|
|
3045
3049
|
|
|
3046
3050
|
|
|
3047
|
-
#### addCdkDependencies(...deps)
|
|
3051
|
+
#### addCdkDependencies(...deps)⚠️ <a id="projen-awscdk-awscdkconstructlibrary-addcdkdependencies"></a>
|
|
3048
3052
|
|
|
3049
|
-
Adds
|
|
3053
|
+
Adds dependencies to AWS CDK modules.
|
|
3050
3054
|
|
|
3051
|
-
|
|
3052
|
-
and "peerDependencies". This is because currently npm would not
|
|
3053
|
-
automatically install peer dependencies that are not declared as concerete
|
|
3054
|
-
dependencies by the consumer, so this is a little npm "hack" so that
|
|
3055
|
-
consumers will not need to depend on them directly if they don't interact
|
|
3056
|
-
with them.
|
|
3057
|
-
See `cdkDependenciesAsDeps` for changing the default behavior.
|
|
3055
|
+
Since this is a library project, dependencies will be added as peer dependencies.
|
|
3058
3056
|
|
|
3059
3057
|
```ts
|
|
3060
3058
|
addCdkDependencies(...deps: string[]): void
|
|
@@ -3065,9 +3063,9 @@ addCdkDependencies(...deps: string[]): void
|
|
|
3065
3063
|
|
|
3066
3064
|
|
|
3067
3065
|
|
|
3068
|
-
#### addCdkTestDependencies(...deps)
|
|
3066
|
+
#### addCdkTestDependencies(...deps)⚠️ <a id="projen-awscdk-awscdkconstructlibrary-addcdktestdependencies"></a>
|
|
3069
3067
|
|
|
3070
|
-
Adds CDK modules as
|
|
3068
|
+
Adds AWS CDK modules as dev dependencies.
|
|
3071
3069
|
|
|
3072
3070
|
```ts
|
|
3073
3071
|
addCdkTestDependencies(...deps: string[]): void
|
|
@@ -3080,6 +3078,86 @@ addCdkTestDependencies(...deps: string[]): void
|
|
|
3080
3078
|
|
|
3081
3079
|
|
|
3082
3080
|
|
|
3081
|
+
## class AwsCdkDeps 🔹 <a id="projen-awscdk-awscdkdeps"></a>
|
|
3082
|
+
|
|
3083
|
+
Manages dependencies on the AWS CDK.
|
|
3084
|
+
|
|
3085
|
+
__Submodule__: awscdk
|
|
3086
|
+
|
|
3087
|
+
__Extends__: [Component](#projen-component)
|
|
3088
|
+
|
|
3089
|
+
### Initializer
|
|
3090
|
+
|
|
3091
|
+
|
|
3092
|
+
|
|
3093
|
+
|
|
3094
|
+
```ts
|
|
3095
|
+
new awscdk.AwsCdkDeps(project: Project, options: AwsCdkDepsOptions)
|
|
3096
|
+
```
|
|
3097
|
+
|
|
3098
|
+
* **project** (<code>[Project](#projen-project)</code>) *No description*
|
|
3099
|
+
* **options** (<code>[awscdk.AwsCdkDepsOptions](#projen-awscdk-awscdkdepsoptions)</code>) *No description*
|
|
3100
|
+
* **cdkVersion** (<code>string</code>) Minimum version of the AWS CDK to depend on.
|
|
3101
|
+
* **cdkAssert** (<code>boolean</code>) Install the @aws-cdk/assert library? __*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
|
|
3102
|
+
* **cdkAssertions** (<code>boolean</code>) Install the @aws-cdk/assertions library? __*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
|
|
3103
|
+
* **cdkDependencies** (<code>Array<string></code>) Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed? __*Optional*__
|
|
3104
|
+
* **cdkDependenciesAsDeps** (<code>boolean</code>) If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`). __*Default*__: true
|
|
3105
|
+
* **cdkTestDependencies** (<code>Array<string></code>) AWS CDK modules required for testing. __*Optional*__
|
|
3106
|
+
* **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Optional*__
|
|
3107
|
+
* **constructsVersion** (<code>string</code>) Minimum version of the `constructs` library to depend on. __*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
|
|
3108
|
+
* **dependencyType** (<code>[DependencyType](#projen-dependencytype)</code>) The type of dependency to use for runtime AWS CDK and `constructs` modules.
|
|
3109
|
+
|
|
3110
|
+
|
|
3111
|
+
|
|
3112
|
+
### Properties
|
|
3113
|
+
|
|
3114
|
+
|
|
3115
|
+
Name | Type | Description
|
|
3116
|
+
-----|------|-------------
|
|
3117
|
+
**cdkDependenciesAsDeps**⚠️ | <code>boolean</code> | Whether CDK dependencies are added as normal dependencies (and peer dependencies).
|
|
3118
|
+
**cdkMajorVersion**🔹 | <code>number</code> | The major version of the AWS CDK (e.g. 1, 2, ...).
|
|
3119
|
+
**cdkMinimumVersion**🔹 | <code>string</code> | The minimum version of the AWS CDK (e.g. `2.0.0`).
|
|
3120
|
+
**cdkVersion**🔹 | <code>string</code> | The dependency requirement for AWS CDK (e.g. `^2.0.0`).
|
|
3121
|
+
|
|
3122
|
+
### Methods
|
|
3123
|
+
|
|
3124
|
+
|
|
3125
|
+
#### addV1Dependencies(...deps)🔹 <a id="projen-awscdk-awscdkdeps-addv1dependencies"></a>
|
|
3126
|
+
|
|
3127
|
+
Adds dependencies to AWS CDK modules.
|
|
3128
|
+
|
|
3129
|
+
The type of dependency is determined by the `dependencyType` option.
|
|
3130
|
+
|
|
3131
|
+
This method is not supported in CDK v2. Use `project.addPeerDeps()` or
|
|
3132
|
+
`project.addDeps()` as appropriate.
|
|
3133
|
+
|
|
3134
|
+
```ts
|
|
3135
|
+
addV1Dependencies(...deps: string[]): void
|
|
3136
|
+
```
|
|
3137
|
+
|
|
3138
|
+
* **deps** (<code>string</code>) names of cdk modules (e.g. `@aws-cdk/aws-lambda`).
|
|
3139
|
+
|
|
3140
|
+
|
|
3141
|
+
|
|
3142
|
+
|
|
3143
|
+
#### addV1DevDependencies(...deps)🔹 <a id="projen-awscdk-awscdkdeps-addv1devdependencies"></a>
|
|
3144
|
+
|
|
3145
|
+
Adds AWS CDK modules as dev dependencies.
|
|
3146
|
+
|
|
3147
|
+
This method is not supported in CDK v2. Use `project.addPeerDeps()` or
|
|
3148
|
+
`project.addDeps()` as appropriate.
|
|
3149
|
+
|
|
3150
|
+
```ts
|
|
3151
|
+
addV1DevDependencies(...deps: string[]): void
|
|
3152
|
+
```
|
|
3153
|
+
|
|
3154
|
+
* **deps** (<code>string</code>) names of cdk modules (e.g. `@aws-cdk/aws-lambda`).
|
|
3155
|
+
|
|
3156
|
+
|
|
3157
|
+
|
|
3158
|
+
|
|
3159
|
+
|
|
3160
|
+
|
|
3083
3161
|
## class AwsCdkJavaApp 🔹 <a id="projen-awscdk-awscdkjavaapp"></a>
|
|
3084
3162
|
|
|
3085
3163
|
AWS CDK app in Java.
|
|
@@ -3327,10 +3405,15 @@ new awscdk.AwsCdkTypeScriptApp(options: AwsCdkTypeScriptAppOptions)
|
|
|
3327
3405
|
* **requireApproval** (<code>[awscdk.ApprovalLevel](#projen-awscdk-approvallevel)</code>) To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them. __*Default*__: ApprovalLevel.BROADENING
|
|
3328
3406
|
* **watchExcludes** (<code>Array<string></code>) Glob patterns to exclude from `cdk watch`. __*Default*__: []
|
|
3329
3407
|
* **watchIncludes** (<code>Array<string></code>) Glob patterns to include in `cdk watch`. __*Default*__: []
|
|
3330
|
-
* **cdkVersion** (<code>string</code>) AWS CDK
|
|
3408
|
+
* **cdkVersion** (<code>string</code>) Minimum version of the AWS CDK to depend on.
|
|
3409
|
+
* **cdkAssert** (<code>boolean</code>) Install the @aws-cdk/assert library? __*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
|
|
3410
|
+
* **cdkAssertions** (<code>boolean</code>) Install the @aws-cdk/assertions library? __*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
|
|
3411
|
+
* **cdkDependencies** (<code>Array<string></code>) Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed? __*Optional*__
|
|
3412
|
+
* **cdkDependenciesAsDeps** (<code>boolean</code>) If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`). __*Default*__: true
|
|
3413
|
+
* **cdkTestDependencies** (<code>Array<string></code>) AWS CDK modules required for testing. __*Optional*__
|
|
3414
|
+
* **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Optional*__
|
|
3415
|
+
* **constructsVersion** (<code>string</code>) Minimum version of the `constructs` library to depend on. __*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
|
|
3331
3416
|
* **appEntrypoint** (<code>string</code>) The CDK app's entrypoint (relative to the source directory, which is "src" by default). __*Default*__: "main.ts"
|
|
3332
|
-
* **cdkDependencies** (<code>Array<string></code>) Which AWS CDK modules (those that start with "@aws-cdk/") this app uses. __*Optional*__
|
|
3333
|
-
* **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Default*__: false
|
|
3334
3417
|
* **lambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `awscdk.LambdaFunction` for each `.lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project. __*Default*__: true
|
|
3335
3418
|
* **lambdaOptions** (<code>[awscdk.LambdaFunctionCommonOptions](#projen-awscdk-lambdafunctioncommonoptions)</code>) Common options for all AWS Lambda functions. __*Default*__: default options
|
|
3336
3419
|
|
|
@@ -3343,6 +3426,7 @@ Name | Type | Description
|
|
|
3343
3426
|
-----|------|-------------
|
|
3344
3427
|
**appEntrypoint**🔹 | <code>string</code> | The CDK app entrypoint.
|
|
3345
3428
|
**cdkConfig**🔹 | <code>[awscdk.CdkConfig](#projen-awscdk-cdkconfig)</code> | cdk.json configuration.
|
|
3429
|
+
**cdkDeps**🔹 | <code>[awscdk.AwsCdkDeps](#projen-awscdk-awscdkdeps)</code> | <span></span>
|
|
3346
3430
|
**cdkTasks**🔹 | <code>[awscdk.CdkTasks](#projen-awscdk-cdktasks)</code> | Common CDK tasks.
|
|
3347
3431
|
**cdkVersion**🔹 | <code>string</code> | The CDK version this app is using.
|
|
3348
3432
|
|
|
@@ -3593,14 +3677,14 @@ new awscdk.ConstructLibraryAws(options: AwsCdkConstructLibraryOptions)
|
|
|
3593
3677
|
* **python** (<code>[cdk.JsiiPythonTarget](#projen-cdk-jsiipythontarget)</code>) *No description* __*Optional*__
|
|
3594
3678
|
* **rootdir** (<code>string</code>) *No description* __*Default*__: "."
|
|
3595
3679
|
* **catalog** (<code>[cdk.Catalog](#projen-cdk-catalog)</code>) Libraries will be picked up by the construct catalog when they are published to npm as jsii modules and will be published under:. __*Default*__: new version will be announced
|
|
3596
|
-
* **cdkVersion** (<code>string</code>) Minimum
|
|
3597
|
-
* **cdkAssert** (<code>boolean</code>) Install the @aws-cdk/assert library? __*Default*__:
|
|
3598
|
-
* **cdkAssertions** (<code>boolean</code>) Install the @aws-cdk/assertions library? __*Default*__:
|
|
3680
|
+
* **cdkVersion** (<code>string</code>) Minimum version of the AWS CDK to depend on.
|
|
3681
|
+
* **cdkAssert** (<code>boolean</code>) Install the @aws-cdk/assert library? __*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
|
|
3682
|
+
* **cdkAssertions** (<code>boolean</code>) Install the @aws-cdk/assertions library? __*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
|
|
3599
3683
|
* **cdkDependencies** (<code>Array<string></code>) Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed? __*Optional*__
|
|
3600
3684
|
* **cdkDependenciesAsDeps** (<code>boolean</code>) If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`). __*Default*__: true
|
|
3601
3685
|
* **cdkTestDependencies** (<code>Array<string></code>) AWS CDK modules required for testing. __*Optional*__
|
|
3602
|
-
* **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*
|
|
3603
|
-
* **constructsVersion** (<code>string</code>) Minimum
|
|
3686
|
+
* **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Optional*__
|
|
3687
|
+
* **constructsVersion** (<code>string</code>) Minimum version of the `constructs` library to depend on. __*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
|
|
3604
3688
|
* **lambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `aws_lambda.Function` for each `.lambda.ts` handler in your source tree. If this is disabled, you either need to explicitly call `aws_lambda.Function.autoDiscover()` or define a `new aws_lambda.Function()` for each handler. __*Default*__: true
|
|
3605
3689
|
* **lambdaOptions** (<code>[awscdk.LambdaFunctionCommonOptions](#projen-awscdk-lambdafunctioncommonoptions)</code>) Common options for all AWS Lambda functions. __*Default*__: default options
|
|
3606
3690
|
|
|
@@ -3627,6 +3711,7 @@ new awscdk.IntegrationTest(project: Project, options: IntegrationTestOptions)
|
|
|
3627
3711
|
* **project** (<code>[Project](#projen-project)</code>) *No description*
|
|
3628
3712
|
* **options** (<code>[awscdk.IntegrationTestOptions](#projen-awscdk-integrationtestoptions)</code>) *No description*
|
|
3629
3713
|
* **destroyAfterDeploy** (<code>boolean</code>) Destroy the test app after a successful deployment. __*Default*__: true
|
|
3714
|
+
* **cdkDeps** (<code>[awscdk.AwsCdkDeps](#projen-awscdk-awscdkdeps)</code>) AWS CDK dependency manager.
|
|
3630
3715
|
* **entrypoint** (<code>string</code>) A path from the project root directory to a TypeScript file which contains the integration test app.
|
|
3631
3716
|
* **tsconfigPath** (<code>string</code>) The path of the tsconfig.json file to use when running integration test cdk apps.
|
|
3632
3717
|
|
|
@@ -3676,6 +3761,7 @@ new awscdk.LambdaFunction(project: Project, options: LambdaFunctionOptions)
|
|
|
3676
3761
|
* **options** (<code>[awscdk.LambdaFunctionOptions](#projen-awscdk-lambdafunctionoptions)</code>) Options.
|
|
3677
3762
|
* **bundlingOptions** (<code>[javascript.BundlingOptions](#projen-javascript-bundlingoptions)</code>) Bundling options for this AWS Lambda function. __*Default*__: defaults
|
|
3678
3763
|
* **runtime** (<code>[awscdk.LambdaRuntime](#projen-awscdk-lambdaruntime)</code>) The node.js version to target. __*Default*__: Runtime.NODEJS_14_X
|
|
3764
|
+
* **cdkDeps** (<code>[awscdk.AwsCdkDeps](#projen-awscdk-awscdkdeps)</code>) AWS CDK dependency manager.
|
|
3679
3765
|
* **entrypoint** (<code>string</code>) A path from the project root directory to a TypeScript file which contains the AWS Lambda handler entrypoint (exports a `handler` function).
|
|
3680
3766
|
* **constructFile** (<code>string</code>) The name of the generated TypeScript source file. __*Default*__: The name of the entrypoint file, with the `-function.ts` suffix instead of `.lambda.ts`.
|
|
3681
3767
|
* **constructName** (<code>string</code>) The name of the generated `lambda.Function` subclass. __*Default*__: A pascal cased version of the name of the entrypoint file, with the extension `Function` (e.g. `ResizeImageFunction`).
|
|
@@ -7026,7 +7112,7 @@ new python.PythonProject(options: PythonProjectOptions)
|
|
|
7026
7112
|
* **devDeps** (<code>Array<string></code>) List of dev dependencies for this project. __*Default*__: []
|
|
7027
7113
|
* **pip** (<code>boolean</code>) Use pip with a requirements.txt file to track project dependencies. __*Default*__: true
|
|
7028
7114
|
* **poetry** (<code>boolean</code>) Use poetry to manage your project dependencies, virtual environment, and (optional) packaging/publishing. __*Default*__: false
|
|
7029
|
-
* **projenrcPython** (<code>boolean</code>) Use projenrc in python. __*Default*__:
|
|
7115
|
+
* **projenrcPython** (<code>boolean</code>) Use projenrc in python. __*Default*__: true
|
|
7030
7116
|
* **projenrcPythonOptions** (<code>[python.ProjenrcOptions](#projen-python-projenrcoptions)</code>) Options related to projenrc in python. __*Default*__: default options
|
|
7031
7117
|
* **pytest** (<code>boolean</code>) Include pytest tests. __*Default*__: true
|
|
7032
7118
|
* **pytestOptions** (<code>[python.PytestOptions](#projen-python-pytestoptions)</code>) pytest options. __*Default*__: defaults
|
|
@@ -10004,6 +10090,7 @@ Options for `AutoDiscover`.
|
|
|
10004
10090
|
|
|
10005
10091
|
Name | Type | Description
|
|
10006
10092
|
-----|------|-------------
|
|
10093
|
+
**cdkDeps**🔹 | <code>[awscdk.AwsCdkDeps](#projen-awscdk-awscdkdeps)</code> | AWS CDK dependency manager.
|
|
10007
10094
|
**srcdir**🔹 | <code>string</code> | Project source tree (relative to project output directory).
|
|
10008
10095
|
**testdir**🔹 | <code>string</code> | Test source tree.
|
|
10009
10096
|
**tsconfigPath**🔹 | <code>string</code> | Path to the tsconfig file to use for integration tests.
|
|
@@ -10014,7 +10101,7 @@ Name | Type | Description
|
|
|
10014
10101
|
## struct AwsCdkConstructLibraryOptions 🔹 <a id="projen-awscdk-awscdkconstructlibraryoptions"></a>
|
|
10015
10102
|
|
|
10016
10103
|
|
|
10017
|
-
Options for
|
|
10104
|
+
Options for `AwsCdkConstructLibrary`.
|
|
10018
10105
|
|
|
10019
10106
|
|
|
10020
10107
|
|
|
@@ -10022,7 +10109,7 @@ Name | Type | Description
|
|
|
10022
10109
|
-----|------|-------------
|
|
10023
10110
|
**author**🔹 | <code>string</code> | The name of the library author.
|
|
10024
10111
|
**authorAddress**🔹 | <code>string</code> | Email or URL of the library author.
|
|
10025
|
-
**cdkVersion**🔹 | <code>string</code> | Minimum
|
|
10112
|
+
**cdkVersion**🔹 | <code>string</code> | Minimum version of the AWS CDK to depend on.
|
|
10026
10113
|
**defaultReleaseBranch**🔹 | <code>string</code> | The name of the main release branch.
|
|
10027
10114
|
**name**🔹 | <code>string</code> | This is the name of your project.
|
|
10028
10115
|
**repositoryUrl**🔹 | <code>string</code> | Git repository URL.
|
|
@@ -10043,19 +10130,19 @@ Name | Type | Description
|
|
|
10043
10130
|
**bundledDeps**?🔹 | <code>Array<string></code> | List of dependencies to bundle into this module.<br/>__*Optional*__
|
|
10044
10131
|
**bundlerOptions**?🔹 | <code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code> | Options for `Bundler`.<br/>__*Optional*__
|
|
10045
10132
|
**catalog**?🔹 | <code>[cdk.Catalog](#projen-cdk-catalog)</code> | Libraries will be picked up by the construct catalog when they are published to npm as jsii modules and will be published under:.<br/>__*Default*__: new version will be announced
|
|
10046
|
-
**cdkAssert**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assert library?<br/>__*Default*__:
|
|
10047
|
-
**cdkAssertions**?🔹 | <code>boolean</code> | Install the @aws-cdk/assertions library?<br/>__*Default*__:
|
|
10133
|
+
**cdkAssert**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assert library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
|
|
10134
|
+
**cdkAssertions**?🔹 | <code>boolean</code> | Install the @aws-cdk/assertions library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
|
|
10048
10135
|
**cdkDependencies**?⚠️ | <code>Array<string></code> | Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed?<br/>__*Optional*__
|
|
10049
10136
|
**cdkDependenciesAsDeps**?⚠️ | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
|
|
10050
10137
|
**cdkTestDependencies**?⚠️ | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
|
|
10051
|
-
**cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*
|
|
10138
|
+
**cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Optional*__
|
|
10052
10139
|
**clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
|
|
10053
10140
|
**codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for publishing npm package to AWS CodeArtifact.<br/>__*Default*__: undefined
|
|
10054
10141
|
**codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
|
|
10055
10142
|
**codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
|
|
10056
10143
|
**compat**?🔹 | <code>boolean</code> | Automatically run API compatibility test against the latest version published to npm after compilation.<br/>__*Default*__: false
|
|
10057
10144
|
**compatIgnore**?🔹 | <code>string</code> | Name of the ignore file for API compatibility tests.<br/>__*Default*__: ".compatignore"
|
|
10058
|
-
**constructsVersion**?🔹 | <code>string</code> | Minimum
|
|
10145
|
+
**constructsVersion**?🔹 | <code>string</code> | Minimum version of the `constructs` library to depend on.<br/>__*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
|
|
10059
10146
|
**copyrightOwner**?🔹 | <code>string</code> | License copyright owner.<br/>__*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
|
|
10060
10147
|
**copyrightPeriod**?🔹 | <code>string</code> | The copyright years to put in the LICENSE file.<br/>__*Default*__: current year
|
|
10061
10148
|
**dependabot**?🔹 | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
|
|
@@ -10170,6 +10257,47 @@ Name | Type | Description
|
|
|
10170
10257
|
|
|
10171
10258
|
|
|
10172
10259
|
|
|
10260
|
+
## struct AwsCdkDepsCommonOptions 🔹 <a id="projen-awscdk-awscdkdepscommonoptions"></a>
|
|
10261
|
+
|
|
10262
|
+
|
|
10263
|
+
Options for `AwsCdkDeps`.
|
|
10264
|
+
|
|
10265
|
+
|
|
10266
|
+
|
|
10267
|
+
Name | Type | Description
|
|
10268
|
+
-----|------|-------------
|
|
10269
|
+
**cdkVersion**🔹 | <code>string</code> | Minimum version of the AWS CDK to depend on.
|
|
10270
|
+
**cdkAssert**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assert library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
|
|
10271
|
+
**cdkAssertions**?🔹 | <code>boolean</code> | Install the @aws-cdk/assertions library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
|
|
10272
|
+
**cdkDependencies**?⚠️ | <code>Array<string></code> | Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed?<br/>__*Optional*__
|
|
10273
|
+
**cdkDependenciesAsDeps**?⚠️ | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
|
|
10274
|
+
**cdkTestDependencies**?⚠️ | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
|
|
10275
|
+
**cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Optional*__
|
|
10276
|
+
**constructsVersion**?🔹 | <code>string</code> | Minimum version of the `constructs` library to depend on.<br/>__*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
|
|
10277
|
+
|
|
10278
|
+
|
|
10279
|
+
|
|
10280
|
+
## struct AwsCdkDepsOptions 🔹 <a id="projen-awscdk-awscdkdepsoptions"></a>
|
|
10281
|
+
|
|
10282
|
+
|
|
10283
|
+
|
|
10284
|
+
|
|
10285
|
+
|
|
10286
|
+
|
|
10287
|
+
Name | Type | Description
|
|
10288
|
+
-----|------|-------------
|
|
10289
|
+
**cdkVersion**🔹 | <code>string</code> | Minimum version of the AWS CDK to depend on.
|
|
10290
|
+
**dependencyType**🔹 | <code>[DependencyType](#projen-dependencytype)</code> | The type of dependency to use for runtime AWS CDK and `constructs` modules.
|
|
10291
|
+
**cdkAssert**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assert library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
|
|
10292
|
+
**cdkAssertions**?🔹 | <code>boolean</code> | Install the @aws-cdk/assertions library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
|
|
10293
|
+
**cdkDependencies**?⚠️ | <code>Array<string></code> | Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed?<br/>__*Optional*__
|
|
10294
|
+
**cdkDependenciesAsDeps**?⚠️ | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
|
|
10295
|
+
**cdkTestDependencies**?⚠️ | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
|
|
10296
|
+
**cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Optional*__
|
|
10297
|
+
**constructsVersion**?🔹 | <code>string</code> | Minimum version of the `constructs` library to depend on.<br/>__*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
|
|
10298
|
+
|
|
10299
|
+
|
|
10300
|
+
|
|
10173
10301
|
## struct AwsCdkJavaAppOptions 🔹 <a id="projen-awscdk-awscdkjavaappoptions"></a>
|
|
10174
10302
|
|
|
10175
10303
|
|
|
@@ -10239,7 +10367,7 @@ Name | Type | Description
|
|
|
10239
10367
|
|
|
10240
10368
|
Name | Type | Description
|
|
10241
10369
|
-----|------|-------------
|
|
10242
|
-
**cdkVersion**🔹 | <code>string</code> | AWS CDK
|
|
10370
|
+
**cdkVersion**🔹 | <code>string</code> | Minimum version of the AWS CDK to depend on.
|
|
10243
10371
|
**defaultReleaseBranch**🔹 | <code>string</code> | The name of the main release branch.
|
|
10244
10372
|
**name**🔹 | <code>string</code> | This is the name of your project.
|
|
10245
10373
|
**allowLibraryDependencies**?🔹 | <code>boolean</code> | Allow the project to include `peerDependencies` and `bundledDependencies`.<br/>__*Default*__: true
|
|
@@ -10260,13 +10388,18 @@ Name | Type | Description
|
|
|
10260
10388
|
**buildWorkflow**?🔹 | <code>boolean</code> | Define a GitHub workflow for building PRs.<br/>__*Default*__: true if not a subproject
|
|
10261
10389
|
**bundledDeps**?🔹 | <code>Array<string></code> | List of dependencies to bundle into this module.<br/>__*Optional*__
|
|
10262
10390
|
**bundlerOptions**?🔹 | <code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code> | Options for `Bundler`.<br/>__*Optional*__
|
|
10263
|
-
**
|
|
10264
|
-
**
|
|
10391
|
+
**cdkAssert**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assert library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
|
|
10392
|
+
**cdkAssertions**?🔹 | <code>boolean</code> | Install the @aws-cdk/assertions library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
|
|
10393
|
+
**cdkDependencies**?⚠️ | <code>Array<string></code> | Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed?<br/>__*Optional*__
|
|
10394
|
+
**cdkDependenciesAsDeps**?⚠️ | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
|
|
10395
|
+
**cdkTestDependencies**?⚠️ | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
|
|
10396
|
+
**cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Optional*__
|
|
10265
10397
|
**cdkout**?🔹 | <code>string</code> | cdk.out directory.<br/>__*Default*__: "cdk.out"
|
|
10266
10398
|
**clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
|
|
10267
10399
|
**codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for publishing npm package to AWS CodeArtifact.<br/>__*Default*__: undefined
|
|
10268
10400
|
**codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
|
|
10269
10401
|
**codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
|
|
10402
|
+
**constructsVersion**?🔹 | <code>string</code> | Minimum version of the `constructs` library to depend on.<br/>__*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
|
|
10270
10403
|
**context**?🔹 | <code>Map<string, string></code> | Additional context to include in `cdk.json`.<br/>__*Default*__: no additional context
|
|
10271
10404
|
**copyrightOwner**?🔹 | <code>string</code> | License copyright owner.<br/>__*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
|
|
10272
10405
|
**copyrightPeriod**?🔹 | <code>string</code> | The copyright years to put in the LICENSE file.<br/>__*Default*__: current year
|
|
@@ -10428,7 +10561,7 @@ Name | Type | Description
|
|
|
10428
10561
|
-----|------|-------------
|
|
10429
10562
|
**author**⚠️ | <code>string</code> | The name of the library author.
|
|
10430
10563
|
**authorAddress**⚠️ | <code>string</code> | Email or URL of the library author.
|
|
10431
|
-
**cdkVersion**⚠️ | <code>string</code> | Minimum
|
|
10564
|
+
**cdkVersion**⚠️ | <code>string</code> | Minimum version of the AWS CDK to depend on.
|
|
10432
10565
|
**defaultReleaseBranch**⚠️ | <code>string</code> | The name of the main release branch.
|
|
10433
10566
|
**name**⚠️ | <code>string</code> | This is the name of your project.
|
|
10434
10567
|
**repositoryUrl**⚠️ | <code>string</code> | Git repository URL.
|
|
@@ -10449,19 +10582,19 @@ Name | Type | Description
|
|
|
10449
10582
|
**bundledDeps**?⚠️ | <code>Array<string></code> | List of dependencies to bundle into this module.<br/>__*Optional*__
|
|
10450
10583
|
**bundlerOptions**?⚠️ | <code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code> | Options for `Bundler`.<br/>__*Optional*__
|
|
10451
10584
|
**catalog**?⚠️ | <code>[cdk.Catalog](#projen-cdk-catalog)</code> | Libraries will be picked up by the construct catalog when they are published to npm as jsii modules and will be published under:.<br/>__*Default*__: new version will be announced
|
|
10452
|
-
**cdkAssert**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assert library?<br/>__*Default*__:
|
|
10453
|
-
**cdkAssertions**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assertions library?<br/>__*Default*__:
|
|
10585
|
+
**cdkAssert**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assert library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.0.0 < 2.0.0
|
|
10586
|
+
**cdkAssertions**?⚠️ | <code>boolean</code> | Install the @aws-cdk/assertions library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
|
|
10454
10587
|
**cdkDependencies**?⚠️ | <code>Array<string></code> | Which AWS CDK modules (those that start with "@aws-cdk/") does this library require when consumed?<br/>__*Optional*__
|
|
10455
10588
|
**cdkDependenciesAsDeps**?⚠️ | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
|
|
10456
10589
|
**cdkTestDependencies**?⚠️ | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
|
|
10457
|
-
**cdkVersionPinning**?⚠️ | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*
|
|
10590
|
+
**cdkVersionPinning**?⚠️ | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Optional*__
|
|
10458
10591
|
**clobber**?⚠️ | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
|
|
10459
10592
|
**codeArtifactOptions**?⚠️ | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for publishing npm package to AWS CodeArtifact.<br/>__*Default*__: undefined
|
|
10460
10593
|
**codeCov**?⚠️ | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
|
|
10461
10594
|
**codeCovTokenSecret**?⚠️ | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
|
|
10462
10595
|
**compat**?⚠️ | <code>boolean</code> | Automatically run API compatibility test against the latest version published to npm after compilation.<br/>__*Default*__: false
|
|
10463
10596
|
**compatIgnore**?⚠️ | <code>string</code> | Name of the ignore file for API compatibility tests.<br/>__*Default*__: ".compatignore"
|
|
10464
|
-
**constructsVersion**?⚠️ | <code>string</code> | Minimum
|
|
10597
|
+
**constructsVersion**?⚠️ | <code>string</code> | Minimum version of the `constructs` library to depend on.<br/>__*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
|
|
10465
10598
|
**copyrightOwner**?⚠️ | <code>string</code> | License copyright owner.<br/>__*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
|
|
10466
10599
|
**copyrightPeriod**?⚠️ | <code>string</code> | The copyright years to put in the LICENSE file.<br/>__*Default*__: current year
|
|
10467
10600
|
**dependabot**?⚠️ | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
|
|
@@ -10598,6 +10731,7 @@ Options for `IntegrationTest`.
|
|
|
10598
10731
|
|
|
10599
10732
|
Name | Type | Description
|
|
10600
10733
|
-----|------|-------------
|
|
10734
|
+
**cdkDeps**🔹 | <code>[awscdk.AwsCdkDeps](#projen-awscdk-awscdkdeps)</code> | AWS CDK dependency manager.
|
|
10601
10735
|
**entrypoint**🔹 | <code>string</code> | A path from the project root directory to a TypeScript file which contains the integration test app.
|
|
10602
10736
|
**tsconfigPath**🔹 | <code>string</code> | The path of the tsconfig.json file to use when running integration test cdk apps.
|
|
10603
10737
|
**destroyAfterDeploy**?🔹 | <code>boolean</code> | Destroy the test app after a successful deployment.<br/>__*Default*__: true
|
|
@@ -10630,6 +10764,7 @@ Options for `Function`.
|
|
|
10630
10764
|
|
|
10631
10765
|
Name | Type | Description
|
|
10632
10766
|
-----|------|-------------
|
|
10767
|
+
**cdkDeps**🔹 | <code>[awscdk.AwsCdkDeps](#projen-awscdk-awscdkdeps)</code> | AWS CDK dependency manager.
|
|
10633
10768
|
**entrypoint**🔹 | <code>string</code> | A path from the project root directory to a TypeScript file which contains the AWS Lambda handler entrypoint (exports a `handler` function).
|
|
10634
10769
|
**bundlingOptions**?🔹 | <code>[javascript.BundlingOptions](#projen-javascript-bundlingoptions)</code> | Bundling options for this AWS Lambda function.<br/>__*Default*__: defaults
|
|
10635
10770
|
**constructFile**?🔹 | <code>string</code> | The name of the generated TypeScript source file.<br/>__*Default*__: The name of the entrypoint file, with the `-function.ts` suffix instead of `.lambda.ts`.
|
|
@@ -12849,7 +12984,7 @@ Name | Type | Description
|
|
|
12849
12984
|
**projenCommand**?🔹 | <code>string</code> | The shell command to use in order to run the projen CLI.<br/>__*Default*__: "npx projen"
|
|
12850
12985
|
**projenrcJson**?🔹 | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.<br/>__*Default*__: false
|
|
12851
12986
|
**projenrcJsonOptions**?🔹 | <code>[ProjenrcOptions](#projen-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
|
|
12852
|
-
**projenrcPython**?🔹 | <code>boolean</code> | Use projenrc in python.<br/>__*Default*__:
|
|
12987
|
+
**projenrcPython**?🔹 | <code>boolean</code> | Use projenrc in python.<br/>__*Default*__: true
|
|
12853
12988
|
**projenrcPythonOptions**?🔹 | <code>[python.ProjenrcOptions](#projen-python-projenrcoptions)</code> | Options related to projenrc in python.<br/>__*Default*__: default options
|
|
12854
12989
|
**pytest**?🔹 | <code>boolean</code> | Include pytest tests.<br/>__*Default*__: true
|
|
12855
12990
|
**pytestOptions**?🔹 | <code>[python.PytestOptions](#projen-python-pytestoptions)</code> | pytest options.<br/>__*Default*__: defaults
|
package/docs/java.md
CHANGED
|
@@ -46,14 +46,12 @@ const project = new java.JavaProject({
|
|
|
46
46
|
project.synth();
|
|
47
47
|
```
|
|
48
48
|
|
|
49
|
-
|
|
50
|
-
|
|
49
|
+
It is possible to create your projenrc file in java. In the future, this will be
|
|
50
|
+
the default, but at the moment you need to add some configuration. See the
|
|
51
|
+
[`projenrc.java`](#projenrcjava) section for details.
|
|
51
52
|
|
|
52
53
|
To modify your project definitions, edit `.projenrc.js` and run `projen` again
|
|
53
|
-
to re-synthesize your project. The following sections describe the various
|
|
54
|
-
features of your project.
|
|
55
|
-
|
|
56
|
-
The following sections describe the various features of Java projects.
|
|
54
|
+
to re-synthesize your project. The following sections describe the various features of Java projects.
|
|
57
55
|
|
|
58
56
|
## Versioning
|
|
59
57
|
|
package/docs/python.md
CHANGED
|
@@ -47,10 +47,7 @@ project.synth();
|
|
|
47
47
|
> specifying your project definitions in python.
|
|
48
48
|
|
|
49
49
|
To modify your project definitions, edit `.projenrc.js` and run `projen` again
|
|
50
|
-
to re-synthesize your project. The following sections describe the various
|
|
51
|
-
features of your project.
|
|
52
|
-
|
|
53
|
-
The following sections describe the various features of Python projects.
|
|
50
|
+
to re-synthesize your project. The following sections describe the various features of Python projects.
|
|
54
51
|
|
|
55
52
|
## Managing environments, dependencies, and packaging
|
|
56
53
|
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
# TypeScript Projects
|
|
2
|
+
|
|
3
|
+
To create a new TypeScript project, use `projen new typescript`:
|
|
4
|
+
|
|
5
|
+
```shell
|
|
6
|
+
npx projen new typescript
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
This will create a `.projenrc.js` file which defines your project. If you
|
|
10
|
+
instead would like to define your project in TypeScript, use the
|
|
11
|
+
`--projenrc-ts` flag to create a `.projenrc.ts` file:
|
|
12
|
+
|
|
13
|
+
```shell
|
|
14
|
+
npx projen new typescript --projenrc-ts
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
`projen new` will synthesize a standard project directory structure with some sample
|
|
18
|
+
code.
|
|
19
|
+
|
|
20
|
+
```shell
|
|
21
|
+
├── src
|
|
22
|
+
│ ├── index.ts
|
|
23
|
+
├── test
|
|
24
|
+
│ ├── hello.test.ts
|
|
25
|
+
├── node_modules
|
|
26
|
+
├── package.json
|
|
27
|
+
└── tsconfig.json
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
The default options will set up your `tsconfig` root directory as `src` and your
|
|
31
|
+
out directory as `lib`. By default the `test` directory is not compiled to
|
|
32
|
+
JavaScript and instead compiled when `npx projen test` is executed.
|
|
33
|
+
|
|
34
|
+
The `projen new` command will also generate a `.projenrc.js` file which includes
|
|
35
|
+
the definition of your project with any options you specified in the command
|
|
36
|
+
line:
|
|
37
|
+
|
|
38
|
+
```js
|
|
39
|
+
const { typescript } = require('projen');
|
|
40
|
+
const project = new typescript.TypeScriptProject({
|
|
41
|
+
defaultReleaseBranch: 'main',
|
|
42
|
+
name: 'my-project',
|
|
43
|
+
});
|
|
44
|
+
project.synth();
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
To modify your project definitions, edit `.projenrc.js` and run `projen` again
|
|
48
|
+
to re-synthesize your project. The following sections describe the various
|
|
49
|
+
features of your TypeScript project.
|
|
50
|
+
|
|
51
|
+
## Dependencies
|
|
52
|
+
|
|
53
|
+
You can specify dependencies in your project via the `deps`, `devDeps`, and
|
|
54
|
+
`peerDeps` options similar to what you might expect in a `package.json` file.
|
|
55
|
+
|
|
56
|
+
The recommendation is to only specify the module name here (e.g. `express`).
|
|
57
|
+
This will behave similar to yarn add or npm install in the sense that it will
|
|
58
|
+
add the module as a dependency to your package.json file with the latest version
|
|
59
|
+
(`^`). You can specify semver requirements in the same syntax passed to npm i or
|
|
60
|
+
yarn add (e.g. `express@^2`) and this will be what your `package.json` will
|
|
61
|
+
eventually include.
|
|
62
|
+
|
|
63
|
+
## Migrating your TypeScript Project to Projen
|
|
64
|
+
|
|
65
|
+
Projen provides some opinionated defaults that may be different than the defaults
|
|
66
|
+
you rely on in your existing TypeScript Project. This section attempts to document
|
|
67
|
+
some of the common themes to look out for when migrating an existing TypeScript
|
|
68
|
+
project to Projen.
|
|
69
|
+
|
|
70
|
+
### Default Directory Structure
|
|
71
|
+
|
|
72
|
+
The most important is the default project structure. Projen expects all source code
|
|
73
|
+
to be in the `src` directory and will write compiled `.js` and `.d.ts` files to the
|
|
74
|
+
`lib` directory. Test files are expected in the `test` directory and not compiled
|
|
75
|
+
to javascript. Instead, Projen configures `Jest` to compile `.ts` files when testing.
|
|
76
|
+
|
|
77
|
+
As this is only one of many structures for valid TypeScript projects, your migrated
|
|
78
|
+
project may not work out-of-the-box with Projen. We recommend that you take the
|
|
79
|
+
time to fully migrate to the expected project structure so that you can take full
|
|
80
|
+
advantage of Projen management on your repository.
|
|
81
|
+
|
|
82
|
+
However, you can also configure your `.projenrc.js` file to reflect your current
|
|
83
|
+
project structure. A `TypeScriptProject` exposes all options in a `tsConfig` file
|
|
84
|
+
so you can manually set the structure you want. Here is an example for specifying a
|
|
85
|
+
structure where the TypeScript compiler finds all TypeScript files recursively in your
|
|
86
|
+
repository:
|
|
87
|
+
|
|
88
|
+
```js
|
|
89
|
+
const { typescript } = require('projen');
|
|
90
|
+
const project = new typescript.TypeScriptProject({
|
|
91
|
+
...
|
|
92
|
+
tsConfig: {
|
|
93
|
+
compilerOptions: {
|
|
94
|
+
rootDir: '.',
|
|
95
|
+
outDir: '.',
|
|
96
|
+
},
|
|
97
|
+
include: ['**/*.ts'], // all typescript files recursively
|
|
98
|
+
},
|
|
99
|
+
});
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Dependency Versions
|
|
103
|
+
|
|
104
|
+
As described in the section above, Projen recommends that you list your dependencies
|
|
105
|
+
only by module name and have Projen install the latest version of the package. A
|
|
106
|
+
consequence of this recommendation is that when migrating, you may unknowingly update
|
|
107
|
+
your dependencies to incompatible versions. You can always specify specific semvar
|
|
108
|
+
requirements (e.g. `express@^2`) if necessary.
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Component } from '../component';
|
|
2
2
|
import { Project } from '../project';
|
|
3
|
+
import { AwsCdkDeps } from './awscdk-deps';
|
|
3
4
|
import { LambdaFunctionCommonOptions } from './lambda-function';
|
|
4
5
|
/**
|
|
5
6
|
* (experimental) Options for `AutoDiscover`.
|
|
@@ -31,6 +32,12 @@ export interface AutoDiscoverOptions {
|
|
|
31
32
|
* @experimental
|
|
32
33
|
*/
|
|
33
34
|
readonly tsconfigPath: string;
|
|
35
|
+
/**
|
|
36
|
+
* (experimental) AWS CDK dependency manager.
|
|
37
|
+
*
|
|
38
|
+
* @experimental
|
|
39
|
+
*/
|
|
40
|
+
readonly cdkDeps: AwsCdkDeps;
|
|
34
41
|
}
|
|
35
42
|
/**
|
|
36
43
|
* (experimental) Automatically creates a `LambdaFunction` for all `.lambda.ts` files under the source directory of the project.
|