@taimos/projen 0.1.67 → 0.1.68

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.jsii CHANGED
@@ -117,6 +117,146 @@
117
117
  }
118
118
  },
119
119
  "types": {
120
+ "@taimos/projen.GitHubProductionRelease": {
121
+ "assembly": "@taimos/projen",
122
+ "base": "projen.Component",
123
+ "docs": {
124
+ "remarks": "The workflow is triggered via `workflow_dispatch`. It fast-forward merges the\nproject's default release branch into the selected production branch and\npushes it. This keeps a production promotion a deliberate, auditable manual\naction separate from merging to the default release branch. When several\nproduction branches are configured, the operator chooses the target at\ndispatch time.",
125
+ "stability": "stable",
126
+ "summary": "Adds a manual \"Production Release\" workflow that promotes a branch into a production branch."
127
+ },
128
+ "fqn": "@taimos/projen.GitHubProductionRelease",
129
+ "initializer": {
130
+ "docs": {
131
+ "stability": "stable"
132
+ },
133
+ "locationInModule": {
134
+ "filename": "src/components/production-release.ts",
135
+ "line": 65
136
+ },
137
+ "parameters": [
138
+ {
139
+ "name": "scope",
140
+ "type": {
141
+ "fqn": "projen.github.GitHubProject"
142
+ }
143
+ },
144
+ {
145
+ "name": "options",
146
+ "optional": true,
147
+ "type": {
148
+ "fqn": "@taimos/projen.GitHubProductionReleaseOptions"
149
+ }
150
+ }
151
+ ]
152
+ },
153
+ "kind": "class",
154
+ "locationInModule": {
155
+ "filename": "src/components/production-release.ts",
156
+ "line": 45
157
+ },
158
+ "name": "GitHubProductionRelease",
159
+ "properties": [
160
+ {
161
+ "docs": {
162
+ "stability": "stable",
163
+ "summary": "The generated production release workflow."
164
+ },
165
+ "immutable": true,
166
+ "locationInModule": {
167
+ "filename": "src/components/production-release.ts",
168
+ "line": 63
169
+ },
170
+ "name": "workflow",
171
+ "type": {
172
+ "fqn": "projen.github.GithubWorkflow"
173
+ }
174
+ }
175
+ ],
176
+ "symbolId": "src/components/production-release:GitHubProductionRelease"
177
+ },
178
+ "@taimos/projen.GitHubProductionReleaseOptions": {
179
+ "assembly": "@taimos/projen",
180
+ "datatype": true,
181
+ "docs": {
182
+ "stability": "stable"
183
+ },
184
+ "fqn": "@taimos/projen.GitHubProductionReleaseOptions",
185
+ "kind": "interface",
186
+ "locationInModule": {
187
+ "filename": "src/components/production-release.ts",
188
+ "line": 4
189
+ },
190
+ "name": "GitHubProductionReleaseOptions",
191
+ "properties": [
192
+ {
193
+ "abstract": true,
194
+ "docs": {
195
+ "default": "['production']",
196
+ "remarks": "Each branch typically backs its own production deployment — e.g. one Amplify\napp tracking `production` and another tracking `production2`. When more than\none branch is given, the `workflow_dispatch` trigger exposes a `target`\nchoice input so the operator picks which branch to promote into at dispatch\ntime. The first entry is the default selection. With a single branch, no\ninput is rendered and that branch is always the target.",
197
+ "stability": "stable",
198
+ "summary": "The production branches that the source branch may be promoted into."
199
+ },
200
+ "immutable": true,
201
+ "locationInModule": {
202
+ "filename": "src/components/production-release.ts",
203
+ "line": 17
204
+ },
205
+ "name": "productionBranches",
206
+ "optional": true,
207
+ "type": {
208
+ "collection": {
209
+ "elementtype": {
210
+ "primitive": "string"
211
+ },
212
+ "kind": "array"
213
+ }
214
+ }
215
+ },
216
+ {
217
+ "abstract": true,
218
+ "docs": {
219
+ "default": "['ubuntu-latest']",
220
+ "stability": "stable",
221
+ "summary": "The runner tags used to select the runner."
222
+ },
223
+ "immutable": true,
224
+ "locationInModule": {
225
+ "filename": "src/components/production-release.ts",
226
+ "line": 31
227
+ },
228
+ "name": "runnerTags",
229
+ "optional": true,
230
+ "type": {
231
+ "collection": {
232
+ "elementtype": {
233
+ "primitive": "string"
234
+ },
235
+ "kind": "array"
236
+ }
237
+ }
238
+ },
239
+ {
240
+ "abstract": true,
241
+ "docs": {
242
+ "default": "'production-release'",
243
+ "stability": "stable",
244
+ "summary": "The name of the generated workflow (and its `.yml` file)."
245
+ },
246
+ "immutable": true,
247
+ "locationInModule": {
248
+ "filename": "src/components/production-release.ts",
249
+ "line": 24
250
+ },
251
+ "name": "workflowName",
252
+ "optional": true,
253
+ "type": {
254
+ "primitive": "string"
255
+ }
256
+ }
257
+ ],
258
+ "symbolId": "src/components/production-release:GitHubProductionReleaseOptions"
259
+ },
120
260
  "@taimos/projen.MonorepoAmplifyApp": {
121
261
  "assembly": "@taimos/projen",
122
262
  "datatype": true,
@@ -129,7 +269,7 @@
129
269
  "kind": "interface",
130
270
  "locationInModule": {
131
271
  "filename": "src/projects/monorepo.ts",
132
- "line": 25
272
+ "line": 26
133
273
  },
134
274
  "name": "MonorepoAmplifyApp",
135
275
  "properties": [
@@ -142,7 +282,7 @@
142
282
  "immutable": true,
143
283
  "locationInModule": {
144
284
  "filename": "src/projects/monorepo.ts",
145
- "line": 29
285
+ "line": 30
146
286
  },
147
287
  "name": "appRoot",
148
288
  "type": {
@@ -158,7 +298,7 @@
158
298
  "immutable": true,
159
299
  "locationInModule": {
160
300
  "filename": "src/projects/monorepo.ts",
161
- "line": 40
301
+ "line": 41
162
302
  },
163
303
  "name": "buildFilter",
164
304
  "type": {
@@ -174,7 +314,7 @@
174
314
  "immutable": true,
175
315
  "locationInModule": {
176
316
  "filename": "src/projects/monorepo.ts",
177
- "line": 34
317
+ "line": 35
178
318
  },
179
319
  "name": "framework",
180
320
  "type": {
@@ -191,7 +331,7 @@
191
331
  "immutable": true,
192
332
  "locationInModule": {
193
333
  "filename": "src/projects/monorepo.ts",
194
- "line": 66
334
+ "line": 67
195
335
  },
196
336
  "name": "artifactBaseDirectory",
197
337
  "optional": true,
@@ -209,7 +349,7 @@
209
349
  "immutable": true,
210
350
  "locationInModule": {
211
351
  "filename": "src/projects/monorepo.ts",
212
- "line": 58
352
+ "line": 59
213
353
  },
214
354
  "name": "buildCommand",
215
355
  "optional": true,
@@ -227,7 +367,7 @@
227
367
  "immutable": true,
228
368
  "locationInModule": {
229
369
  "filename": "src/projects/monorepo.ts",
230
- "line": 74
370
+ "line": 75
231
371
  },
232
372
  "name": "cachePaths",
233
373
  "optional": true,
@@ -251,7 +391,7 @@
251
391
  "immutable": true,
252
392
  "locationInModule": {
253
393
  "filename": "src/projects/monorepo.ts",
254
- "line": 50
394
+ "line": 51
255
395
  },
256
396
  "name": "preBuildFilters",
257
397
  "optional": true,
@@ -278,7 +418,7 @@
278
418
  "kind": "enum",
279
419
  "locationInModule": {
280
420
  "filename": "src/projects/monorepo.ts",
281
- "line": 10
421
+ "line": 11
282
422
  },
283
423
  "members": [
284
424
  {
@@ -310,7 +450,7 @@
310
450
  "kind": "interface",
311
451
  "locationInModule": {
312
452
  "filename": "src/projects/monorepo.ts",
313
- "line": 125
453
+ "line": 126
314
454
  },
315
455
  "name": "MonorepoApproverMapping",
316
456
  "properties": [
@@ -323,7 +463,7 @@
323
463
  "immutable": true,
324
464
  "locationInModule": {
325
465
  "filename": "src/projects/monorepo.ts",
326
- "line": 134
466
+ "line": 135
327
467
  },
328
468
  "name": "approvers",
329
469
  "type": {
@@ -344,7 +484,7 @@
344
484
  "immutable": true,
345
485
  "locationInModule": {
346
486
  "filename": "src/projects/monorepo.ts",
347
- "line": 129
487
+ "line": 130
348
488
  },
349
489
  "name": "author",
350
490
  "type": {
@@ -372,7 +512,7 @@
372
512
  },
373
513
  "locationInModule": {
374
514
  "filename": "src/projects/monorepo.ts",
375
- "line": 230
515
+ "line": 253
376
516
  },
377
517
  "parameters": [
378
518
  {
@@ -386,10 +526,25 @@
386
526
  "kind": "class",
387
527
  "locationInModule": {
388
528
  "filename": "src/projects/monorepo.ts",
389
- "line": 216
529
+ "line": 233
390
530
  },
391
531
  "name": "MonorepoProject",
392
532
  "properties": [
533
+ {
534
+ "docs": {
535
+ "stability": "stable",
536
+ "summary": "The default release branch (promoted by the production release workflow)."
537
+ },
538
+ "immutable": true,
539
+ "locationInModule": {
540
+ "filename": "src/projects/monorepo.ts",
541
+ "line": 251
542
+ },
543
+ "name": "defaultReleaseBranch",
544
+ "type": {
545
+ "primitive": "string"
546
+ }
547
+ },
393
548
  {
394
549
  "docs": {
395
550
  "stability": "stable",
@@ -398,7 +553,7 @@
398
553
  "immutable": true,
399
554
  "locationInModule": {
400
555
  "filename": "src/projects/monorepo.ts",
401
- "line": 222
556
+ "line": 239
402
557
  },
403
558
  "name": "prBuildWorkflow",
404
559
  "type": {
@@ -413,7 +568,7 @@
413
568
  "immutable": true,
414
569
  "locationInModule": {
415
570
  "filename": "src/projects/monorepo.ts",
416
- "line": 219
571
+ "line": 236
417
572
  },
418
573
  "name": "workspaceFile",
419
574
  "type": {
@@ -428,7 +583,7 @@
428
583
  "immutable": true,
429
584
  "locationInModule": {
430
585
  "filename": "src/projects/monorepo.ts",
431
- "line": 225
586
+ "line": 242
432
587
  },
433
588
  "name": "amplifyFile",
434
589
  "optional": true,
@@ -444,13 +599,29 @@
444
599
  "immutable": true,
445
600
  "locationInModule": {
446
601
  "filename": "src/projects/monorepo.ts",
447
- "line": 228
602
+ "line": 245
448
603
  },
449
604
  "name": "assignApprover",
450
605
  "optional": true,
451
606
  "type": {
452
607
  "fqn": "projen-pipelines.GitHubAssignApprover"
453
608
  }
609
+ },
610
+ {
611
+ "docs": {
612
+ "stability": "stable",
613
+ "summary": "The production release workflow, if enabled."
614
+ },
615
+ "immutable": true,
616
+ "locationInModule": {
617
+ "filename": "src/projects/monorepo.ts",
618
+ "line": 248
619
+ },
620
+ "name": "productionRelease",
621
+ "optional": true,
622
+ "type": {
623
+ "fqn": "@taimos/projen.GitHubProductionRelease"
624
+ }
454
625
  }
455
626
  ],
456
627
  "symbolId": "src/projects/monorepo:MonorepoProject"
@@ -468,7 +639,7 @@
468
639
  "kind": "interface",
469
640
  "locationInModule": {
470
641
  "filename": "src/projects/monorepo.ts",
471
- "line": 137
642
+ "line": 138
472
643
  },
473
644
  "name": "MonorepoProjectOptions",
474
645
  "properties": [
@@ -483,7 +654,7 @@
483
654
  "immutable": true,
484
655
  "locationInModule": {
485
656
  "filename": "src/projects/monorepo.ts",
486
- "line": 200
657
+ "line": 201
487
658
  },
488
659
  "name": "amplifyApps",
489
660
  "optional": true,
@@ -507,7 +678,7 @@
507
678
  "immutable": true,
508
679
  "locationInModule": {
509
680
  "filename": "src/projects/monorepo.ts",
510
- "line": 177
681
+ "line": 178
511
682
  },
512
683
  "name": "approverMapping",
513
684
  "optional": true,
@@ -530,7 +701,7 @@
530
701
  "immutable": true,
531
702
  "locationInModule": {
532
703
  "filename": "src/projects/monorepo.ts",
533
- "line": 169
704
+ "line": 170
534
705
  },
535
706
  "name": "assignApprover",
536
707
  "optional": true,
@@ -548,7 +719,7 @@
548
719
  "immutable": true,
549
720
  "locationInModule": {
550
721
  "filename": "src/projects/monorepo.ts",
551
- "line": 162
722
+ "line": 163
552
723
  },
553
724
  "name": "cdkServerless",
554
725
  "optional": true,
@@ -567,7 +738,7 @@
567
738
  "immutable": true,
568
739
  "locationInModule": {
569
740
  "filename": "src/projects/monorepo.ts",
570
- "line": 185
741
+ "line": 186
571
742
  },
572
743
  "name": "defaultApprovers",
573
744
  "optional": true,
@@ -590,7 +761,7 @@
590
761
  "immutable": true,
591
762
  "locationInModule": {
592
763
  "filename": "src/projects/monorepo.ts",
593
- "line": 150
764
+ "line": 151
594
765
  },
595
766
  "name": "nodeVersion",
596
767
  "optional": true,
@@ -608,7 +779,7 @@
608
779
  "immutable": true,
609
780
  "locationInModule": {
610
781
  "filename": "src/projects/monorepo.ts",
611
- "line": 143
782
+ "line": 144
612
783
  },
613
784
  "name": "pnpmWorkspaceVersion",
614
785
  "optional": true,
@@ -616,6 +787,43 @@
616
787
  "primitive": "string"
617
788
  }
618
789
  },
790
+ {
791
+ "abstract": true,
792
+ "docs": {
793
+ "default": "false",
794
+ "stability": "stable",
795
+ "summary": "Whether to add a manual \"Production Release\" workflow that promotes a branch to the production branch (see `GitHubProductionRelease`)."
796
+ },
797
+ "immutable": true,
798
+ "locationInModule": {
799
+ "filename": "src/projects/monorepo.ts",
800
+ "line": 209
801
+ },
802
+ "name": "productionRelease",
803
+ "optional": true,
804
+ "type": {
805
+ "primitive": "boolean"
806
+ }
807
+ },
808
+ {
809
+ "abstract": true,
810
+ "docs": {
811
+ "default": "- promote `main` to a `production` branch",
812
+ "remarks": "Only used when\n`productionRelease` is enabled.",
813
+ "stability": "stable",
814
+ "summary": "Options for the production release workflow."
815
+ },
816
+ "immutable": true,
817
+ "locationInModule": {
818
+ "filename": "src/projects/monorepo.ts",
819
+ "line": 217
820
+ },
821
+ "name": "productionReleaseOptions",
822
+ "optional": true,
823
+ "type": {
824
+ "fqn": "@taimos/projen.GitHubProductionReleaseOptions"
825
+ }
826
+ },
619
827
  {
620
828
  "abstract": true,
621
829
  "docs": {
@@ -626,7 +834,7 @@
626
834
  "immutable": true,
627
835
  "locationInModule": {
628
836
  "filename": "src/projects/monorepo.ts",
629
- "line": 192
837
+ "line": 193
630
838
  },
631
839
  "name": "runTestsInBuild",
632
840
  "optional": true,
@@ -643,7 +851,7 @@
643
851
  "immutable": true,
644
852
  "locationInModule": {
645
853
  "filename": "src/projects/monorepo.ts",
646
- "line": 155
854
+ "line": 156
647
855
  },
648
856
  "name": "workspaceOptions",
649
857
  "optional": true,
@@ -665,7 +873,7 @@
665
873
  "kind": "interface",
666
874
  "locationInModule": {
667
875
  "filename": "src/projects/monorepo.ts",
668
- "line": 80
876
+ "line": 81
669
877
  },
670
878
  "name": "MonorepoWorkspaceOptions",
671
879
  "properties": [
@@ -680,7 +888,7 @@
680
888
  "immutable": true,
681
889
  "locationInModule": {
682
890
  "filename": "src/projects/monorepo.ts",
683
- "line": 103
891
+ "line": 104
684
892
  },
685
893
  "name": "allowedBuilds",
686
894
  "optional": true,
@@ -703,7 +911,7 @@
703
911
  "immutable": true,
704
912
  "locationInModule": {
705
913
  "filename": "src/projects/monorepo.ts",
706
- "line": 111
914
+ "line": 112
707
915
  },
708
916
  "name": "minimumReleaseAge",
709
917
  "optional": true,
@@ -721,7 +929,7 @@
721
929
  "immutable": true,
722
930
  "locationInModule": {
723
931
  "filename": "src/projects/monorepo.ts",
724
- "line": 119
932
+ "line": 120
725
933
  },
726
934
  "name": "minimumReleaseAgeExclude",
727
935
  "optional": true,
@@ -745,7 +953,7 @@
745
953
  "immutable": true,
746
954
  "locationInModule": {
747
955
  "filename": "src/projects/monorepo.ts",
748
- "line": 94
956
+ "line": 95
749
957
  },
750
958
  "name": "overrides",
751
959
  "optional": true,
@@ -768,7 +976,7 @@
768
976
  "immutable": true,
769
977
  "locationInModule": {
770
978
  "filename": "src/projects/monorepo.ts",
771
- "line": 86
979
+ "line": 87
772
980
  },
773
981
  "name": "packages",
774
982
  "optional": true,
@@ -1375,6 +1583,6 @@
1375
1583
  "symbolId": "src/projects/ts-lib:TaimosTypescriptLibraryOptions"
1376
1584
  }
1377
1585
  },
1378
- "version": "0.1.67",
1379
- "fingerprint": "jaHAZ0CpSTfFTHh6KKC08VoIOKK94hVY0UQwjxvvux4="
1586
+ "version": "0.1.68",
1587
+ "fingerprint": "uDgNmIatlC8NI9SR+h49kk51n9R5Jxn3AcLrhDdjx/U="
1380
1588
  }