projen-cdktf-hybrid-construct 0.3.2 → 0.3.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.
package/API.md CHANGED
@@ -1,3 +1,258 @@
1
+ # Projen-CDKTF-Hybrid-Construct
2
+
3
+ Projen template for CDKTF Constructs that should also be used as Terraform Modules and for republishing Terraform Modules as Constructs.
4
+
5
+ ## Compatibility
6
+
7
+ - `cdktf` >= 0.15.0
8
+ - `constructs` >= 10.0.107
9
+
10
+ ## Usage
11
+
12
+ ### `HybridModule`
13
+
14
+ If you want to write a CDKTF construct and also publish it as a Terraform Module you can use the `HybridModule` template.
15
+
16
+ You can initialize such a project using `npx projen new --from projen-cdktf-hybrid-construct hybrid-module`.
17
+
18
+ A configutation might look like this:
19
+
20
+ ```js
21
+ const { HybridModule } = require("projen-cdktf-hybrid-construct");
22
+
23
+ const project = new HybridModule({
24
+ // The name of the module & repository need to start with terraform-cdk-
25
+ name: "terraform-cdk-my-new-hybrid-construct",
26
+ repositoryUrl:
27
+ "github.com/DanielMSchmidt/terraform-cdk-my-new-hybrid-construct",
28
+
29
+ author: "Daniel Schmidt",
30
+ authorAddress: "danielmschmidt92@gmail.com",
31
+
32
+ // If enabled an example folder with terraform code will be created
33
+ terraformExamples: {
34
+ enabled: true,
35
+ folder: "terraform",
36
+ // The configuration to add to the example terraform file
37
+ providerConfig: `
38
+ terraform {
39
+ required_providers {
40
+ aws = {
41
+ source = "hashicorp/aws"
42
+ version = "~> 3.74"
43
+ }
44
+ }
45
+ # Terraform binary version constraint
46
+ required_version = ">= 1.2.0"
47
+ }
48
+
49
+
50
+ provider "aws" {
51
+ region = "eu-central-1"
52
+ }
53
+ `,
54
+ },
55
+
56
+ // If enabled a constructs example folder will be created
57
+ constructExamples: {
58
+ enabled: true,
59
+ folder: "construct-examples",
60
+ },
61
+ });
62
+ project.synth();
63
+ ```
64
+
65
+ ### `TerraformModule`
66
+
67
+ If you want to republish an existing Terraform module as a CDKTF construct or if you want to repackage them with an easier to use API you can use the `TerraformModule` template.
68
+
69
+ You can initialize such a project using `npx projen new --from projen-cdktf-hybrid-construct terraform-module`.
70
+
71
+ A configutation might look like this:
72
+
73
+ ```js
74
+ const { TerraformModule } = require("projen-cdktf-hybrid-construct");
75
+
76
+ const project = new TerraformModule({
77
+ name: "my-module",
78
+ author: "Daniel Schmidt",
79
+ authorAddress: "danielmschmidt92@gmail.com",
80
+ repositoryUrl: "github.com/DanielMSchmidt/my-module",
81
+
82
+ terraformModules: [
83
+ {
84
+ name: "eks",
85
+ source: "terraform-aws-modules/eks/aws",
86
+ version: "~> 18.0",
87
+ },
88
+ {
89
+ name: "eks-managed-nodegroup",
90
+ source: "terraform-aws-modules/eks/aws//modules/eks-managed-node-group",
91
+ version: "~> 18.0",
92
+ },
93
+ ],
94
+ });
95
+
96
+ project.synth();
97
+ ```
98
+
99
+ ## Publishing
100
+
101
+ ### Open Source
102
+
103
+ We have a helper method for easy configuration, but there are still some manual steps required.
104
+
105
+ ```js
106
+ const {
107
+ HybridModule,
108
+ publishToRegistries,
109
+ } = require("projen-cdktf-hybrid-construct");
110
+
111
+ const project = new HybridModule({
112
+ // ... all the other options
113
+ ...publishToRegistries({
114
+ name: "my-new-hybrid-construct",
115
+ namespace: "my-org",
116
+ registries: ["npm", "pypi", "nuget", "maven"],
117
+ }),
118
+ });
119
+ ```
120
+
121
+ #### Terraform
122
+
123
+ 1. [Sign in at the registry](https://registry.terraform.io/sign-in)
124
+ 2. [Select your repository](https://registry.terraform.io/github/create) and create the module
125
+
126
+ Please make sure your repository name starts with `terraform-cdk-`.
127
+
128
+ #### npm (Typescript)
129
+
130
+ 1. Create an account at [npmjs.com](https://npmjs.com/)
131
+ 2. Create an [automation token](https://docs.npmjs.com/creating-and-viewing-access-tokens) on npm
132
+ 3. Create a [GitHub Action Secret](https://docs.github.com/en/actions/security-guides/encrypted-secrets#creating-encrypted-secrets-for-a-repository) with the name `NPM_TOKEN` and the value of the token
133
+
134
+ #### pypi (Python)
135
+
136
+ 1. Create an account at [pypi.org](https://pypi.org/)
137
+ 2. Create an [API token](https://pypi.org/help/#apitoken) on pypi
138
+ 3. Create a [GitHub Action Secret](https://docs.github.com/en/actions/security-guides/encrypted-secrets#creating-encrypted-secrets-for-a-repository) with the name `TWINE_USERNAME` and the value `__token__` and a second one with the name `TWINE_PASSWORD` and the value of the token
139
+ 4. Set the `publishToPypi` section in the options of `HybridModule` or `TerraformModule` (or use the helper mentioned above)
140
+
141
+ ```js
142
+ const name = "name-of-my-hybrid-construct";
143
+ new HybridModule({
144
+ name,
145
+ // ... other options
146
+ publishToPypi: {
147
+ distName: name,
148
+ module: name.replace(/-/g, "_"),
149
+ },
150
+ });
151
+ ```
152
+
153
+ #### Maven (Java)
154
+
155
+ 1. [Create a Sonatype account and repository](https://central.sonatype.org/publish/publish-guide/#introduction)
156
+ 2. Create [GitHub Action Secrets](https://docs.github.com/en/actions/security-guides/encrypted-secrets#creating-encrypted-secrets-for-a-repository) to configure maven:
157
+ - `MAVEN_USERNAME`
158
+ - `MAVEN_PASSWORD`
159
+ - `MAVEN_STAGING_PROFILE_ID`
160
+ - `MAVEN_GPG_PRIVATE_KEY_PASSPHRASE`
161
+ - `MAVEN_GPG_PRIVATE_KEY_PASSPHRASE`
162
+ 3. Setup the `publishToMaven` section in the options of `HybridModule` or `TerraformModule` (or use the helper mentioned above)
163
+
164
+ ```js
165
+ const githubNamespace = "my-org";
166
+ const name = "name-of-my-hybrid-construct";
167
+ new HybridModule({
168
+ name,
169
+ // ... other options
170
+ publishToMaven: {
171
+ javaPackage: name.replace(/-/g, "_"),
172
+ mavenGroupId: `com.${githubNamespace}`,
173
+ mavenArtifactId: name,
174
+ },
175
+ });
176
+ ```
177
+
178
+ #### NuGet (C#)
179
+
180
+ 1. [Create a NuGet account](https://www.nuget.org/users/account/LogOn) (you might need to create a Microsoft Account if you don't have one)
181
+ 2. [Create API keys](https://docs.microsoft.com/en-us/nuget/nuget-org/publish-a-package#create-api-keys)
182
+ 3. Create a [GitHub Action Secret](https://docs.github.com/en/actions/security-guides/encrypted-secrets#creating-encrypted-secrets-for-a-repository) with the name `NUGET_API_KEY` and the value of the token
183
+ 4. Setup the `publishToNuget` section in the options of `HybridModule` or `TerraformModule` (or use the helper mentioned above)
184
+
185
+ ```js
186
+ const githubNamespace = "my-org";
187
+ const name = "name-of-my-hybrid-construct";
188
+
189
+ new HybridModule({
190
+ name,
191
+ // ... other options
192
+ publishToNuget: {
193
+ dotNetNamespace: `MyOrg.NameOfMyHybridConstruct`,
194
+ packageId: `MyOrg.NameOfMyHybridConstruct`,
195
+ },
196
+ });
197
+ ```
198
+
199
+ ### Github Packages
200
+
201
+ We have a helper method for easy configuration, no extra steps needed:
202
+
203
+ ```js
204
+ const {
205
+ HybridModule,
206
+ publishToGithubPackages,
207
+ } = require("projen-cdktf-hybrid-construct");
208
+
209
+ const project = new HybridModule({
210
+ // ... all the other options
211
+ ...publishToGithubPackages({
212
+ name: "my-new-hybrid-construct",
213
+ namespace: "my-org",
214
+ registries: ["npm", "maven"], // pypi and nuget are not yet supported
215
+ }),
216
+ });
217
+ ```
218
+
219
+ ### Artifactory
220
+
221
+ We have a helper method for easy configuration, but there are also some manual steps required.
222
+
223
+ ```js
224
+ const {
225
+ HybridModule,
226
+ publishToGithubPackages,
227
+ } = require("projen-cdktf-hybrid-construct");
228
+
229
+ const project = new HybridModule({
230
+ // ... all the other options
231
+ ...publishToGithubPackages({
232
+ name: "my-new-hybrid-construct",
233
+ namespace: "my-org",
234
+ registries: ["npm", "pypi", "nuget"], // maven is currently not supported, PRs welcome
235
+ artifactoryApiUrl: "https://artifactory.my-org.com/api/",
236
+ artifactoryRepository: "my-repo", // needs to be the same across all registries, defaults to namespace so "my-org" in this case
237
+ }),
238
+ });
239
+ ```
240
+
241
+ #### Terraform
242
+
243
+ You can find more information about publishing Terraform Modules to Artifactory [here](https://www.jfrog.com/confluence/display/JFROG/Terraform+Registry#TerraformRegistry-SettingupaLocalModule/ProviderRegistry).
244
+
245
+ #### npm (Typescript)
246
+
247
+ 1. [Create a virtual npm registry](https://www.jfrog.com/confluence/display/JFROG/npm+Registry#npmRegistry-VirtualnpmRegistry)
248
+ 2. [Authenticate against artifactory to get a token](https://www.jfrog.com/confluence/display/JFROG/npm+Registry#npmRegistry-AuthenticatingthenpmClient)
249
+ 3. Create a [GitHub Action Secret](https://docs.github.com/en/actions/security-guides/encrypted-secrets#creating-encrypted-secrets-for-a-repository) with the name `NPM_TOKEN` and the value of the token
250
+
251
+ #### pypi (Python)
252
+
253
+ 1. Create a [local repository](https://www.jfrog.com/confluence/display/JFROG/PyPI+Repositories#PyPIRepositories-LocalRepositories)
254
+ 2. Create a [GitHub Action Secret](https://docs.github.com/en/actions/security-guides/encrypted-secrets#creating-encrypted-secrets-for-a-repository) with the name `TWINE_USERNAME` and the artifactory user name and a second one with the name `TWINE_PASSWORD` and the artifactory password
255
+
1
256
  # API Reference <a name="API Reference" id="api-reference"></a>
2
257
 
3
258
 
@@ -58,12 +313,14 @@ const hybridModuleOptions: HybridModuleOptions = { ... }
58
313
  | --- | --- | --- |
59
314
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.name">name</a></code> | <code>string</code> | This is the name of your project. |
60
315
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.commitGenerated">commitGenerated</a></code> | <code>boolean</code> | Whether to commit the managed files by default. |
316
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.gitIgnoreOptions">gitIgnoreOptions</a></code> | <code>projen.IgnoreFileOptions</code> | Configuration options for .gitignore file. |
317
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.gitOptions">gitOptions</a></code> | <code>projen.GitOptions</code> | Configuration options for git. |
61
318
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.logging">logging</a></code> | <code>projen.LoggerOptions</code> | Configure logging options such as verbosity. |
62
319
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.outdir">outdir</a></code> | <code>string</code> | The root directory of the project. |
63
320
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.parent">parent</a></code> | <code>projen.Project</code> | The parent project, if this project is part of a bigger project. |
64
321
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.projenCommand">projenCommand</a></code> | <code>string</code> | The shell command to use in order to run the projen CLI. |
65
322
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.projenrcJson">projenrcJson</a></code> | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. |
66
- | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.projenrcJsonOptions">projenrcJsonOptions</a></code> | <code>projen.ProjenrcOptions</code> | Options for .projenrc.json. |
323
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.projenrcJsonOptions">projenrcJsonOptions</a></code> | <code>projen.ProjenrcJsonOptions</code> | Options for .projenrc.json. |
67
324
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.renovatebot">renovatebot</a></code> | <code>boolean</code> | Use renovatebot to handle dependency upgrades. |
68
325
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.renovatebotOptions">renovatebotOptions</a></code> | <code>projen.RenovatebotOptions</code> | Options for renovatebot. |
69
326
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.autoApproveOptions">autoApproveOptions</a></code> | <code>projen.github.AutoApproveOptions</code> | Enable and configure the 'auto approve' workflow. |
@@ -112,6 +369,7 @@ const hybridModuleOptions: HybridModuleOptions = { ... }
112
369
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.packageName">packageName</a></code> | <code>string</code> | The "name" in package.json. |
113
370
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.peerDependencyOptions">peerDependencyOptions</a></code> | <code>projen.javascript.PeerDependencyOptions</code> | Options for `peerDeps`. |
114
371
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.peerDeps">peerDeps</a></code> | <code>string[]</code> | Peer dependencies for this module. |
372
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.pnpmVersion">pnpmVersion</a></code> | <code>string</code> | The version of PNPM to use if using PNPM as a package manager. |
115
373
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.repository">repository</a></code> | <code>string</code> | The repository is the location where the actual code for your package lives. |
116
374
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.repositoryDirectory">repositoryDirectory</a></code> | <code>string</code> | If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. |
117
375
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.scopedPackagesOptions">scopedPackagesOptions</a></code> | <code>projen.javascript.ScopedPackagesOptions[]</code> | Options for privately hosted scoped packages. |
@@ -125,6 +383,7 @@ const hybridModuleOptions: HybridModuleOptions = { ... }
125
383
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.prerelease">prerelease</a></code> | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). |
126
384
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.publishDryRun">publishDryRun</a></code> | <code>boolean</code> | Instead of actually publishing to package managers, just print the publishing command. |
127
385
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.publishTasks">publishTasks</a></code> | <code>boolean</code> | Define publishing tasks that can be executed manually as well as workflows. |
386
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.releasableCommits">releasableCommits</a></code> | <code>projen.ReleasableCommits</code> | Find commits that should be considered releasable Used to decide if a release is required. |
128
387
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.releaseBranches">releaseBranches</a></code> | <code>{[ key: string ]: projen.release.BranchOptions}</code> | Defines additional release branches. |
129
388
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.releaseEveryCommit">releaseEveryCommit</a></code> | <code>boolean</code> | Automatically release new versions every commit to one of branches in `releaseBranches`. |
130
389
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.releaseFailureIssue">releaseFailureIssue</a></code> | <code>boolean</code> | Create a github issue on every failed publishing task. |
@@ -143,7 +402,7 @@ const hybridModuleOptions: HybridModuleOptions = { ... }
143
402
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.buildWorkflow">buildWorkflow</a></code> | <code>boolean</code> | Define a GitHub workflow for building PRs. |
144
403
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.buildWorkflowTriggers">buildWorkflowTriggers</a></code> | <code>projen.github.workflows.Triggers</code> | Build workflow triggers. |
145
404
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.bundlerOptions">bundlerOptions</a></code> | <code>projen.javascript.BundlerOptions</code> | Options for `Bundler`. |
146
- | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.codeCov">codeCov</a></code> | <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. |
405
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.codeCov">codeCov</a></code> | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`. |
147
406
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.codeCovTokenSecret">codeCovTokenSecret</a></code> | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. |
148
407
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | License copyright owner. |
149
408
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | The copyright years to put in the LICENSE file. |
@@ -157,6 +416,7 @@ const hybridModuleOptions: HybridModuleOptions = { ... }
157
416
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.mutableBuild">mutableBuild</a></code> | <code>boolean</code> | Automatically update files modified during builds to pull-request branches. |
158
417
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.npmignore">npmignore</a></code> | <code>string[]</code> | Additional entries to .npmignore. |
159
418
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.npmignoreEnabled">npmignoreEnabled</a></code> | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. |
419
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.npmIgnoreOptions">npmIgnoreOptions</a></code> | <code>projen.IgnoreFileOptions</code> | Configuration options for .npmignore file. |
160
420
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.package">package</a></code> | <code>boolean</code> | Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`). |
161
421
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.prettier">prettier</a></code> | <code>boolean</code> | Setup prettier. |
162
422
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.prettierOptions">prettierOptions</a></code> | <code>projen.javascript.PrettierOptions</code> | Prettier options. |
@@ -172,7 +432,9 @@ const hybridModuleOptions: HybridModuleOptions = { ... }
172
432
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.workflowBootstrapSteps">workflowBootstrapSteps</a></code> | <code>projen.github.workflows.JobStep[]</code> | Workflow steps to use in order to bootstrap this repo. |
173
433
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.workflowGitIdentity">workflowGitIdentity</a></code> | <code>projen.github.GitIdentity</code> | The git identity to use in workflows. |
174
434
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.workflowNodeVersion">workflowNodeVersion</a></code> | <code>string</code> | The node version to use in GitHub workflows. |
435
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.workflowPackageCache">workflowPackageCache</a></code> | <code>boolean</code> | Enable Node.js package cache in GitHub workflows. |
175
436
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.disableTsconfig">disableTsconfig</a></code> | <code>boolean</code> | Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). |
437
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.disableTsconfigDev">disableTsconfigDev</a></code> | <code>boolean</code> | Do not generate a `tsconfig.dev.json` file. |
176
438
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.docgen">docgen</a></code> | <code>boolean</code> | Docgen by Typedoc. |
177
439
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.docsDirectory">docsDirectory</a></code> | <code>string</code> | Docs directory. |
178
440
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.entrypointTypes">entrypointTypes</a></code> | <code>string</code> | The .d.ts file that includes the type declarations for this module. |
@@ -197,6 +459,7 @@ const hybridModuleOptions: HybridModuleOptions = { ... }
197
459
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.docgenFilePath">docgenFilePath</a></code> | <code>string</code> | File path for generated docs. |
198
460
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.dotnet">dotnet</a></code> | <code>projen.cdk.JsiiDotNetTarget</code> | *No description.* |
199
461
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.excludeTypescript">excludeTypescript</a></code> | <code>string[]</code> | Accepts a list of glob patterns. |
462
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.jsiiVersion">jsiiVersion</a></code> | <code>string</code> | Version of the jsii compiler to use. |
200
463
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.publishToGo">publishToGo</a></code> | <code>projen.cdk.JsiiGoTarget</code> | Publish Go bindings to a git repository. |
201
464
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.publishToMaven">publishToMaven</a></code> | <code>projen.cdk.JsiiJavaTarget</code> | Publish to maven. |
202
465
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModuleOptions.property.publishToNuget">publishToNuget</a></code> | <code>projen.cdk.JsiiDotNetTarget</code> | Publish to NuGet. |
@@ -239,6 +502,30 @@ Whether to commit the managed files by default.
239
502
 
240
503
  ---
241
504
 
505
+ ##### `gitIgnoreOptions`<sup>Optional</sup> <a name="gitIgnoreOptions" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.gitIgnoreOptions"></a>
506
+
507
+ ```typescript
508
+ public readonly gitIgnoreOptions: IgnoreFileOptions;
509
+ ```
510
+
511
+ - *Type:* projen.IgnoreFileOptions
512
+
513
+ Configuration options for .gitignore file.
514
+
515
+ ---
516
+
517
+ ##### `gitOptions`<sup>Optional</sup> <a name="gitOptions" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.gitOptions"></a>
518
+
519
+ ```typescript
520
+ public readonly gitOptions: GitOptions;
521
+ ```
522
+
523
+ - *Type:* projen.GitOptions
524
+
525
+ Configuration options for git.
526
+
527
+ ---
528
+
242
529
  ##### `logging`<sup>Optional</sup> <a name="logging" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.logging"></a>
243
530
 
244
531
  ```typescript
@@ -314,10 +601,10 @@ Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .pr
314
601
  ##### `projenrcJsonOptions`<sup>Optional</sup> <a name="projenrcJsonOptions" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.projenrcJsonOptions"></a>
315
602
 
316
603
  ```typescript
317
- public readonly projenrcJsonOptions: ProjenrcOptions;
604
+ public readonly projenrcJsonOptions: ProjenrcJsonOptions;
318
605
  ```
319
606
 
320
- - *Type:* projen.ProjenrcOptions
607
+ - *Type:* projen.ProjenrcJsonOptions
321
608
  - *Default:* default options
322
609
 
323
610
  Options for .projenrc.json.
@@ -402,7 +689,7 @@ public readonly clobber: boolean;
402
689
  ```
403
690
 
404
691
  - *Type:* boolean
405
- - *Default:* true
692
+ - *Default:* true, but false for subprojects
406
693
 
407
694
  Add a `clobber` task which resets the repo to origin.
408
695
 
@@ -1047,6 +1334,19 @@ test your module against the lowest peer version required.
1047
1334
 
1048
1335
  ---
1049
1336
 
1337
+ ##### `pnpmVersion`<sup>Optional</sup> <a name="pnpmVersion" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.pnpmVersion"></a>
1338
+
1339
+ ```typescript
1340
+ public readonly pnpmVersion: string;
1341
+ ```
1342
+
1343
+ - *Type:* string
1344
+ - *Default:* "7"
1345
+
1346
+ The version of PNPM to use if using PNPM as a package manager.
1347
+
1348
+ ---
1349
+
1050
1350
  ##### `repository`<sup>Optional</sup> <a name="repository" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.repository"></a>
1051
1351
 
1052
1352
  ```typescript
@@ -1086,7 +1386,9 @@ Options for privately hosted scoped packages.
1086
1386
 
1087
1387
  ---
1088
1388
 
1089
- ##### `scripts`<sup>Optional</sup> <a name="scripts" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.scripts"></a>
1389
+ ##### ~~`scripts`~~<sup>Optional</sup> <a name="scripts" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.scripts"></a>
1390
+
1391
+ - *Deprecated:* use `project.addTask()` or `package.setScript()`
1090
1392
 
1091
1393
  ```typescript
1092
1394
  public readonly scripts: {[ key: string ]: string};
@@ -1099,6 +1401,7 @@ npm scripts to include.
1099
1401
 
1100
1402
  If a script has the same name as a standard script,
1101
1403
  the standard script will be overwritten.
1404
+ Also adds the script as a task.
1102
1405
 
1103
1406
  ---
1104
1407
 
@@ -1232,6 +1535,19 @@ in order to create a publishing task for each publishing activity.
1232
1535
 
1233
1536
  ---
1234
1537
 
1538
+ ##### `releasableCommits`<sup>Optional</sup> <a name="releasableCommits" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.releasableCommits"></a>
1539
+
1540
+ ```typescript
1541
+ public readonly releasableCommits: ReleasableCommits;
1542
+ ```
1543
+
1544
+ - *Type:* projen.ReleasableCommits
1545
+ - *Default:* ReleasableCommits.everyCommit()
1546
+
1547
+ Find commits that should be considered releasable Used to decide if a release is required.
1548
+
1549
+ ---
1550
+
1235
1551
  ##### `releaseBranches`<sup>Optional</sup> <a name="releaseBranches" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.releaseBranches"></a>
1236
1552
 
1237
1553
  ```typescript
@@ -1495,7 +1811,7 @@ public readonly codeCov: boolean;
1495
1811
  - *Type:* boolean
1496
1812
  - *Default:* false
1497
1813
 
1498
- 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.
1814
+ Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`.
1499
1815
 
1500
1816
  ---
1501
1817
 
@@ -1678,6 +1994,18 @@ Defines an .npmignore file. Normally this is only needed for libraries that are
1678
1994
 
1679
1995
  ---
1680
1996
 
1997
+ ##### `npmIgnoreOptions`<sup>Optional</sup> <a name="npmIgnoreOptions" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.npmIgnoreOptions"></a>
1998
+
1999
+ ```typescript
2000
+ public readonly npmIgnoreOptions: IgnoreFileOptions;
2001
+ ```
2002
+
2003
+ - *Type:* projen.IgnoreFileOptions
2004
+
2005
+ Configuration options for .npmignore file.
2006
+
2007
+ ---
2008
+
1681
2009
  ##### `package`<sup>Optional</sup> <a name="package" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.package"></a>
1682
2010
 
1683
2011
  ```typescript
@@ -1875,6 +2203,19 @@ The node version to use in GitHub workflows.
1875
2203
 
1876
2204
  ---
1877
2205
 
2206
+ ##### `workflowPackageCache`<sup>Optional</sup> <a name="workflowPackageCache" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.workflowPackageCache"></a>
2207
+
2208
+ ```typescript
2209
+ public readonly workflowPackageCache: boolean;
2210
+ ```
2211
+
2212
+ - *Type:* boolean
2213
+ - *Default:* false
2214
+
2215
+ Enable Node.js package cache in GitHub workflows.
2216
+
2217
+ ---
2218
+
1878
2219
  ##### `disableTsconfig`<sup>Optional</sup> <a name="disableTsconfig" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.disableTsconfig"></a>
1879
2220
 
1880
2221
  ```typescript
@@ -1888,6 +2229,19 @@ Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.jso
1888
2229
 
1889
2230
  ---
1890
2231
 
2232
+ ##### `disableTsconfigDev`<sup>Optional</sup> <a name="disableTsconfigDev" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.disableTsconfigDev"></a>
2233
+
2234
+ ```typescript
2235
+ public readonly disableTsconfigDev: boolean;
2236
+ ```
2237
+
2238
+ - *Type:* boolean
2239
+ - *Default:* false
2240
+
2241
+ Do not generate a `tsconfig.dev.json` file.
2242
+
2243
+ ---
2244
+
1891
2245
  ##### `docgen`<sup>Optional</sup> <a name="docgen" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.docgen"></a>
1892
2246
 
1893
2247
  ```typescript
@@ -2214,6 +2568,26 @@ that cannot be compiled with jsii's compiler settings.
2214
2568
 
2215
2569
  ---
2216
2570
 
2571
+ ##### `jsiiVersion`<sup>Optional</sup> <a name="jsiiVersion" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.jsiiVersion"></a>
2572
+
2573
+ ```typescript
2574
+ public readonly jsiiVersion: string;
2575
+ ```
2576
+
2577
+ - *Type:* string
2578
+ - *Default:* "1.x"
2579
+
2580
+ Version of the jsii compiler to use.
2581
+
2582
+ Set to "*" if you want to manually manage the version of jsii in your
2583
+ project by managing updates to `package.json` on your own.
2584
+
2585
+ NOTE: The jsii compiler releases since 5.0.0 are not semantically versioned
2586
+ and should remain on the same minor, so we recommend using a `~` dependency
2587
+ (e.g. `~5.0.0`).
2588
+
2589
+ ---
2590
+
2217
2591
  ##### `publishToGo`<sup>Optional</sup> <a name="publishToGo" id="projen-cdktf-hybrid-construct.HybridModuleOptions.property.publishToGo"></a>
2218
2592
 
2219
2593
  ```typescript
@@ -2320,7 +2694,7 @@ public readonly cdktfVersion: string;
2320
2694
  ```
2321
2695
 
2322
2696
  - *Type:* string
2323
- - *Default:* "^0.13.0"
2697
+ - *Default:* "0.15.0"
2324
2698
 
2325
2699
  Minimum target version of this library.
2326
2700
 
@@ -2346,7 +2720,7 @@ public readonly constructVersion: string;
2346
2720
  ```
2347
2721
 
2348
2722
  - *Type:* string
2349
- - *Default:* "^10.0.12"
2723
+ - *Default:* "^10.0.107"
2350
2724
 
2351
2725
  Construct version to use.
2352
2726
 
@@ -2466,12 +2840,14 @@ const terraformModuleOptions: TerraformModuleOptions = { ... }
2466
2840
  | --- | --- | --- |
2467
2841
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.name">name</a></code> | <code>string</code> | This is the name of your project. |
2468
2842
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.commitGenerated">commitGenerated</a></code> | <code>boolean</code> | Whether to commit the managed files by default. |
2843
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.gitIgnoreOptions">gitIgnoreOptions</a></code> | <code>projen.IgnoreFileOptions</code> | Configuration options for .gitignore file. |
2844
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.gitOptions">gitOptions</a></code> | <code>projen.GitOptions</code> | Configuration options for git. |
2469
2845
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.logging">logging</a></code> | <code>projen.LoggerOptions</code> | Configure logging options such as verbosity. |
2470
2846
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.outdir">outdir</a></code> | <code>string</code> | The root directory of the project. |
2471
2847
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.parent">parent</a></code> | <code>projen.Project</code> | The parent project, if this project is part of a bigger project. |
2472
2848
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.projenCommand">projenCommand</a></code> | <code>string</code> | The shell command to use in order to run the projen CLI. |
2473
2849
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.projenrcJson">projenrcJson</a></code> | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. |
2474
- | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.projenrcJsonOptions">projenrcJsonOptions</a></code> | <code>projen.ProjenrcOptions</code> | Options for .projenrc.json. |
2850
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.projenrcJsonOptions">projenrcJsonOptions</a></code> | <code>projen.ProjenrcJsonOptions</code> | Options for .projenrc.json. |
2475
2851
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.renovatebot">renovatebot</a></code> | <code>boolean</code> | Use renovatebot to handle dependency upgrades. |
2476
2852
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.renovatebotOptions">renovatebotOptions</a></code> | <code>projen.RenovatebotOptions</code> | Options for renovatebot. |
2477
2853
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.autoApproveOptions">autoApproveOptions</a></code> | <code>projen.github.AutoApproveOptions</code> | Enable and configure the 'auto approve' workflow. |
@@ -2520,6 +2896,7 @@ const terraformModuleOptions: TerraformModuleOptions = { ... }
2520
2896
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.packageName">packageName</a></code> | <code>string</code> | The "name" in package.json. |
2521
2897
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.peerDependencyOptions">peerDependencyOptions</a></code> | <code>projen.javascript.PeerDependencyOptions</code> | Options for `peerDeps`. |
2522
2898
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.peerDeps">peerDeps</a></code> | <code>string[]</code> | Peer dependencies for this module. |
2899
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.pnpmVersion">pnpmVersion</a></code> | <code>string</code> | The version of PNPM to use if using PNPM as a package manager. |
2523
2900
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.repository">repository</a></code> | <code>string</code> | The repository is the location where the actual code for your package lives. |
2524
2901
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.repositoryDirectory">repositoryDirectory</a></code> | <code>string</code> | If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. |
2525
2902
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.scopedPackagesOptions">scopedPackagesOptions</a></code> | <code>projen.javascript.ScopedPackagesOptions[]</code> | Options for privately hosted scoped packages. |
@@ -2533,6 +2910,7 @@ const terraformModuleOptions: TerraformModuleOptions = { ... }
2533
2910
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.prerelease">prerelease</a></code> | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). |
2534
2911
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.publishDryRun">publishDryRun</a></code> | <code>boolean</code> | Instead of actually publishing to package managers, just print the publishing command. |
2535
2912
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.publishTasks">publishTasks</a></code> | <code>boolean</code> | Define publishing tasks that can be executed manually as well as workflows. |
2913
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.releasableCommits">releasableCommits</a></code> | <code>projen.ReleasableCommits</code> | Find commits that should be considered releasable Used to decide if a release is required. |
2536
2914
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.releaseBranches">releaseBranches</a></code> | <code>{[ key: string ]: projen.release.BranchOptions}</code> | Defines additional release branches. |
2537
2915
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.releaseEveryCommit">releaseEveryCommit</a></code> | <code>boolean</code> | Automatically release new versions every commit to one of branches in `releaseBranches`. |
2538
2916
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.releaseFailureIssue">releaseFailureIssue</a></code> | <code>boolean</code> | Create a github issue on every failed publishing task. |
@@ -2551,7 +2929,7 @@ const terraformModuleOptions: TerraformModuleOptions = { ... }
2551
2929
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.buildWorkflow">buildWorkflow</a></code> | <code>boolean</code> | Define a GitHub workflow for building PRs. |
2552
2930
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.buildWorkflowTriggers">buildWorkflowTriggers</a></code> | <code>projen.github.workflows.Triggers</code> | Build workflow triggers. |
2553
2931
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.bundlerOptions">bundlerOptions</a></code> | <code>projen.javascript.BundlerOptions</code> | Options for `Bundler`. |
2554
- | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.codeCov">codeCov</a></code> | <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. |
2932
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.codeCov">codeCov</a></code> | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`. |
2555
2933
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.codeCovTokenSecret">codeCovTokenSecret</a></code> | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. |
2556
2934
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | License copyright owner. |
2557
2935
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | The copyright years to put in the LICENSE file. |
@@ -2565,6 +2943,7 @@ const terraformModuleOptions: TerraformModuleOptions = { ... }
2565
2943
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.mutableBuild">mutableBuild</a></code> | <code>boolean</code> | Automatically update files modified during builds to pull-request branches. |
2566
2944
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.npmignore">npmignore</a></code> | <code>string[]</code> | Additional entries to .npmignore. |
2567
2945
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.npmignoreEnabled">npmignoreEnabled</a></code> | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. |
2946
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.npmIgnoreOptions">npmIgnoreOptions</a></code> | <code>projen.IgnoreFileOptions</code> | Configuration options for .npmignore file. |
2568
2947
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.package">package</a></code> | <code>boolean</code> | Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`). |
2569
2948
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.prettier">prettier</a></code> | <code>boolean</code> | Setup prettier. |
2570
2949
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.prettierOptions">prettierOptions</a></code> | <code>projen.javascript.PrettierOptions</code> | Prettier options. |
@@ -2580,7 +2959,9 @@ const terraformModuleOptions: TerraformModuleOptions = { ... }
2580
2959
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.workflowBootstrapSteps">workflowBootstrapSteps</a></code> | <code>projen.github.workflows.JobStep[]</code> | Workflow steps to use in order to bootstrap this repo. |
2581
2960
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.workflowGitIdentity">workflowGitIdentity</a></code> | <code>projen.github.GitIdentity</code> | The git identity to use in workflows. |
2582
2961
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.workflowNodeVersion">workflowNodeVersion</a></code> | <code>string</code> | The node version to use in GitHub workflows. |
2962
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.workflowPackageCache">workflowPackageCache</a></code> | <code>boolean</code> | Enable Node.js package cache in GitHub workflows. |
2583
2963
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.disableTsconfig">disableTsconfig</a></code> | <code>boolean</code> | Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). |
2964
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.disableTsconfigDev">disableTsconfigDev</a></code> | <code>boolean</code> | Do not generate a `tsconfig.dev.json` file. |
2584
2965
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.docgen">docgen</a></code> | <code>boolean</code> | Docgen by Typedoc. |
2585
2966
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.docsDirectory">docsDirectory</a></code> | <code>string</code> | Docs directory. |
2586
2967
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.entrypointTypes">entrypointTypes</a></code> | <code>string</code> | The .d.ts file that includes the type declarations for this module. |
@@ -2605,6 +2986,7 @@ const terraformModuleOptions: TerraformModuleOptions = { ... }
2605
2986
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.docgenFilePath">docgenFilePath</a></code> | <code>string</code> | File path for generated docs. |
2606
2987
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.dotnet">dotnet</a></code> | <code>projen.cdk.JsiiDotNetTarget</code> | *No description.* |
2607
2988
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.excludeTypescript">excludeTypescript</a></code> | <code>string[]</code> | Accepts a list of glob patterns. |
2989
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.jsiiVersion">jsiiVersion</a></code> | <code>string</code> | Version of the jsii compiler to use. |
2608
2990
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.publishToGo">publishToGo</a></code> | <code>projen.cdk.JsiiGoTarget</code> | Publish Go bindings to a git repository. |
2609
2991
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.publishToMaven">publishToMaven</a></code> | <code>projen.cdk.JsiiJavaTarget</code> | Publish to maven. |
2610
2992
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModuleOptions.property.publishToNuget">publishToNuget</a></code> | <code>projen.cdk.JsiiDotNetTarget</code> | Publish to NuGet. |
@@ -2646,6 +3028,30 @@ Whether to commit the managed files by default.
2646
3028
 
2647
3029
  ---
2648
3030
 
3031
+ ##### `gitIgnoreOptions`<sup>Optional</sup> <a name="gitIgnoreOptions" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.gitIgnoreOptions"></a>
3032
+
3033
+ ```typescript
3034
+ public readonly gitIgnoreOptions: IgnoreFileOptions;
3035
+ ```
3036
+
3037
+ - *Type:* projen.IgnoreFileOptions
3038
+
3039
+ Configuration options for .gitignore file.
3040
+
3041
+ ---
3042
+
3043
+ ##### `gitOptions`<sup>Optional</sup> <a name="gitOptions" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.gitOptions"></a>
3044
+
3045
+ ```typescript
3046
+ public readonly gitOptions: GitOptions;
3047
+ ```
3048
+
3049
+ - *Type:* projen.GitOptions
3050
+
3051
+ Configuration options for git.
3052
+
3053
+ ---
3054
+
2649
3055
  ##### `logging`<sup>Optional</sup> <a name="logging" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.logging"></a>
2650
3056
 
2651
3057
  ```typescript
@@ -2721,10 +3127,10 @@ Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .pr
2721
3127
  ##### `projenrcJsonOptions`<sup>Optional</sup> <a name="projenrcJsonOptions" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.projenrcJsonOptions"></a>
2722
3128
 
2723
3129
  ```typescript
2724
- public readonly projenrcJsonOptions: ProjenrcOptions;
3130
+ public readonly projenrcJsonOptions: ProjenrcJsonOptions;
2725
3131
  ```
2726
3132
 
2727
- - *Type:* projen.ProjenrcOptions
3133
+ - *Type:* projen.ProjenrcJsonOptions
2728
3134
  - *Default:* default options
2729
3135
 
2730
3136
  Options for .projenrc.json.
@@ -2809,7 +3215,7 @@ public readonly clobber: boolean;
2809
3215
  ```
2810
3216
 
2811
3217
  - *Type:* boolean
2812
- - *Default:* true
3218
+ - *Default:* true, but false for subprojects
2813
3219
 
2814
3220
  Add a `clobber` task which resets the repo to origin.
2815
3221
 
@@ -3454,6 +3860,19 @@ test your module against the lowest peer version required.
3454
3860
 
3455
3861
  ---
3456
3862
 
3863
+ ##### `pnpmVersion`<sup>Optional</sup> <a name="pnpmVersion" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.pnpmVersion"></a>
3864
+
3865
+ ```typescript
3866
+ public readonly pnpmVersion: string;
3867
+ ```
3868
+
3869
+ - *Type:* string
3870
+ - *Default:* "7"
3871
+
3872
+ The version of PNPM to use if using PNPM as a package manager.
3873
+
3874
+ ---
3875
+
3457
3876
  ##### `repository`<sup>Optional</sup> <a name="repository" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.repository"></a>
3458
3877
 
3459
3878
  ```typescript
@@ -3493,7 +3912,9 @@ Options for privately hosted scoped packages.
3493
3912
 
3494
3913
  ---
3495
3914
 
3496
- ##### `scripts`<sup>Optional</sup> <a name="scripts" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.scripts"></a>
3915
+ ##### ~~`scripts`~~<sup>Optional</sup> <a name="scripts" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.scripts"></a>
3916
+
3917
+ - *Deprecated:* use `project.addTask()` or `package.setScript()`
3497
3918
 
3498
3919
  ```typescript
3499
3920
  public readonly scripts: {[ key: string ]: string};
@@ -3506,6 +3927,7 @@ npm scripts to include.
3506
3927
 
3507
3928
  If a script has the same name as a standard script,
3508
3929
  the standard script will be overwritten.
3930
+ Also adds the script as a task.
3509
3931
 
3510
3932
  ---
3511
3933
 
@@ -3639,6 +4061,19 @@ in order to create a publishing task for each publishing activity.
3639
4061
 
3640
4062
  ---
3641
4063
 
4064
+ ##### `releasableCommits`<sup>Optional</sup> <a name="releasableCommits" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.releasableCommits"></a>
4065
+
4066
+ ```typescript
4067
+ public readonly releasableCommits: ReleasableCommits;
4068
+ ```
4069
+
4070
+ - *Type:* projen.ReleasableCommits
4071
+ - *Default:* ReleasableCommits.everyCommit()
4072
+
4073
+ Find commits that should be considered releasable Used to decide if a release is required.
4074
+
4075
+ ---
4076
+
3642
4077
  ##### `releaseBranches`<sup>Optional</sup> <a name="releaseBranches" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.releaseBranches"></a>
3643
4078
 
3644
4079
  ```typescript
@@ -3902,7 +4337,7 @@ public readonly codeCov: boolean;
3902
4337
  - *Type:* boolean
3903
4338
  - *Default:* false
3904
4339
 
3905
- 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.
4340
+ Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`.
3906
4341
 
3907
4342
  ---
3908
4343
 
@@ -4085,6 +4520,18 @@ Defines an .npmignore file. Normally this is only needed for libraries that are
4085
4520
 
4086
4521
  ---
4087
4522
 
4523
+ ##### `npmIgnoreOptions`<sup>Optional</sup> <a name="npmIgnoreOptions" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.npmIgnoreOptions"></a>
4524
+
4525
+ ```typescript
4526
+ public readonly npmIgnoreOptions: IgnoreFileOptions;
4527
+ ```
4528
+
4529
+ - *Type:* projen.IgnoreFileOptions
4530
+
4531
+ Configuration options for .npmignore file.
4532
+
4533
+ ---
4534
+
4088
4535
  ##### `package`<sup>Optional</sup> <a name="package" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.package"></a>
4089
4536
 
4090
4537
  ```typescript
@@ -4282,6 +4729,19 @@ The node version to use in GitHub workflows.
4282
4729
 
4283
4730
  ---
4284
4731
 
4732
+ ##### `workflowPackageCache`<sup>Optional</sup> <a name="workflowPackageCache" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.workflowPackageCache"></a>
4733
+
4734
+ ```typescript
4735
+ public readonly workflowPackageCache: boolean;
4736
+ ```
4737
+
4738
+ - *Type:* boolean
4739
+ - *Default:* false
4740
+
4741
+ Enable Node.js package cache in GitHub workflows.
4742
+
4743
+ ---
4744
+
4285
4745
  ##### `disableTsconfig`<sup>Optional</sup> <a name="disableTsconfig" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.disableTsconfig"></a>
4286
4746
 
4287
4747
  ```typescript
@@ -4295,6 +4755,19 @@ Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.jso
4295
4755
 
4296
4756
  ---
4297
4757
 
4758
+ ##### `disableTsconfigDev`<sup>Optional</sup> <a name="disableTsconfigDev" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.disableTsconfigDev"></a>
4759
+
4760
+ ```typescript
4761
+ public readonly disableTsconfigDev: boolean;
4762
+ ```
4763
+
4764
+ - *Type:* boolean
4765
+ - *Default:* false
4766
+
4767
+ Do not generate a `tsconfig.dev.json` file.
4768
+
4769
+ ---
4770
+
4298
4771
  ##### `docgen`<sup>Optional</sup> <a name="docgen" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.docgen"></a>
4299
4772
 
4300
4773
  ```typescript
@@ -4621,6 +5094,26 @@ that cannot be compiled with jsii's compiler settings.
4621
5094
 
4622
5095
  ---
4623
5096
 
5097
+ ##### `jsiiVersion`<sup>Optional</sup> <a name="jsiiVersion" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.jsiiVersion"></a>
5098
+
5099
+ ```typescript
5100
+ public readonly jsiiVersion: string;
5101
+ ```
5102
+
5103
+ - *Type:* string
5104
+ - *Default:* "1.x"
5105
+
5106
+ Version of the jsii compiler to use.
5107
+
5108
+ Set to "*" if you want to manually manage the version of jsii in your
5109
+ project by managing updates to `package.json` on your own.
5110
+
5111
+ NOTE: The jsii compiler releases since 5.0.0 are not semantically versioned
5112
+ and should remain on the same minor, so we recommend using a `~` dependency
5113
+ (e.g. `~5.0.0`).
5114
+
5115
+ ---
5116
+
4624
5117
  ##### `publishToGo`<sup>Optional</sup> <a name="publishToGo" id="projen-cdktf-hybrid-construct.TerraformModuleOptions.property.publishToGo"></a>
4625
5118
 
4626
5119
  ```typescript
@@ -4739,7 +5232,7 @@ public readonly cdktfVersion: string;
4739
5232
  ```
4740
5233
 
4741
5234
  - *Type:* string
4742
- - *Default:* "^0.13.0"
5235
+ - *Default:* "0.15.0"
4743
5236
 
4744
5237
  Minimum target version of this library.
4745
5238
 
@@ -4752,7 +5245,7 @@ public readonly constructVersion: string;
4752
5245
  ```
4753
5246
 
4754
5247
  - *Type:* string
4755
- - *Default:* "^10.0.12"
5248
+ - *Default:* "^10.0.107"
4756
5249
 
4757
5250
  Construct version to use.
4758
5251
 
@@ -4883,6 +5376,7 @@ new HybridModule(options: HybridModuleOptions)
4883
5376
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.addFields">addFields</a></code> | Directly set fields in `package.json`. |
4884
5377
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.addKeywords">addKeywords</a></code> | Adds keywords to package.json (deduplicated). |
4885
5378
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.addPeerDeps">addPeerDeps</a></code> | Defines peer dependencies. |
5379
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.addScripts">addScripts</a></code> | Replaces the contents of multiple npm package.json scripts. |
4886
5380
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.addTestCommand">addTestCommand</a></code> | DEPRECATED. |
4887
5381
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.hasScript">hasScript</a></code> | Indicates if a script by the name name is defined. |
4888
5382
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.removeScript">removeScript</a></code> | Removes the npm script (always successful). |
@@ -5299,6 +5793,22 @@ add/upgrade`. If you wish to specify a version range use this syntax:
5299
5793
 
5300
5794
  ---
5301
5795
 
5796
+ ##### `addScripts` <a name="addScripts" id="projen-cdktf-hybrid-construct.HybridModule.addScripts"></a>
5797
+
5798
+ ```typescript
5799
+ public addScripts(scripts: {[ key: string ]: string}): void
5800
+ ```
5801
+
5802
+ Replaces the contents of multiple npm package.json scripts.
5803
+
5804
+ ###### `scripts`<sup>Required</sup> <a name="scripts" id="projen-cdktf-hybrid-construct.HybridModule.addScripts.parameter.scripts"></a>
5805
+
5806
+ - *Type:* {[ key: string ]: string}
5807
+
5808
+ The scripts to set.
5809
+
5810
+ ---
5811
+
5302
5812
  ##### ~~`addTestCommand`~~ <a name="addTestCommand" id="projen-cdktf-hybrid-construct.HybridModule.addTestCommand"></a>
5303
5813
 
5304
5814
  ```typescript
@@ -5313,7 +5823,7 @@ DEPRECATED.
5313
5823
 
5314
5824
  ---
5315
5825
 
5316
- ##### `hasScript` <a name="hasScript" id="projen-cdktf-hybrid-construct.HybridModule.hasScript"></a>
5826
+ ##### ~~`hasScript`~~ <a name="hasScript" id="projen-cdktf-hybrid-construct.HybridModule.hasScript"></a>
5317
5827
 
5318
5828
  ```typescript
5319
5829
  public hasScript(name: string): boolean
@@ -5408,6 +5918,7 @@ The command to execute.
5408
5918
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.projectBuild">projectBuild</a></code> | <code>projen.ProjectBuild</code> | Manages the build process of the project. |
5409
5919
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.projenCommand">projenCommand</a></code> | <code>string</code> | The command to use in order to run the projen CLI. |
5410
5920
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.root">root</a></code> | <code>projen.Project</code> | The root project. |
5921
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.subprojects">subprojects</a></code> | <code>projen.Project[]</code> | Returns all the subprojects within this project. |
5411
5922
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.tasks">tasks</a></code> | <code>projen.Tasks</code> | Project tasks. |
5412
5923
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.testTask">testTask</a></code> | <code>projen.Task</code> | *No description.* |
5413
5924
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.defaultTask">defaultTask</a></code> | <code>projen.Task</code> | This is the "default" task, the one that executes "projen". |
@@ -5425,6 +5936,7 @@ The command to execute.
5425
5936
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.bundler">bundler</a></code> | <code>projen.javascript.Bundler</code> | *No description.* |
5426
5937
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.entrypoint">entrypoint</a></code> | <code>string</code> | *No description.* |
5427
5938
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.manifest">manifest</a></code> | <code>any</code> | *No description.* |
5939
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.npmrc">npmrc</a></code> | <code>projen.javascript.NpmConfig</code> | The .npmrc file. |
5428
5940
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.package">package</a></code> | <code>projen.javascript.NodePackage</code> | API for managing the node package. |
5429
5941
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.packageManager">packageManager</a></code> | <code>projen.javascript.NodePackageManager</code> | The package manager to use. |
5430
5942
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.runScriptCommand">runScriptCommand</a></code> | <code>string</code> | The command to use to run scripts (e.g. `yarn run` or `npm run` depends on the package manager). |
@@ -5432,7 +5944,7 @@ The command to execute.
5432
5944
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.buildWorkflow">buildWorkflow</a></code> | <code>projen.build.BuildWorkflow</code> | The PR build GitHub workflow. |
5433
5945
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.buildWorkflowJobId">buildWorkflowJobId</a></code> | <code>string</code> | The job ID of the build workflow. |
5434
5946
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.jest">jest</a></code> | <code>projen.javascript.Jest</code> | The Jest configuration (if enabled). |
5435
- | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.maxNodeVersion">maxNodeVersion</a></code> | <code>string</code> | Maximum node version required by this pacakge. |
5947
+ | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.maxNodeVersion">maxNodeVersion</a></code> | <code>string</code> | Maximum node version required by this package. |
5436
5948
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.minNodeVersion">minNodeVersion</a></code> | <code>string</code> | Minimum node.js version required by this package. |
5437
5949
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.npmignore">npmignore</a></code> | <code>projen.IgnoreFile</code> | The .npmignore file. |
5438
5950
  | <code><a href="#projen-cdktf-hybrid-construct.HybridModule.property.prettier">prettier</a></code> | <code>projen.javascript.Prettier</code> | *No description.* |
@@ -5658,6 +6170,18 @@ The root project.
5658
6170
 
5659
6171
  ---
5660
6172
 
6173
+ ##### `subprojects`<sup>Required</sup> <a name="subprojects" id="projen-cdktf-hybrid-construct.HybridModule.property.subprojects"></a>
6174
+
6175
+ ```typescript
6176
+ public readonly subprojects: Project[];
6177
+ ```
6178
+
6179
+ - *Type:* projen.Project[]
6180
+
6181
+ Returns all the subprojects within this project.
6182
+
6183
+ ---
6184
+
5661
6185
  ##### `tasks`<sup>Required</sup> <a name="tasks" id="projen-cdktf-hybrid-construct.HybridModule.property.tasks"></a>
5662
6186
 
5663
6187
  ```typescript
@@ -5877,6 +6401,18 @@ public readonly manifest: any;
5877
6401
 
5878
6402
  ---
5879
6403
 
6404
+ ##### `npmrc`<sup>Required</sup> <a name="npmrc" id="projen-cdktf-hybrid-construct.HybridModule.property.npmrc"></a>
6405
+
6406
+ ```typescript
6407
+ public readonly npmrc: NpmConfig;
6408
+ ```
6409
+
6410
+ - *Type:* projen.javascript.NpmConfig
6411
+
6412
+ The .npmrc file.
6413
+
6414
+ ---
6415
+
5880
6416
  ##### `package`<sup>Required</sup> <a name="package" id="projen-cdktf-hybrid-construct.HybridModule.property.package"></a>
5881
6417
 
5882
6418
  ```typescript
@@ -5973,7 +6509,7 @@ public readonly maxNodeVersion: string;
5973
6509
 
5974
6510
  - *Type:* string
5975
6511
 
5976
- Maximum node version required by this pacakge.
6512
+ Maximum node version required by this package.
5977
6513
 
5978
6514
  ---
5979
6515
 
@@ -6236,6 +6772,7 @@ new TerraformModule(options: TerraformModuleOptions)
6236
6772
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.addFields">addFields</a></code> | Directly set fields in `package.json`. |
6237
6773
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.addKeywords">addKeywords</a></code> | Adds keywords to package.json (deduplicated). |
6238
6774
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.addPeerDeps">addPeerDeps</a></code> | Defines peer dependencies. |
6775
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.addScripts">addScripts</a></code> | Replaces the contents of multiple npm package.json scripts. |
6239
6776
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.addTestCommand">addTestCommand</a></code> | DEPRECATED. |
6240
6777
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.hasScript">hasScript</a></code> | Indicates if a script by the name name is defined. |
6241
6778
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.removeScript">removeScript</a></code> | Removes the npm script (always successful). |
@@ -6652,6 +7189,22 @@ add/upgrade`. If you wish to specify a version range use this syntax:
6652
7189
 
6653
7190
  ---
6654
7191
 
7192
+ ##### `addScripts` <a name="addScripts" id="projen-cdktf-hybrid-construct.TerraformModule.addScripts"></a>
7193
+
7194
+ ```typescript
7195
+ public addScripts(scripts: {[ key: string ]: string}): void
7196
+ ```
7197
+
7198
+ Replaces the contents of multiple npm package.json scripts.
7199
+
7200
+ ###### `scripts`<sup>Required</sup> <a name="scripts" id="projen-cdktf-hybrid-construct.TerraformModule.addScripts.parameter.scripts"></a>
7201
+
7202
+ - *Type:* {[ key: string ]: string}
7203
+
7204
+ The scripts to set.
7205
+
7206
+ ---
7207
+
6655
7208
  ##### ~~`addTestCommand`~~ <a name="addTestCommand" id="projen-cdktf-hybrid-construct.TerraformModule.addTestCommand"></a>
6656
7209
 
6657
7210
  ```typescript
@@ -6666,7 +7219,7 @@ DEPRECATED.
6666
7219
 
6667
7220
  ---
6668
7221
 
6669
- ##### `hasScript` <a name="hasScript" id="projen-cdktf-hybrid-construct.TerraformModule.hasScript"></a>
7222
+ ##### ~~`hasScript`~~ <a name="hasScript" id="projen-cdktf-hybrid-construct.TerraformModule.hasScript"></a>
6670
7223
 
6671
7224
  ```typescript
6672
7225
  public hasScript(name: string): boolean
@@ -6761,6 +7314,7 @@ The command to execute.
6761
7314
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.projectBuild">projectBuild</a></code> | <code>projen.ProjectBuild</code> | Manages the build process of the project. |
6762
7315
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.projenCommand">projenCommand</a></code> | <code>string</code> | The command to use in order to run the projen CLI. |
6763
7316
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.root">root</a></code> | <code>projen.Project</code> | The root project. |
7317
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.subprojects">subprojects</a></code> | <code>projen.Project[]</code> | Returns all the subprojects within this project. |
6764
7318
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.tasks">tasks</a></code> | <code>projen.Tasks</code> | Project tasks. |
6765
7319
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.testTask">testTask</a></code> | <code>projen.Task</code> | *No description.* |
6766
7320
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.defaultTask">defaultTask</a></code> | <code>projen.Task</code> | This is the "default" task, the one that executes "projen". |
@@ -6778,6 +7332,7 @@ The command to execute.
6778
7332
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.bundler">bundler</a></code> | <code>projen.javascript.Bundler</code> | *No description.* |
6779
7333
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.entrypoint">entrypoint</a></code> | <code>string</code> | *No description.* |
6780
7334
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.manifest">manifest</a></code> | <code>any</code> | *No description.* |
7335
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.npmrc">npmrc</a></code> | <code>projen.javascript.NpmConfig</code> | The .npmrc file. |
6781
7336
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.package">package</a></code> | <code>projen.javascript.NodePackage</code> | API for managing the node package. |
6782
7337
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.packageManager">packageManager</a></code> | <code>projen.javascript.NodePackageManager</code> | The package manager to use. |
6783
7338
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.runScriptCommand">runScriptCommand</a></code> | <code>string</code> | The command to use to run scripts (e.g. `yarn run` or `npm run` depends on the package manager). |
@@ -6785,7 +7340,7 @@ The command to execute.
6785
7340
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.buildWorkflow">buildWorkflow</a></code> | <code>projen.build.BuildWorkflow</code> | The PR build GitHub workflow. |
6786
7341
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.buildWorkflowJobId">buildWorkflowJobId</a></code> | <code>string</code> | The job ID of the build workflow. |
6787
7342
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.jest">jest</a></code> | <code>projen.javascript.Jest</code> | The Jest configuration (if enabled). |
6788
- | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.maxNodeVersion">maxNodeVersion</a></code> | <code>string</code> | Maximum node version required by this pacakge. |
7343
+ | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.maxNodeVersion">maxNodeVersion</a></code> | <code>string</code> | Maximum node version required by this package. |
6789
7344
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.minNodeVersion">minNodeVersion</a></code> | <code>string</code> | Minimum node.js version required by this package. |
6790
7345
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.npmignore">npmignore</a></code> | <code>projen.IgnoreFile</code> | The .npmignore file. |
6791
7346
  | <code><a href="#projen-cdktf-hybrid-construct.TerraformModule.property.prettier">prettier</a></code> | <code>projen.javascript.Prettier</code> | *No description.* |
@@ -7011,6 +7566,18 @@ The root project.
7011
7566
 
7012
7567
  ---
7013
7568
 
7569
+ ##### `subprojects`<sup>Required</sup> <a name="subprojects" id="projen-cdktf-hybrid-construct.TerraformModule.property.subprojects"></a>
7570
+
7571
+ ```typescript
7572
+ public readonly subprojects: Project[];
7573
+ ```
7574
+
7575
+ - *Type:* projen.Project[]
7576
+
7577
+ Returns all the subprojects within this project.
7578
+
7579
+ ---
7580
+
7014
7581
  ##### `tasks`<sup>Required</sup> <a name="tasks" id="projen-cdktf-hybrid-construct.TerraformModule.property.tasks"></a>
7015
7582
 
7016
7583
  ```typescript
@@ -7230,6 +7797,18 @@ public readonly manifest: any;
7230
7797
 
7231
7798
  ---
7232
7799
 
7800
+ ##### `npmrc`<sup>Required</sup> <a name="npmrc" id="projen-cdktf-hybrid-construct.TerraformModule.property.npmrc"></a>
7801
+
7802
+ ```typescript
7803
+ public readonly npmrc: NpmConfig;
7804
+ ```
7805
+
7806
+ - *Type:* projen.javascript.NpmConfig
7807
+
7808
+ The .npmrc file.
7809
+
7810
+ ---
7811
+
7233
7812
  ##### `package`<sup>Required</sup> <a name="package" id="projen-cdktf-hybrid-construct.TerraformModule.property.package"></a>
7234
7813
 
7235
7814
  ```typescript
@@ -7326,7 +7905,7 @@ public readonly maxNodeVersion: string;
7326
7905
 
7327
7906
  - *Type:* string
7328
7907
 
7329
- Maximum node version required by this pacakge.
7908
+ Maximum node version required by this package.
7330
7909
 
7331
7910
  ---
7332
7911