projen 0.58.10 → 0.58.13

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.
Files changed (132) hide show
  1. package/.jsii +1684 -13
  2. package/docs/README.md +1 -0
  3. package/docs/api/API.md +383 -0
  4. package/docs/circleci.md +87 -0
  5. package/lib/awscdk/auto-discover.js +5 -5
  6. package/lib/awscdk/awscdk-app-java.js +1 -1
  7. package/lib/awscdk/awscdk-app-py.js +1 -1
  8. package/lib/awscdk/awscdk-app-ts.js +1 -1
  9. package/lib/awscdk/awscdk-construct.js +2 -2
  10. package/lib/awscdk/awscdk-deps-java.js +1 -1
  11. package/lib/awscdk/awscdk-deps-js.js +1 -1
  12. package/lib/awscdk/awscdk-deps.js +1 -1
  13. package/lib/awscdk/cdk-config.js +1 -1
  14. package/lib/awscdk/cdk-tasks.js +1 -1
  15. package/lib/awscdk/integration-test.js +1 -1
  16. package/lib/awscdk/lambda-extension.js +1 -1
  17. package/lib/awscdk/lambda-function.js +2 -2
  18. package/lib/build/build-workflow.js +1 -1
  19. package/lib/cdk/auto-discover-base.js +2 -2
  20. package/lib/cdk/construct-lib.js +1 -1
  21. package/lib/cdk/integration-test-base.js +1 -1
  22. package/lib/cdk/jsii-docgen.js +1 -1
  23. package/lib/cdk/jsii-project.js +1 -1
  24. package/lib/cdk8s/auto-discover.js +2 -2
  25. package/lib/cdk8s/cdk8s-app-ts.js +1 -1
  26. package/lib/cdk8s/cdk8s-construct.js +1 -1
  27. package/lib/cdk8s/integration-test.js +1 -1
  28. package/lib/cdktf/cdktf-construct.js +1 -1
  29. package/lib/circleci/circleci.d.ts +132 -0
  30. package/lib/circleci/circleci.js +118 -0
  31. package/lib/circleci/constant.d.ts +5 -0
  32. package/lib/circleci/constant.js +10 -0
  33. package/lib/circleci/index.d.ts +3 -0
  34. package/lib/circleci/index.js +16 -0
  35. package/lib/circleci/model.d.ts +240 -0
  36. package/lib/circleci/model.js +37 -0
  37. package/lib/component.js +1 -1
  38. package/lib/dependencies.js +1 -1
  39. package/lib/dev-env.js +1 -1
  40. package/lib/docker-compose.js +2 -2
  41. package/lib/file.js +1 -1
  42. package/lib/gitattributes.js +1 -1
  43. package/lib/github/auto-approve.js +1 -1
  44. package/lib/github/auto-merge.js +1 -1
  45. package/lib/github/dependabot.js +1 -1
  46. package/lib/github/github-credentials.js +1 -1
  47. package/lib/github/github-project.js +1 -1
  48. package/lib/github/github.js +1 -1
  49. package/lib/github/mergify.js +1 -1
  50. package/lib/github/pr-template.js +1 -1
  51. package/lib/github/pull-request-lint.js +1 -1
  52. package/lib/github/stale.js +1 -1
  53. package/lib/github/task-workflow.js +1 -1
  54. package/lib/github/workflows.js +1 -1
  55. package/lib/gitlab/configuration.js +1 -1
  56. package/lib/gitlab/gitlab-configuration.js +1 -1
  57. package/lib/gitlab/nested-configuration.js +1 -1
  58. package/lib/gitpod.js +1 -1
  59. package/lib/ignore-file.js +1 -1
  60. package/lib/index.d.ts +1 -0
  61. package/lib/index.js +2 -1
  62. package/lib/ini.js +1 -1
  63. package/lib/java/java-project.js +1 -1
  64. package/lib/java/junit.js +1 -1
  65. package/lib/java/maven-compile.js +1 -1
  66. package/lib/java/maven-packaging.js +1 -1
  67. package/lib/java/maven-sample.js +1 -1
  68. package/lib/java/pom.js +1 -1
  69. package/lib/java/projenrc.js +1 -1
  70. package/lib/javascript/bundler.js +1 -1
  71. package/lib/javascript/eslint.js +1 -1
  72. package/lib/javascript/jest.js +1 -1
  73. package/lib/javascript/node-package.js +1 -1
  74. package/lib/javascript/node-project.js +1 -1
  75. package/lib/javascript/npm-config.js +1 -1
  76. package/lib/javascript/prettier.js +1 -1
  77. package/lib/javascript/projenrc.js +1 -1
  78. package/lib/javascript/typescript-config.js +1 -1
  79. package/lib/javascript/upgrade-dependencies.js +2 -2
  80. package/lib/json.js +1 -1
  81. package/lib/license.js +1 -1
  82. package/lib/logger.js +1 -1
  83. package/lib/makefile.js +1 -1
  84. package/lib/object-file.js +1 -1
  85. package/lib/project-build.js +1 -1
  86. package/lib/project.js +1 -1
  87. package/lib/projects.js +1 -1
  88. package/lib/projenrc-json.js +1 -1
  89. package/lib/python/pip.js +1 -1
  90. package/lib/python/poetry.js +2 -2
  91. package/lib/python/projenrc.js +1 -1
  92. package/lib/python/pytest-sample.js +1 -1
  93. package/lib/python/pytest.js +1 -1
  94. package/lib/python/python-project.js +1 -1
  95. package/lib/python/python-sample.js +1 -1
  96. package/lib/python/requirements-file.js +1 -1
  97. package/lib/python/setuppy.js +1 -1
  98. package/lib/python/setuptools.js +1 -1
  99. package/lib/python/venv.js +1 -1
  100. package/lib/readme.js +1 -1
  101. package/lib/release/publisher.js +1 -1
  102. package/lib/release/release-trigger.js +1 -1
  103. package/lib/release/release.js +1 -1
  104. package/lib/renovatebot.js +1 -1
  105. package/lib/sample-file.js +2 -2
  106. package/lib/semver.js +1 -1
  107. package/lib/source-code.js +1 -1
  108. package/lib/task-runtime.js +1 -1
  109. package/lib/task.js +1 -1
  110. package/lib/tasks.js +1 -1
  111. package/lib/testing.js +1 -1
  112. package/lib/textfile.js +1 -1
  113. package/lib/toml.js +1 -1
  114. package/lib/typescript/projenrc.js +1 -1
  115. package/lib/typescript/typescript-typedoc.js +1 -1
  116. package/lib/typescript/typescript.js +3 -3
  117. package/lib/util.d.ts +1 -0
  118. package/lib/util.js +25 -2
  119. package/lib/version.js +1 -1
  120. package/lib/vscode/devcontainer.js +1 -1
  121. package/lib/vscode/launch-config.js +1 -1
  122. package/lib/vscode/vscode.js +1 -1
  123. package/lib/web/next.js +3 -3
  124. package/lib/web/postcss.js +1 -1
  125. package/lib/web/react.js +4 -4
  126. package/lib/web/tailwind.js +1 -1
  127. package/lib/xmlfile.js +1 -1
  128. package/lib/yaml.js +1 -1
  129. package/node_modules/xmlbuilder2/node_modules/@types/node/README.md +1 -1
  130. package/node_modules/xmlbuilder2/node_modules/@types/node/package.json +2 -2
  131. package/node_modules/xmlbuilder2/node_modules/@types/node/url.d.ts +5 -1
  132. package/package.json +2 -2
package/docs/README.md CHANGED
@@ -7,6 +7,7 @@
7
7
  * [Bundling](bundling.md)
8
8
  * [Components](components.md)
9
9
  * [CDK8s](cdk8s.md)
10
+ * [CircleCI](circleci.md)
10
11
  * [Dependencies](deps.md)
11
12
  * [Escape hatches](escape-hatches.md)
12
13
  * [Ejecting](eject.md)
package/docs/api/API.md CHANGED
@@ -70,6 +70,7 @@ Name|Description
70
70
  [cdk8s.IntegrationTest](#projen-cdk8s-integrationtest)|CDK8S integration test.
71
71
  [cdk8s.IntegrationTestAutoDiscover](#projen-cdk8s-integrationtestautodiscover)|Discovers and creates integration tests from files in the test root.
72
72
  [cdktf.ConstructLibraryCdktf](#projen-cdktf-constructlibrarycdktf)|CDKTF construct library project.
73
+ [circleci.Circleci](#projen-circleci-circleci)|Circleci Class to manage `.circleci/config.yml`. Check projen's docs for more information.
73
74
  [github.AutoApprove](#projen-github-autoapprove)|Auto approve pull requests that meet a criteria.
74
75
  [github.AutoMerge](#projen-github-automerge)|Sets up mergify to merging approved pull requests.
75
76
  [github.Dependabot](#projen-github-dependabot)|Defines dependabot configuration for node projects.
@@ -227,6 +228,20 @@ Name|Description
227
228
  [cdk8s.IntegrationTestAutoDiscoverOptions](#projen-cdk8s-integrationtestautodiscoveroptions)|*No description*
228
229
  [cdk8s.IntegrationTestOptions](#projen-cdk8s-integrationtestoptions)|Options for IntegrationTest.
229
230
  [cdktf.ConstructLibraryCdktfOptions](#projen-cdktf-constructlibrarycdktfoptions)|*No description*
231
+ [circleci.CircleCiProps](#projen-circleci-circleciprops)|Options for class {@link Circleci}.
232
+ [circleci.Docker](#projen-circleci-docker)|Options for docker executor.
233
+ [circleci.Filter](#projen-circleci-filter)|The branches key controls whether the current branch should have a schedule trigger created for it, where current branch is the branch containing the config.yml file with the trigger stanza. That is, a push on the main branch will only schedule a workflow for the main branch.
234
+ [circleci.FilterConfig](#projen-circleci-filterconfig)|set an inclusive or exclusive filter.
235
+ [circleci.Job](#projen-circleci-job)|A Workflow is comprised of one or more uniquely named jobs.
236
+ [circleci.Machine](#projen-circleci-machine)|*No description*
237
+ [circleci.Macos](#projen-circleci-macos)|CircleCI supports running jobs on macOS, to allow you to build, test, and deploy apps for macOS, iOS, tvOS and watchOS.
238
+ [circleci.Matrix](#projen-circleci-matrix)|The matrix stanza allows you to run a parameterized job multiple times with different arguments.
239
+ [circleci.Run](#projen-circleci-run)|Used for invoking all command-line programs, taking either a map of configuration values, or, when called in its short-form, a string that will be used as both the command and name.
240
+ [circleci.Schedule](#projen-circleci-schedule)|A workflow may have a schedule indicating it runs at a certain time.
241
+ [circleci.StepRun](#projen-circleci-steprun)|Execution steps for Job.
242
+ [circleci.Triggers](#projen-circleci-triggers)|Specifies which triggers will cause this workflow to be executed.
243
+ [circleci.Workflow](#projen-circleci-workflow)|Used for orchestrating all jobs.
244
+ [circleci.WorkflowJob](#projen-circleci-workflowjob)|A Job is part of Workflow.
230
245
  [github.AutoApproveOptions](#projen-github-autoapproveoptions)|Options for 'AutoApprove'.
231
246
  [github.AutoMergeOptions](#projen-github-automergeoptions)|*No description*
232
247
  [github.DependabotIgnore](#projen-github-dependabotignore)|You can use the `ignore` option to customize which dependencies are updated.
@@ -398,6 +413,9 @@ Name|Description
398
413
  [RenovatebotScheduleInterval](#projen-renovatebotscheduleinterval)|How often to check for new versions and raise pull requests for version updates.
399
414
  [awscdk.ApprovalLevel](#projen-awscdk-approvallevel)|Which approval is required when deploying CDK apps.
400
415
  [cdk.Stability](#projen-cdk-stability)|*No description*
416
+ [circleci.JobType](#projen-circleci-jobtype)|A job may have a type of approval indicating it must be manually approved before downstream jobs may proceed.
417
+ [circleci.JobWhen](#projen-circleci-jobwhen)|Specify when to enable or disable the step.
418
+ [circleci.ResourceClass](#projen-circleci-resourceclass)|The resource_class feature allows configuring CPU and RAM resources for each job.
401
419
  [github.DependabotRegistryType](#projen-github-dependabotregistrytype)|Each configuration type requires you to provide particular settings.
402
420
  [github.DependabotScheduleInterval](#projen-github-dependabotscheduleinterval)|How often to check for new versions and raise pull requests for version updates.
403
421
  [github.VersioningStrategy](#projen-github-versioningstrategy)|The strategy to use when edits manifest and lock files.
@@ -5696,6 +5714,78 @@ new cdktf.ConstructLibraryCdktf(options: ConstructLibraryCdktfOptions)
5696
5714
 
5697
5715
 
5698
5716
 
5717
+ ## class Circleci 🔹 <a id="projen-circleci-circleci"></a>
5718
+
5719
+ Circleci Class to manage `.circleci/config.yml`. Check projen's docs for more information.
5720
+
5721
+ __Submodule__: circleci
5722
+
5723
+ __Extends__: [Component](#projen-component)
5724
+
5725
+ ### Initializer
5726
+
5727
+
5728
+
5729
+
5730
+ ```ts
5731
+ new circleci.Circleci(project: Project, options?: CircleCiProps)
5732
+ ```
5733
+
5734
+ * **project** (<code>[Project](#projen-project)</code>) *No description*
5735
+ * **options** (<code>[circleci.CircleCiProps](#projen-circleci-circleciprops)</code>) *No description*
5736
+ * **jobs** (<code>Array<[circleci.Job](#projen-circleci-job)></code>) List of Jobs to create unique steps per pipeline, e.g. ```json jobs: [{ identifier: "compile", docker: { image: "golang:alpine" } steps: ["checkout", run: {command: "go build ."}] }] ```. __*Optional*__
5737
+ * **orbs** (<code>Map<string, string></code>) Contains a map of CirclCi Orbs ```json orbs: { node: "circleci/node@5.0.1" slack: "circleci/slack@4.8.3" } ```. __*Optional*__
5738
+ * **setup** (<code>boolean</code>) The setup field enables you to conditionally trigger configurations from outside the primary .circleci parent directory, update pipeline parameters, or generate customized configurations. __*Optional*__
5739
+ * **version** (<code>number</code>) pipeline version. __*Default*__: 2.1
5740
+ * **workflows** (<code>Array<[circleci.Workflow](#projen-circleci-workflow)></code>) List of Workflows of pipeline, e.g. ```json workflows: { { identifier: "build", jobs: [{ identifier: "node/install", context: ["npm"], }] } } ```. __*Optional*__
5741
+
5742
+
5743
+
5744
+ ### Properties
5745
+
5746
+
5747
+ Name | Type | Description
5748
+ -----|------|-------------
5749
+ **file**🔹 | <code>[YamlFile](#projen-yamlfile)</code> | The yaml file for the Circleci pipeline.
5750
+
5751
+ ### Methods
5752
+
5753
+
5754
+ #### addOrb(name, orb)🔹 <a id="projen-circleci-circleci-addorb"></a>
5755
+
5756
+ Add a Circleci Orb to pipeline.
5757
+
5758
+ Will throw error if the orb already exists
5759
+
5760
+ ```ts
5761
+ addOrb(name: string, orb: string): void
5762
+ ```
5763
+
5764
+ * **name** (<code>string</code>) *No description*
5765
+ * **orb** (<code>string</code>) *No description*
5766
+
5767
+
5768
+
5769
+
5770
+ #### addWorkflow(workflow)🔹 <a id="projen-circleci-circleci-addworkflow"></a>
5771
+
5772
+ add new workflow to existing pipeline.
5773
+
5774
+ ```ts
5775
+ addWorkflow(workflow: Workflow): void
5776
+ ```
5777
+
5778
+ * **workflow** (<code>[circleci.Workflow](#projen-circleci-workflow)</code>) *No description*
5779
+ * **identifier** (<code>string</code>) name of dynamic key *.
5780
+ * **jobs** (<code>Array<[circleci.WorkflowJob](#projen-circleci-workflowjob)></code>) *No description* __*Optional*__
5781
+ * **triggers** (<code>Array<[circleci.Triggers](#projen-circleci-triggers)></code>) *No description* __*Optional*__
5782
+ * **when** (<code>any</code>) when is too dynamic to be casted to interfaces. __*Optional*__
5783
+
5784
+
5785
+
5786
+
5787
+
5788
+
5699
5789
  ## class AutoApprove 🔹 <a id="projen-github-autoapprove"></a>
5700
5790
 
5701
5791
  Auto approve pull requests that meet a criteria.
@@ -13855,6 +13945,263 @@ Name | Type | Description
13855
13945
 
13856
13946
 
13857
13947
 
13948
+ ## struct CircleCiProps 🔹 <a id="projen-circleci-circleciprops"></a>
13949
+
13950
+
13951
+ Options for class {@link Circleci}.
13952
+
13953
+
13954
+
13955
+ Name | Type | Description
13956
+ -----|------|-------------
13957
+ **jobs**?🔹 | <code>Array<[circleci.Job](#projen-circleci-job)></code> | List of Jobs to create unique steps per pipeline, e.g. ```json jobs: [{ identifier: "compile", docker: { image: "golang:alpine" } steps: ["checkout", run: {command: "go build ."}] }] ```.<br/>__*Optional*__
13958
+ **orbs**?🔹 | <code>Map<string, string></code> | Contains a map of CirclCi Orbs ```json orbs: { node: "circleci/node@5.0.1" slack: "circleci/slack@4.8.3" } ```.<br/>__*Optional*__
13959
+ **setup**?🔹 | <code>boolean</code> | The setup field enables you to conditionally trigger configurations from outside the primary .circleci parent directory, update pipeline parameters, or generate customized configurations.<br/>__*Optional*__
13960
+ **version**?🔹 | <code>number</code> | pipeline version.<br/>__*Default*__: 2.1
13961
+ **workflows**?🔹 | <code>Array<[circleci.Workflow](#projen-circleci-workflow)></code> | List of Workflows of pipeline, e.g. ```json workflows: { { identifier: "build", jobs: [{ identifier: "node/install", context: ["npm"], }] } } ```.<br/>__*Optional*__
13962
+
13963
+
13964
+
13965
+ ## struct Docker 🔹 <a id="projen-circleci-docker"></a>
13966
+
13967
+
13968
+ Options for docker executor.
13969
+
13970
+
13971
+
13972
+ Name | Type | Description
13973
+ -----|------|-------------
13974
+ **image**🔹 | <code>string</code> | The name of a custom docker image to use.
13975
+ **auth**?🔹 | <code>Map<string, string></code> | Authentication for registries using standard docker login credentials.<br/>__*Optional*__
13976
+ **awsAuth**?🔹 | <code>Map<string, string></code> | Authentication for AWS Elastic Container Registry (ECR).<br/>__*Optional*__
13977
+ **command**?🔹 | <code>Array<string></code> | The command used as pid 1 (or args for entrypoint) when launching the container.<br/>__*Optional*__
13978
+ **entrypoint**?🔹 | <code>Array<string></code> | The command used as executable when launching the container.<br/>__*Optional*__
13979
+ **environment**?🔹 | <code>Map<string, string &#124; number &#124; boolean></code> | A map of environment variable names and values.<br/>__*Optional*__
13980
+ **name**?🔹 | <code>string</code> | The name the container is reachable by.<br/>__*Optional*__
13981
+ **user**?🔹 | <code>string</code> | Which user to run commands as within the Docker container.<br/>__*Optional*__
13982
+
13983
+
13984
+
13985
+ ## struct Filter 🔹 <a id="projen-circleci-filter"></a>
13986
+
13987
+
13988
+ The branches key controls whether the current branch should have a schedule trigger created for it, where current branch is the branch containing the config.yml file with the trigger stanza. That is, a push on the main branch will only schedule a workflow for the main branch.
13989
+
13990
+ Branches can have the keys only and ignore which either map to a single string naming a branch.
13991
+ You may also use regular expressions to match against branches by enclosing them with /’s, or map to a list of such strings.
13992
+ Regular expressions must match the entire string.
13993
+
13994
+ Any branches that match only will run the job.
13995
+ Any branches that match ignore will not run the job.
13996
+ If neither only nor ignore are specified then all branches will run the job.
13997
+ If both only and ignore are specified the only is considered before ignore.
13998
+
13999
+
14000
+
14001
+ Name | Type | Description
14002
+ -----|------|-------------
14003
+ **branches**?🔹 | <code>[circleci.FilterConfig](#projen-circleci-filterconfig)</code> | __*Optional*__
14004
+ **tags**?🔹 | <code>[circleci.FilterConfig](#projen-circleci-filterconfig)</code> | __*Optional*__
14005
+
14006
+
14007
+
14008
+ ## struct FilterConfig 🔹 <a id="projen-circleci-filterconfig"></a>
14009
+
14010
+
14011
+ set an inclusive or exclusive filter.
14012
+
14013
+
14014
+
14015
+ Name | Type | Description
14016
+ -----|------|-------------
14017
+ **ignore**?🔹 | <code>Array<string></code> | Either a single branch specifier, or a list of branch specifiers.<br/>__*Optional*__
14018
+ **only**?🔹 | <code>Array<string></code> | Either a single branch specifier, or a list of branch specifiers.<br/>__*Optional*__
14019
+
14020
+
14021
+
14022
+ ## struct Job 🔹 <a id="projen-circleci-job"></a>
14023
+
14024
+
14025
+ A Workflow is comprised of one or more uniquely named jobs.
14026
+
14027
+ Jobs are specified in the jobs map,
14028
+ see Sample 2.0 config.yml for two examples of a job map.
14029
+ The name of the job is the key in the map, and the value is a map describing the job.
14030
+ Each job consists of the job’s name as a key and a map as a value. A name should be case insensitive unique within a current jobs list.
14031
+
14032
+
14033
+
14034
+ Name | Type | Description
14035
+ -----|------|-------------
14036
+ **identifier**🔹 | <code>string</code> | name of dynamic key *.
14037
+ **docker**?🔹 | <code>Array<[circleci.Docker](#projen-circleci-docker)></code> | __*Optional*__
14038
+ **environment**?🔹 | <code>Map<string, string &#124; number &#124; boolean></code> | A map of environment variable names and values.<br/>__*Optional*__
14039
+ **machine**?🔹 | <code>[circleci.Machine](#projen-circleci-machine)</code> | __*Optional*__
14040
+ **macos**?🔹 | <code>[circleci.Macos](#projen-circleci-macos)</code> | __*Optional*__
14041
+ **parallelism**?🔹 | <code>number</code> | Number of parallel instances of this job to run (default: 1).<br/>__*Optional*__
14042
+ **parameters**?🔹 | <code>Map<string, string></code> | Parameters for making a job explicitly configurable in a workflow.<br/>__*Optional*__
14043
+ **resourceClass**?🔹 | <code>string</code> | {@link ResourceClass}.<br/>__*Optional*__
14044
+ **shell**?🔹 | <code>string</code> | Shell to use for execution command in all steps.<br/>__*Optional*__
14045
+ **steps**?🔹 | <code>Array<any></code> | no type support here, for syntax {@see https://circleci.com/docs/2.0/configuration-reference/#steps}.<br/>__*Optional*__
14046
+ **workingDirectory**?🔹 | <code>string</code> | In which directory to run the steps.<br/>__*Optional*__
14047
+
14048
+
14049
+
14050
+ ## struct Machine 🔹 <a id="projen-circleci-machine"></a>
14051
+
14052
+
14053
+
14054
+
14055
+
14056
+
14057
+ Name | Type | Description
14058
+ -----|------|-------------
14059
+ **image**🔹 | <code>string</code> | The VM image to use.
14060
+ **dockerLayerCaching**?🔹 | <code>string</code> | enable docker layer caching.<br/>__*Optional*__
14061
+
14062
+
14063
+
14064
+ ## struct Macos 🔹 <a id="projen-circleci-macos"></a>
14065
+
14066
+
14067
+ CircleCI supports running jobs on macOS, to allow you to build, test, and deploy apps for macOS, iOS, tvOS and watchOS.
14068
+
14069
+ To run a job in a macOS virtual machine,
14070
+ you must add the macos key to the top-level configuration for the job and specify
14071
+ the version of Xcode you would like to use.
14072
+
14073
+
14074
+
14075
+ Name | Type | Description
14076
+ -----|------|-------------
14077
+ **xcode**🔹 | <code>string</code> | The version of Xcode that is installed on the virtual machine.
14078
+
14079
+
14080
+
14081
+ ## struct Matrix 🔹 <a id="projen-circleci-matrix"></a>
14082
+
14083
+
14084
+ The matrix stanza allows you to run a parameterized job multiple times with different arguments.
14085
+
14086
+
14087
+
14088
+ Name | Type | Description
14089
+ -----|------|-------------
14090
+ **alias**?🔹 | <code>string</code> | An alias for the matrix, usable from another job’s requires stanza.<br/>__*Optional*__
14091
+ **parameters**?🔹 | <code>Map<string, Array<string> &#124; Array<number>></code> | A map of parameter names to every value the job should be called with.<br/>__*Optional*__
14092
+
14093
+
14094
+
14095
+ ## struct Run 🔹 <a id="projen-circleci-run"></a>
14096
+
14097
+
14098
+ Used for invoking all command-line programs, taking either a map of configuration values, or, when called in its short-form, a string that will be used as both the command and name.
14099
+
14100
+ Run commands are executed using non-login shells by default,
14101
+ so you must explicitly source any dotfiles as part of the command.
14102
+
14103
+ Not used because type incompatible types in steps array
14104
+
14105
+
14106
+
14107
+ Name | Type | Description
14108
+ -----|------|-------------
14109
+ **command**🔹 | <code>string</code> | Command to run via the shell.
14110
+ **background**?🔹 | <code>string</code> | Whether this step should run in the background (default: false).<br/>__*Optional*__
14111
+ **environment**?🔹 | <code>string</code> | Additional environmental variables, locally scoped to command.<br/>__*Optional*__
14112
+ **name**?🔹 | <code>string</code> | Title of the step to be shown in the CircleCI UI (default: full command).<br/>__*Optional*__
14113
+ **noOutputTimeout**?🔹 | <code>string</code> | Elapsed time the command can run without output such as “20m”, “1.25h”, “5s”. The default is 10 minutes.<br/>__*Optional*__
14114
+ **shell**?🔹 | <code>string</code> | Shell to use for execution command.<br/>__*Optional*__
14115
+ **when**?🔹 | <code>string</code> | Specify when to enable or disable the step.<br/>__*Optional*__
14116
+ **workingDirectory**?🔹 | <code>string</code> | In which directory to run this step.<br/>__*Optional*__
14117
+
14118
+
14119
+
14120
+ ## struct Schedule 🔹 <a id="projen-circleci-schedule"></a>
14121
+
14122
+
14123
+ A workflow may have a schedule indicating it runs at a certain time.
14124
+
14125
+
14126
+
14127
+ Name | Type | Description
14128
+ -----|------|-------------
14129
+ **filters**🔹 | <code>[circleci.Filter](#projen-circleci-filter)</code> | <span></span>
14130
+ **cron**?🔹 | <code>string</code> | The cron key is defined using POSIX crontab syntax.<br/>__*Optional*__
14131
+
14132
+
14133
+
14134
+ ## struct StepRun 🔹 <a id="projen-circleci-steprun"></a>
14135
+
14136
+
14137
+ Execution steps for Job.
14138
+
14139
+
14140
+
14141
+ Name | Type | Description
14142
+ -----|------|-------------
14143
+ **run**?🔹 | <code>[circleci.Run](#projen-circleci-run)</code> | __*Optional*__
14144
+
14145
+
14146
+
14147
+ ## struct Triggers 🔹 <a id="projen-circleci-triggers"></a>
14148
+
14149
+
14150
+ Specifies which triggers will cause this workflow to be executed.
14151
+
14152
+ Default behavior is to trigger the workflow when pushing to a branch.
14153
+
14154
+
14155
+
14156
+ Name | Type | Description
14157
+ -----|------|-------------
14158
+ **schedule**?🔹 | <code>[circleci.Schedule](#projen-circleci-schedule)</code> | __*Optional*__
14159
+
14160
+
14161
+
14162
+ ## struct Workflow 🔹 <a id="projen-circleci-workflow"></a>
14163
+
14164
+
14165
+ Used for orchestrating all jobs.
14166
+
14167
+ Each workflow consists of the workflow name as a key and a map as a value.
14168
+ A name should be unique within the current config.yml.
14169
+ The top-level keys for the Workflows configuration are version and jobs.
14170
+
14171
+
14172
+
14173
+ Name | Type | Description
14174
+ -----|------|-------------
14175
+ **identifier**🔹 | <code>string</code> | name of dynamic key *.
14176
+ **jobs**?🔹 | <code>Array<[circleci.WorkflowJob](#projen-circleci-workflowjob)></code> | __*Optional*__
14177
+ **triggers**?🔹 | <code>Array<[circleci.Triggers](#projen-circleci-triggers)></code> | __*Optional*__
14178
+ **when**?🔹 | <code>any</code> | when is too dynamic to be casted to interfaces.<br/>__*Optional*__
14179
+
14180
+
14181
+
14182
+ ## struct WorkflowJob 🔹 <a id="projen-circleci-workflowjob"></a>
14183
+
14184
+
14185
+ A Job is part of Workflow.
14186
+
14187
+ A Job can be created with {@link Job} or it can be provided by the orb
14188
+
14189
+
14190
+
14191
+ Name | Type | Description
14192
+ -----|------|-------------
14193
+ **identifier**🔹 | <code>string</code> | name of dynamic key *.
14194
+ **context**?🔹 | <code>Array<string></code> | The name of the context(s).<br/>__*Optional*__
14195
+ **filter**?🔹 | <code>[circleci.Filter](#projen-circleci-filter)</code> | Job Filters can have the key branches or tags.<br/>__*Optional*__
14196
+ **matrix**?🔹 | <code>[circleci.Matrix](#projen-circleci-matrix)</code> | __*Optional*__
14197
+ **name**?🔹 | <code>string</code> | A replacement for the job name.<br/>__*Optional*__
14198
+ **orbParameters**?🔹 | <code>Map<string, string &#124; number &#124; boolean></code> | Parameters passed to job when referencing a job from orb.<br/>__*Optional*__
14199
+ **parameters**?🔹 | <code>Map<string, string &#124; number &#124; boolean></code> | Parameters for making a job explicitly configurable in a workflow.<br/>__*Optional*__
14200
+ **requires**?🔹 | <code>Array<string></code> | A list of jobs that must succeed for the job to start.<br/>__*Optional*__
14201
+ **type**?🔹 | <code>[circleci.JobType](#projen-circleci-jobtype)</code> | A job may have a type of approval indicating it must be manually approved before downstream jobs may proceed.<br/>__*Optional*__
14202
+
14203
+
14204
+
13858
14205
  ## struct AutoApproveOptions 🔹 <a id="projen-github-autoapproveoptions"></a>
13859
14206
 
13860
14207
 
@@ -17585,6 +17932,42 @@ Name | Description
17585
17932
  **DEPRECATED** 🔹|
17586
17933
 
17587
17934
 
17935
+ ## enum JobType 🔹 <a id="projen-circleci-jobtype"></a>
17936
+
17937
+ A job may have a type of approval indicating it must be manually approved before downstream jobs may proceed.
17938
+
17939
+ Name | Description
17940
+ -----|-----
17941
+ **APPROVAL** 🔹|
17942
+
17943
+
17944
+ ## enum JobWhen 🔹 <a id="projen-circleci-jobwhen"></a>
17945
+
17946
+ Specify when to enable or disable the step.
17947
+
17948
+ Name | Description
17949
+ -----|-----
17950
+ **ALWAYS** 🔹|
17951
+ **ON_SUCCESS** 🔹|
17952
+ **ON_FAIL** 🔹|
17953
+
17954
+
17955
+ ## enum ResourceClass 🔹 <a id="projen-circleci-resourceclass"></a>
17956
+
17957
+ The resource_class feature allows configuring CPU and RAM resources for each job.
17958
+
17959
+ Different resource classes are available for different executors, as described in the tables below.
17960
+
17961
+ Name | Description
17962
+ -----|-----
17963
+ **SMALL** 🔹|
17964
+ **MEDIUM** 🔹|
17965
+ **MEDIUM_PLUS** 🔹|
17966
+ **LARGE_X** 🔹|
17967
+ **LARGE_2X** 🔹|
17968
+ **LARGE_2X_PLUS** 🔹|
17969
+
17970
+
17588
17971
  ## enum DependabotRegistryType 🔹 <a id="projen-github-dependabotregistrytype"></a>
17589
17972
 
17590
17973
  Each configuration type requires you to provide particular settings.
@@ -0,0 +1,87 @@
1
+ # CircleCi
2
+
3
+ CircleCi uses `.circleci/config.yml` to specify the configuration of a pipeline.
4
+ Configuration reference can be found [here](https://circleci.com/docs/2.0/configuration-reference).
5
+
6
+ Initial configuration can be created through options of [CircleCiProps](src/circleci/model.ts).
7
+ Additionally, you can add workflows or orbs later to your pipeline.
8
+ For full configuration example checkout [Circleci Tests](test/cirlceci/circleci.test.ts)
9
+
10
+ ```js
11
+ const { circleci, typescript } = require('projen');
12
+
13
+ const project = new typescript.TypeScriptProject({
14
+ name: 'projen-example',
15
+ defaultReleaseBranch: 'main',
16
+ });
17
+
18
+ const c = new circleci.Circleci(project, {
19
+ orbs: {
20
+ node: 'circleci/node@5.0.1',
21
+ },
22
+ jobs: [
23
+ {
24
+ identifier: "release",
25
+ resourceClass: circleci.ResourceClass.SMALL,
26
+ docker: [{
27
+ image: "cimg/node:lts"
28
+ }],
29
+ steps: [
30
+ "checkout",
31
+ {run: {command: "npx semantic-release"}},
32
+ ]
33
+ },
34
+ {
35
+ identifier: 'integ-test',
36
+ docker: [{
37
+ image: "cimg/golang:lts"
38
+ }],
39
+ steps: [
40
+ "checkout",
41
+ {
42
+ "go/test": {
43
+ covermode: "atomic",
44
+ failfast: true,
45
+ race: true,
46
+ },
47
+ }
48
+ ]
49
+ }
50
+ ],
51
+ workflows: [
52
+ {
53
+ identifier: 'build',
54
+ jobs: [
55
+ {
56
+ identifier: 'node/test',
57
+ orbParameters: {
58
+ "test-results-for": "jest"
59
+ }
60
+ },
61
+ {
62
+ identifier: "release",
63
+ filters: circleci.FilterMainBranchOnly,
64
+ }
65
+ ],
66
+ },
67
+ ],
68
+ });
69
+ c.addOrb("go", "circleci/go@1.7.1")
70
+ c.addWorkflow({
71
+ identifier: 'nightly',
72
+ triggers: [
73
+ {
74
+ schedule: {
75
+ cron: '0 0 * * *',
76
+ filters: circleci.FilterMainBranchOnly,
77
+ }
78
+ }
79
+ ],
80
+ jobs: [
81
+ {
82
+ identifier: 'integ-test'
83
+ }
84
+ ]
85
+ })
86
+ project.synth();
87
+ ```
@@ -27,7 +27,7 @@ class IntegrationTestAutoDiscover extends cdk_1.IntegrationTestAutoDiscoverBase
27
27
  }
28
28
  exports.IntegrationTestAutoDiscover = IntegrationTestAutoDiscover;
29
29
  _a = JSII_RTTI_SYMBOL_1;
30
- IntegrationTestAutoDiscover[_a] = { fqn: "projen.awscdk.IntegrationTestAutoDiscover", version: "0.58.10" };
30
+ IntegrationTestAutoDiscover[_a] = { fqn: "projen.awscdk.IntegrationTestAutoDiscover", version: "0.58.13" };
31
31
  /**
32
32
  * Creates lambdas from entry points discovered in the project's source tree.
33
33
  */
@@ -48,7 +48,7 @@ class LambdaAutoDiscover extends cdk_1.AutoDiscoverBase {
48
48
  }
49
49
  exports.LambdaAutoDiscover = LambdaAutoDiscover;
50
50
  _b = JSII_RTTI_SYMBOL_1;
51
- LambdaAutoDiscover[_b] = { fqn: "projen.awscdk.LambdaAutoDiscover", version: "0.58.10" };
51
+ LambdaAutoDiscover[_b] = { fqn: "projen.awscdk.LambdaAutoDiscover", version: "0.58.13" };
52
52
  /**
53
53
  * Creates edge lambdas from entry points discovered in the project's source tree.
54
54
  */
@@ -70,7 +70,7 @@ class EdgeLambdaAutoDiscover extends cdk_1.AutoDiscoverBase {
70
70
  }
71
71
  exports.EdgeLambdaAutoDiscover = EdgeLambdaAutoDiscover;
72
72
  _c = JSII_RTTI_SYMBOL_1;
73
- EdgeLambdaAutoDiscover[_c] = { fqn: "projen.awscdk.EdgeLambdaAutoDiscover", version: "0.58.10" };
73
+ EdgeLambdaAutoDiscover[_c] = { fqn: "projen.awscdk.EdgeLambdaAutoDiscover", version: "0.58.13" };
74
74
  /**
75
75
  * Creates Lambda Extensions from entrypoints discovered in the project's
76
76
  * source tree.
@@ -92,7 +92,7 @@ class LambdaExtensionAutoDiscover extends cdk_1.AutoDiscoverBase {
92
92
  }
93
93
  exports.LambdaExtensionAutoDiscover = LambdaExtensionAutoDiscover;
94
94
  _d = JSII_RTTI_SYMBOL_1;
95
- LambdaExtensionAutoDiscover[_d] = { fqn: "projen.awscdk.LambdaExtensionAutoDiscover", version: "0.58.10" };
95
+ LambdaExtensionAutoDiscover[_d] = { fqn: "projen.awscdk.LambdaExtensionAutoDiscover", version: "0.58.13" };
96
96
  /**
97
97
  * Discovers and creates integration tests and lambdas from code in the
98
98
  * project's source and test trees.
@@ -136,5 +136,5 @@ class AutoDiscover extends component_1.Component {
136
136
  }
137
137
  exports.AutoDiscover = AutoDiscover;
138
138
  _e = JSII_RTTI_SYMBOL_1;
139
- AutoDiscover[_e] = { fqn: "projen.awscdk.AutoDiscover", version: "0.58.10" };
139
+ AutoDiscover[_e] = { fqn: "projen.awscdk.AutoDiscover", version: "0.58.13" };
140
140
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1kaXNjb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3NjZGsvYXV0by1kaXNjb3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGdDQUlnQjtBQUNoQiw0Q0FBeUM7QUFHekMseURBRzRCO0FBQzVCLHlDQUlvQjtBQUNwQix5REFHNEI7QUFDNUIsdURBQWdGO0FBNkJoRjs7R0FFRztBQUNILE1BQWEsMkJBQTRCLFNBQVEscUNBQStCO0lBQzlFLFlBQVksT0FBZ0IsRUFBRSxPQUEyQztRQUN2RSxLQUFLLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXhCLEtBQUssTUFBTSxVQUFVLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUN6QyxJQUFJLGtDQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDaEMsVUFBVTtnQkFDVixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87Z0JBQ3hCLFlBQVksRUFBRSxPQUFPLENBQUMsWUFBWTtnQkFDbEMsR0FBRyxPQUFPLENBQUMsc0JBQXNCO2FBQ2xDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs7QUFaSCxrRUFhQzs7O0FBaUJEOztHQUVHO0FBQ0gsTUFBYSxrQkFBbUIsU0FBUSxzQkFBZ0I7SUFDdEQsWUFBWSxPQUFnQixFQUFFLE9BQWtDO1FBQzlELEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDYixVQUFVLEVBQUUsT0FBTyxDQUFDLE1BQU07WUFDMUIsU0FBUyxFQUFFLGdDQUFxQjtTQUNqQyxDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sVUFBVSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDekMsSUFBSSxnQ0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQy9CLFVBQVU7Z0JBQ1YsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO2dCQUN4QixHQUFHLE9BQU8sQ0FBQyxhQUFhO2FBQ3pCLENBQUMsQ0FBQztTQUNKO0lB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O2FBQ3ZELENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs7QUF2Q0gsb0NBd0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQXV0b0Rpc2NvdmVyQmFzZSxcbiAgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyQmFzZSxcbiAgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyQmFzZU9wdGlvbnMsXG59IGZyb20gXCIuLi9jZGtcIjtcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRcIjtcbmltcG9ydCB7IFByb2plY3QgfSBmcm9tIFwiLi4vcHJvamVjdFwiO1xuaW1wb3J0IHsgQXdzQ2RrRGVwcyB9IGZyb20gXCIuL2F3c2Nkay1kZXBzXCI7XG5pbXBvcnQge1xuICBJbnRlZ3JhdGlvblRlc3QsXG4gIEludGVncmF0aW9uVGVzdENvbW1vbk9wdGlvbnMsXG59IGZyb20gXCIuL2ludGVncmF0aW9uLXRlc3RcIjtcbmltcG9ydCB7XG4gIFRZUEVTQ1JJUFRfRURHRV9MQU1CREFfRVhULFxuICBUWVBFU0NSSVBUX0xBTUJEQV9FWFQsXG4gIFRZUEVTQ1JJUFRfTEFNQkRBX0VYVEVOU0lPTl9FWFQsXG59IGZyb20gXCIuL2ludGVybmFsXCI7XG5pbXBvcnQge1xuICBMYW1iZGFFeHRlbnNpb24sXG4gIExhbWJkYUV4dGVuc2lvbkNvbW1vbk9wdGlvbnMsXG59IGZyb20gXCIuL2xhbWJkYS1leHRlbnNpb25cIjtcbmltcG9ydCB7IExhbWJkYUZ1bmN0aW9uLCBMYW1iZGFGdW5jdGlvbkNvbW1vbk9wdGlvbnMgfSBmcm9tIFwiLi9sYW1iZGEtZnVuY3Rpb25cIjtcblxuLyoqXG4gKiBDb21tb24gb3B0aW9ucyBmb3IgYXV0byBkaXNjb3ZlcmluZyBwcm9qZWN0IHN1YmNvbXBvbmVudHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0b0Rpc2NvdmVyQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBQYXRoIHRvIHRoZSB0c2NvbmZpZyBmaWxlIHRvIHVzZSBmb3IgaW50ZWdyYXRpb24gdGVzdHMuXG4gICAqL1xuICByZWFkb25seSB0c2NvbmZpZ1BhdGg6IHN0cmluZztcblxuICAvKipcbiAgICogQVdTIENESyBkZXBlbmRlbmN5IG1hbmFnZXIuXG4gICAqL1xuICByZWFkb25seSBjZGtEZXBzOiBBd3NDZGtEZXBzO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBJbnRlZ3JhdGlvblRlc3RBdXRvRGlzY292ZXJgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyT3B0aW9uc1xuICBleHRlbmRzIEF1dG9EaXNjb3ZlckNvbW1vbk9wdGlvbnMsXG4gICAgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyQmFzZU9wdGlvbnMge1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgaW50ZWdyYXRpb24gdGVzdHMuXG4gICAqL1xuICByZWFkb25seSBpbnRlZ3JhdGlvblRlc3RPcHRpb25zPzogSW50ZWdyYXRpb25UZXN0Q29tbW9uT3B0aW9ucztcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGludGVncmF0aW9uIHRlc3RzIGZyb20gZW50cnkgcG9pbnRzIGRpc2NvdmVyZWQgaW4gdGhlIHRlc3QgdHJlZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3ZlciBleHRlbmRzIEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3ZlckJhc2Uge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBJbnRlZ3JhdGlvblRlc3RBdXRvRGlzY292ZXJPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCwgb3B0aW9ucyk7XG5cbiAgICBmb3IgKGNvbnN0IGVudHJ5cG9pbnQgb2YgdGhpcy5lbnRyeXBvaW50cykge1xuICAgICAgbmV3IEludGVncmF0aW9uVGVzdCh0aGlzLnByb2plY3QsIHtcbiAgICAgICAgZW50cnlwb2ludCxcbiAgICAgICAgY2RrRGVwczogb3B0aW9ucy5jZGtEZXBzLFxuICAgICAgICB0c2NvbmZpZ1BhdGg6IG9wdGlvbnMudHNjb25maWdQYXRoLFxuICAgICAgICAuLi5vcHRpb25zLmludGVncmF0aW9uVGVzdE9wdGlvbnMsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgTGFtYmRhQXV0b0Rpc2NvdmVyYFxuICovXG5leHBvcnQgaW50ZXJmYWNlIExhbWJkYUF1dG9EaXNjb3Zlck9wdGlvbnMgZXh0ZW5kcyBBdXRvRGlzY292ZXJDb21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFByb2plY3Qgc291cmNlIHRyZWUgKHJlbGF0aXZlIHRvIHByb2plY3Qgb3V0cHV0IGRpcmVjdG9yeSkuXG4gICAqL1xuICByZWFkb25seSBzcmNkaXI6IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgQVdTIExhbWJkYSBmdW5jdGlvbnMuXG4gICAqL1xuICByZWFkb25seSBsYW1iZGFPcHRpb25zPzogTGFtYmRhRnVuY3Rpb25Db21tb25PcHRpb25zO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgbGFtYmRhcyBmcm9tIGVudHJ5IHBvaW50cyBkaXNjb3ZlcmVkIGluIHRoZSBwcm9qZWN0J3Mgc291cmNlIHRyZWUuXG4gKi9cbmV4cG9ydCBjbGFzcyBMYW1iZGFBdXRvRGlzY292ZXIgZXh0ZW5kcyBBdXRvRGlzY292ZXJCYXNlIHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogTGFtYmRhQXV0b0Rpc2NvdmVyT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QsIHtcbiAgICAgIHByb2plY3RkaXI6IG9wdGlvbnMuc3JjZGlyLFxuICAgICAgZXh0ZW5zaW9uOiBUWVBFU0NSSVBUX0xBTUJEQV9FWFQsXG4gICAgfSk7XG5cbiAgICBmb3IgKGNvbnN0IGVudHJ5cG9pbnQgb2YgdGhpcy5lbnRyeXBvaW50cykge1xuICAgICAgbmV3IExhbWJkYUZ1bmN0aW9uKHRoaXMucHJvamVjdCwge1xuICAgICAgICBlbnRyeXBvaW50LFxuICAgICAgICBjZGtEZXBzOiBvcHRpb25zLmNka0RlcHMsXG4gICAgICAgIC4uLm9wdGlvbnMubGFtYmRhT3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBFZGdlTGFtYmRhQXV0b0Rpc2NvdmVyYFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVkZ2VMYW1iZGFBdXRvRGlzY292ZXJPcHRpb25zXG4gIGV4dGVuZHMgQXV0b0Rpc2NvdmVyQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBQcm9qZWN0IHNvdXJjZSB0cmVlIChyZWxhdGl2ZSB0byBwcm9qZWN0IG91dHB1dCBkaXJlY3RvcnkpLlxuICAgKi9cbiAgcmVhZG9ubHkgc3JjZGlyOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIEFXUyBMYW1iZGEgZnVuY3Rpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgbGFtYmRhT3B0aW9ucz86IExhbWJkYUZ1bmN0aW9uQ29tbW9uT3B0aW9ucztcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGVkZ2UgbGFtYmRhcyBmcm9tIGVudHJ5IHBvaW50cyBkaXNjb3ZlcmVkIGluIHRoZSBwcm9qZWN0J3Mgc291cmNlIHRyZWUuXG4gKi9cbmV4cG9ydCBjbGFzcyBFZGdlTGFtYmRhQXV0b0Rpc2NvdmVyIGV4dGVuZHMgQXV0b0Rpc2NvdmVyQmFzZSB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IEVkZ2VMYW1iZGFBdXRvRGlzY292ZXJPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCwge1xuICAgICAgcHJvamVjdGRpcjogb3B0aW9ucy5zcmNkaXIsXG4gICAgICBleHRlbnNpb246IFRZUEVTQ1JJUFRfRURHRV9MQU1CREFfRVhULFxuICAgIH0pO1xuXG4gICAgZm9yIChjb25zdCBlbnRyeXBvaW50IG9mIHRoaXMuZW50cnlwb2ludHMpIHtcbiAgICAgIG5ldyBMYW1iZGFGdW5jdGlvbih0aGlzLnByb2plY3QsIHtcbiAgICAgICAgZW50cnlwb2ludCxcbiAgICAgICAgY2RrRGVwczogb3B0aW9ucy5jZGtEZXBzLFxuICAgICAgICAuLi5vcHRpb25zLmxhbWJkYU9wdGlvbnMsXG4gICAgICAgIGVkZ2VMYW1iZGE6IHRydWUsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgTGFtYmRhRXh0ZW5zaW9uQXV0b0Rpc2NvdmVyYFxuICovXG5leHBvcnQgaW50ZXJmYWNlIExhbWJkYUV4dGVuc2lvbkF1dG9EaXNjb3Zlck9wdGlvbnNcbiAgZXh0ZW5kcyBBdXRvRGlzY292ZXJDb21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFByb2plY3Qgc291cmNlIHRyZWUgKHJlbGF0aXZlIHRvIHByb2plY3Qgb3V0cHV0IGRpcmVjdG9yeSkuXG4gICAqL1xuICByZWFkb25seSBzcmNkaXI6IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgbGFtYmRhIGV4dGVuc2lvbnMuXG4gICAqL1xuICByZWFkb25seSBsYW1iZGFFeHRlbnNpb25PcHRpb25zPzogTGFtYmRhRXh0ZW5zaW9uQ29tbW9uT3B0aW9ucztcbn1cblxuLyoqXG4gKiBDcmVhdGVzIExhbWJkYSBFeHRlbnNpb25zIGZyb20gZW50cnlwb2ludHMgZGlzY292ZXJlZCBpbiB0aGUgcHJvamVjdCdzXG4gKiBzb3VyY2UgdHJlZS5cbiAqL1xuZXhwb3J0IGNsYXNzIExhbWJkYUV4dGVuc2lvbkF1dG9EaXNjb3ZlciBleHRlbmRzIEF1dG9EaXNjb3ZlckJhc2Uge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBMYW1iZGFFeHRlbnNpb25BdXRvRGlzY292ZXJPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCwge1xuICAgICAgcHJvamVjdGRpcjogb3B0aW9ucy5zcmNkaXIsXG4gICAgICBleHRlbnNpb246IFRZUEVTQ1JJUFRfTEFNQkRBX0VYVEVOU0lPTl9FWFQsXG4gICAgfSk7XG5cbiAgICBmb3IgKGNvbnN0IGVudHJ5cG9pbnQgb2YgdGhpcy5lbnRyeXBvaW50cykge1xuICAgICAgbmV3IExhbWJkYUV4dGVuc2lvbih0aGlzLnByb2plY3QsIHtcbiAgICAgICAgZW50cnlwb2ludCxcbiAgICAgICAgY2RrRGVwczogb3B0aW9ucy5jZGtEZXBzLFxuICAgICAgICAuLi5vcHRpb25zLmxhbWJkYUV4dGVuc2lvbk9wdGlvbnMsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgQXV0b0Rpc2NvdmVyYFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9EaXNjb3Zlck9wdGlvbnNcbiAgZXh0ZW5kcyBMYW1iZGFBdXRvRGlzY292ZXJPcHRpb25zLFxuICAgIExhbWJkYUV4dGVuc2lvbkF1dG9EaXNjb3Zlck9wdGlvbnMsXG4gICAgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBBdXRvLWRpc2NvdmVyIGxhbWJkYSBmdW5jdGlvbnMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGxhbWJkYUF1dG9EaXNjb3Zlcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEF1dG8tZGlzY292ZXIgZWRnZSBsYW1iZGEgZnVuY3Rpb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBlZGdlTGFtYmRhQXV0b0Rpc2NvdmVyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQXV0by1kaXNjb3ZlciBsYW1iZGEgZXh0ZW5zaW9ucy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgbGFtYmRhRXh0ZW5zaW9uQXV0b0Rpc2NvdmVyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQXV0by1kaXNjb3ZlciBpbnRlZ3JhdGlvbiB0ZXN0cy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgaW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBEaXNjb3ZlcnMgYW5kIGNyZWF0ZXMgaW50ZWdyYXRpb24gdGVzdHMgYW5kIGxhbWJkYXMgZnJvbSBjb2RlIGluIHRoZVxuICogcHJvamVjdCdzIHNvdXJjZSBhbmQgdGVzdCB0cmVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEF1dG9EaXNjb3ZlciBleHRlbmRzIENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IEF1dG9EaXNjb3Zlck9wdGlvbnMpIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIGlmIChvcHRpb25zLmxhbWJkYUF1dG9EaXNjb3ZlciA/PyB0cnVlKSB7XG4gICAgICBuZXcgTGFtYmRhQXV0b0Rpc2NvdmVyKHRoaXMucHJvamVjdCwge1xuICAgICAgICBjZGtEZXBzOiBvcHRpb25zLmNka0RlcHMsXG4gICAgICAgIHRzY29uZmlnUGF0aDogb3B0aW9ucy50c2NvbmZpZ1BhdGgsXG4gICAgICAgIHNyY2Rpcjogb3B0aW9ucy5zcmNkaXIsXG4gICAgICAgIGxhbWJkYU9wdGlvbnM6IG9wdGlvbnMubGFtYmRhT3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmVkZ2VMYW1iZGFBdXRvRGlzY292ZXIgPz8gdHJ1ZSkge1xuICAgICAgbmV3IEVkZ2VMYW1iZGFBdXRvRGlzY292ZXIodGhpcy5wcm9qZWN0LCB7XG4gICAgICAgIGNka0RlcHM6IG9wdGlvbnMuY2RrRGVwcyxcbiAgICAgICAgdHNjb25maWdQYXRoOiBvcHRpb25zLnRzY29uZmlnUGF0aCxcbiAgICAgICAgc3JjZGlyOiBvcHRpb25zLnNyY2RpcixcbiAgICAgICAgbGFtYmRhT3B0aW9uczogb3B0aW9ucy5sYW1iZGFPcHRpb25zLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMubGFtYmRhRXh0ZW5zaW9uQXV0b0Rpc2NvdmVyID8/IHRydWUpIHtcbiAgICAgIG5ldyBMYW1iZGFFeHRlbnNpb25BdXRvRGlzY292ZXIodGhpcy5wcm9qZWN0LCB7XG4gICAgICAgIGNka0RlcHM6IG9wdGlvbnMuY2RrRGVwcyxcbiAgICAgICAgdHNjb25maWdQYXRoOiBvcHRpb25zLnRzY29uZmlnUGF0aCxcbiAgICAgICAgc3JjZGlyOiBvcHRpb25zLnNyY2RpcixcbiAgICAgICAgbGFtYmRhRXh0ZW5zaW9uT3B0aW9uczogb3B0aW9ucy5sYW1iZGFFeHRlbnNpb25PcHRpb25zLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuaW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyID8/IHRydWUpIHtcbiAgICAgIG5ldyBJbnRlZ3JhdGlvblRlc3RBdXRvRGlzY292ZXIodGhpcy5wcm9qZWN0LCB7XG4gICAgICAgIGNka0RlcHM6IG9wdGlvbnMuY2RrRGVwcyxcbiAgICAgICAgdGVzdGRpcjogb3B0aW9ucy50ZXN0ZGlyLFxuICAgICAgICB0c2NvbmZpZ1BhdGg6IG9wdGlvbnMudHNjb25maWdQYXRoLFxuICAgICAgICBpbnRlZ3JhdGlvblRlc3RPcHRpb25zOiBvcHRpb25zLmludGVncmF0aW9uVGVzdE9wdGlvbnMsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -82,5 +82,5 @@ class AwsCdkJavaApp extends java_1.JavaProject {
82
82
  }
83
83
  exports.AwsCdkJavaApp = AwsCdkJavaApp;
84
84
  _a = JSII_RTTI_SYMBOL_1;
85
- AwsCdkJavaApp[_a] = { fqn: "projen.awscdk.AwsCdkJavaApp", version: "0.58.10" };
85
+ AwsCdkJavaApp[_a] = { fqn: "projen.awscdk.AwsCdkJavaApp", version: "0.58.13" };
86
86
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzY2RrLWFwcC1qYXZhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F3c2Nkay9hd3NjZGstYXBwLWphdmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrQkFBNEI7QUFDNUIsMEJBQStDO0FBQy9DLGtDQUEwRDtBQUUxRCx5REFBb0Q7QUFDcEQsNkNBQWlFO0FBQ2pFLDJDQUF1QztBQWV2Qzs7OztHQUlHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsa0JBQVc7SUErQjVDLFlBQVksT0FBNkI7UUFDdkMsTUFBTSxtQkFBbUIsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6RCxNQUFNLFdBQVcsR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckQsTUFBTSxhQUFhLEdBQUcsbUJBQW1CLENBQUMsbUJBQW1CLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTFFLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLE1BQU0sRUFBRSxLQUFLO1lBQ2IsaUJBQWlCLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7U0FDekMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDO1FBQ25DLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUVuQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksaUNBQWMsQ0FBQyxJQUFJLEVBQUU7WUFDdEMsY0FBYyxFQUFFLGtCQUFjLENBQUMsT0FBTztZQUN0QyxHQUFHLE9BQU87U0FDWCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksb0JBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWhELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxzQkFBUyxDQUFDLElBQUksRUFBRTtZQUNuQyxHQUFHLEVBQUUsMENBQTBDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDL0QsWUFBWSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxHQUFHLENBQUM7WUFDOUMsR0FBRyxPQUFPO1NBQ1gsQ0FBQyxDQUFDO1FBRUgsSUFBSSxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksRUFBRTtZQUMxQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDbEI7SUFDSCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxnQkFBZ0IsQ0FBQyxHQUFHLE9BQWlCO1FBQzFDLEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbkM7SUFDSCxDQUFDO0lBRU8sU0FBUztRQUNmLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLE1BQU0sUUFBUSxHQUFHLEdBQUcsSUFBSSxDQUFDLGFBQWEsT0FBTyxDQUFDO1FBQzlDLElBQUksYUFBUyxDQUFDLElBQUksRUFBRSxXQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsRUFBRTtZQUN2RCxLQUFLLEVBQUU7Z0JBQ0wsQ0FBQyxRQUFRLENBQUMsRUFBRTtvQkFDVixXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUc7b0JBQzNCLEVBQUU7b0JBQ0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLElBQUksQ0FBQzt3QkFDL0IsQ0FBQyxDQUFDLHlDQUF5Qzt3QkFDM0MsQ0FBQyxDQUFDLG9DQUFvQztvQkFDeEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLElBQUksQ0FBQzt3QkFDL0IsQ0FBQyxDQUFDLDJDQUEyQzt3QkFDN0MsQ0FBQyxDQUFDLHNDQUFzQztvQkFDMUMsRUFBRTtvQkFDRixnQkFBZ0IsSUFBSSxDQUFDLGFBQWEsSUFBSTtvQkFDdEMsa0RBQWtEO29CQUNsRCwwQkFBMEI7b0JBQzFCLHVCQUF1QixJQUFJLENBQUMsSUFBSSxLQUFLO29CQUNyQyxrQkFBa0I7b0JBQ2xCLEtBQUs7b0JBQ0wsR0FBRztpQkFDSixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7YUFDYjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBdEdILHNDQXVHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpvaW4gfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgRGVwZW5kZW5jeVR5cGUsIFNhbXBsZURpciB9IGZyb20gXCIuLlwiO1xuaW1wb3J0IHsgSmF2YVByb2plY3QsIEphdmFQcm9qZWN0T3B0aW9ucyB9IGZyb20gXCIuLi9qYXZhXCI7XG5pbXBvcnQgeyBBd3NDZGtEZXBzLCBBd3NDZGtEZXBzQ29tbW9uT3B0aW9ucyB9IGZyb20gXCIuL2F3c2Nkay1kZXBzXCI7XG5pbXBvcnQgeyBBd3NDZGtEZXBzSmF2YSB9IGZyb20gXCIuL2F3c2Nkay1kZXBzLWphdmFcIjtcbmltcG9ydCB7IENka0NvbmZpZywgQ2RrQ29uZmlnQ29tbW9uT3B0aW9ucyB9IGZyb20gXCIuL2Nkay1jb25maWdcIjtcbmltcG9ydCB7IENka1Rhc2tzIH0gZnJvbSBcIi4vY2RrLXRhc2tzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXdzQ2RrSmF2YUFwcE9wdGlvbnNcbiAgZXh0ZW5kcyBKYXZhUHJvamVjdE9wdGlvbnMsXG4gICAgQ2RrQ29uZmlnQ29tbW9uT3B0aW9ucyxcbiAgICBBd3NDZGtEZXBzQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgSmF2YSBjbGFzcyB3aXRoIHRoZSBzdGF0aWMgYG1haW4oKWAgbWV0aG9kLiBUaGlzIG1ldGhvZFxuICAgKiBzaG91bGQgY2FsbCBgYXBwLnN5bnRoKClgIG9uIHRoZSBDREsgYXBwLlxuICAgKlxuICAgKiBAZGVmYXVsdCBcIm9yZy5hY21lLk15QXBwXCJcbiAgICovXG4gIHJlYWRvbmx5IG1haW5DbGFzczogc3RyaW5nO1xufVxuXG4vKipcbiAqIEFXUyBDREsgYXBwIGluIEphdmEuXG4gKlxuICogQHBqaWQgYXdzY2RrLWFwcC1qYXZhXG4gKi9cbmV4cG9ydCBjbGFzcyBBd3NDZGtKYXZhQXBwIGV4dGVuZHMgSmF2YVByb2plY3Qge1xuICAvKipcbiAgICogVGhlIGBjZGsuanNvbmAgZmlsZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjZGtDb25maWc6IENka0NvbmZpZztcblxuICAvKipcbiAgICogQ0RLIGRlcGVuZGVuY3kgbWFuYWdlbWVudCBoZWxwZXIgY2xhc3NcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjZGtEZXBzOiBBd3NDZGtEZXBzO1xuXG4gIC8qKlxuICAgKiBUaGUgZnVsbCBuYW1lIG9mIHRoZSBtYWluIGNsYXNzIG9mIHRoZSBqYXZhIGFwcCAocGFja2FnZS5DbGFzcykuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbWFpbkNsYXNzOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENESyB0YXNrcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjZGtUYXNrczogQ2RrVGFza3M7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBKYXZhIHBhY2thZ2UgdGhhdCBpbmNsdWRlcyB0aGUgbWFpbiBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBtYWluUGFja2FnZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgSmF2YSBjbGFzcyB3aXRoIHRoZSBzdGF0aWMgYG1haW4oKWAgbWV0aG9kLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG1haW5DbGFzc05hbWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBBd3NDZGtKYXZhQXBwT3B0aW9ucykge1xuICAgIGNvbnN0IG1haW5DbGFzc0NvbXBvbmVudHMgPSBvcHRpb25zLm1haW5DbGFzcy5zcGxpdChcIi5cIik7XG4gICAgY29uc3QgbWFpblBhY2thZ2UgPSBtYWluQ2xhc3NDb21wb25lbnRzLnNsaWNlKDAsIC0xKTtcbiAgICBjb25zdCBtYWluQ2xhc3NOYW1lID0gbWFpbkNsYXNzQ29tcG9uZW50c1ttYWluQ2xhc3NDb21wb25lbnRzLmxlbmd0aCAtIDFdO1xuXG4gICAgc3VwZXIoe1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIHNhbXBsZTogZmFsc2UsXG4gICAgICBzYW1wbGVKYXZhUGFja2FnZTogbWFpblBhY2thZ2Uuam9pbihcIi5cIiksXG4gICAgfSk7XG5cbiAgICB0aGlzLm1haW5DbGFzcyA9IG9wdGlvbnMubWFpbkNsYXNzO1xuICAgIHRoaXMubWFpblBhY2thZ2UgPSBtYWluUGFja2FnZS5qb2luKFwiLlwiKTtcbiAgICB0aGlzLm1haW5DbGFzc05hbWUgPSBtYWluQ2xhc3NOYW1lO1xuXG4gICAgdGhpcy5jZGtEZXBzID0gbmV3IEF3c0Nka0RlcHNKYXZhKHRoaXMsIHtcbiAgICAgIGRlcGVuZGVuY3lUeXBlOiBEZXBlbmRlbmN5VHlwZS5SVU5USU1FLFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICB9KTtcblxuICAgIHRoaXMuY2RrVGFza3MgPSBuZXcgQ2RrVGFza3ModGhpcyk7XG4gICAgdGhpcy5wb3N0Q29tcGlsZVRhc2suc3Bhd24odGhpcy5jZGtUYXNrcy5zeW50aCk7XG5cbiAgICB0aGlzLmNka0NvbmZpZyA9IG5ldyBDZGtDb25maWcodGhpcywge1xuICAgICAgYXBwOiBgbXZuIGV4ZWM6amF2YSAtLXF1aWV0IC1EZXhlYy5tYWluQ2xhc3M9JHt0aGlzLm1haW5DbGFzc31gLFxuICAgICAgZmVhdHVyZUZsYWdzOiB0aGlzLmNka0RlcHMuY2RrTWFqb3JWZXJzaW9uIDwgMixcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgfSk7XG5cbiAgICBpZiAob3B0aW9ucy5zYW1wbGUgPz8gdHJ1ZSkge1xuICAgICAgdGhpcy5hZGRTYW1wbGUoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbiBBV1MgQ0RLIG1vZHVsZSBkZXBlbmRlbmNpZXNcbiAgICpcbiAgICogQHBhcmFtIG1vZHVsZXMgVGhlIGxpc3Qgb2YgbW9kdWxlcyB0byBkZXBlbmQgb24gKGUuZy4gXCJzb2Z0d2FyZS5hbWF6b24uYXdzY2RrL2F3cy1sYW1iZGFcIiwgXCJzb2Z0d2FyZS5hbWF6b24uYXdzY2RrL2F3cy1pYW1cIiwgZXRjKVxuICAgKiBAZGVwcmVjYXRlZCBJbiBDREsgMi54IGFsbCBtb2R1bGVzIGFyZSBhdmFpbGFibGUgYnkgZGVmYXVsdC4gQWxwaGEgbW9kdWxlcyBzaG91bGQgYmUgYWRkZWQgdXNpbmcgdGhlIHN0YW5kYXJkICdkZXBzJ1xuICAgKi9cbiAgcHVibGljIGFkZENka0RlcGVuZGVuY3koLi4ubW9kdWxlczogc3RyaW5nW10pIHtcbiAgICBmb3IgKGNvbnN0IG0gb2YgbW9kdWxlcykge1xuICAgICAgdGhpcy5jZGtEZXBzLmFkZFYxRGVwZW5kZW5jaWVzKG0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYWRkU2FtcGxlKCkge1xuICAgIGNvbnN0IHBrZyA9IHRoaXMubWFpblBhY2thZ2Uuc3BsaXQoXCIuXCIpO1xuICAgIGNvbnN0IGphdmFGaWxlID0gYCR7dGhpcy5tYWluQ2xhc3NOYW1lfS5qYXZhYDtcbiAgICBuZXcgU2FtcGxlRGlyKHRoaXMsIGpvaW4oXCJzcmNcIiwgXCJtYWluXCIsIFwiamF2YVwiLCAuLi5wa2cpLCB7XG4gICAgICBmaWxlczoge1xuICAgICAgICBbamF2YUZpbGVdOiBbXG4gICAgICAgICAgYHBhY2thZ2UgJHtwa2cuam9pbihcIi5cIil9O2AsXG4gICAgICAgICAgXCJcIixcbiAgICAgICAgICB0aGlzLmNka0RlcHMuY2RrTWFqb3JWZXJzaW9uID09IDFcbiAgICAgICAgICAgID8gXCJpbXBvcnQgc29mdHdhcmUuYW1hem9uLmF3c2Nkay5jb3JlLkFwcDtcIlxuICAgICAgICAgICAgOiBcImltcG9ydCBzb2Z0d2FyZS5hbWF6b24uYXdzY2RrLkFwcDtcIixcbiAgICAgICAgICB0aGlzLmNka0RlcHMuY2RrTWFqb3JWZXJzaW9uID09IDFcbiAgICAgICAgICAgID8gXCJpbXBvcnQgc29mdHdhcmUuYW1hem9uLmF3c2Nkay5jb3JlLlN0YWNrO1wiXG4gICAgICAgICAgICA6IFwiaW1wb3J0IHNvZnR3YXJlLmFtYXpvbi5hd3NjZGsuU3RhY2s7XCIsXG4gICAgICAgICAgXCJcIixcbiAgICAgICAgICBgcHVibGljIGNsYXNzICR7dGhpcy5tYWluQ2xhc3NOYW1lfSB7YCxcbiAgICAgICAgICBcIiAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oZmluYWwgU3RyaW5nW10gYXJncykge1wiLFxuICAgICAgICAgIFwiICAgIEFwcCBhcHAgPSBuZXcgQXBwKCk7XCIsXG4gICAgICAgICAgYCAgICBuZXcgU3RhY2soYXBwLCBcIiR7dGhpcy5uYW1lfVwiKTtgLFxuICAgICAgICAgIFwiICAgIGFwcC5zeW50aCgpO1wiLFxuICAgICAgICAgIFwiICB9XCIsXG4gICAgICAgICAgXCJ9XCIsXG4gICAgICAgIF0uam9pbihcIlxcblwiKSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -58,7 +58,7 @@ class AwsCdkPythonApp extends python_project_1.PythonProject {
58
58
  }
59
59
  exports.AwsCdkPythonApp = AwsCdkPythonApp;
60
60
  _a = JSII_RTTI_SYMBOL_1;
61
- AwsCdkPythonApp[_a] = { fqn: "projen.awscdk.AwsCdkPythonApp", version: "0.58.10" };
61
+ AwsCdkPythonApp[_a] = { fqn: "projen.awscdk.AwsCdkPythonApp", version: "0.58.13" };
62
62
  class AppCode extends __1.Component {
63
63
  constructor(project, fileName, cdkVersion) {
64
64
  super(project);
@@ -100,7 +100,7 @@ class AwsCdkTypeScriptApp extends typescript_1.TypeScriptAppProject {
100
100
  }
101
101
  exports.AwsCdkTypeScriptApp = AwsCdkTypeScriptApp;
102
102
  _a = JSII_RTTI_SYMBOL_1;
103
- AwsCdkTypeScriptApp[_a] = { fqn: "projen.awscdk.AwsCdkTypeScriptApp", version: "0.58.10" };
103
+ AwsCdkTypeScriptApp[_a] = { fqn: "projen.awscdk.AwsCdkTypeScriptApp", version: "0.58.13" };
104
104
  class SampleCode extends component_1.Component {
105
105
  constructor(project, cdkMajorVersion) {
106
106
  super(project);