projen-pipelines 0.3.19 → 0.3.21

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
@@ -2671,7 +2671,7 @@
2671
2671
  },
2672
2672
  "locationInModule": {
2673
2673
  "filename": "src/steps/package-manager-setup.step.ts",
2674
- "line": 52
2674
+ "line": 67
2675
2675
  },
2676
2676
  "parameters": [
2677
2677
  {
@@ -2688,7 +2688,7 @@
2688
2688
  "kind": "class",
2689
2689
  "locationInModule": {
2690
2690
  "filename": "src/steps/package-manager-setup.step.ts",
2691
- "line": 50
2691
+ "line": 65
2692
2692
  },
2693
2693
  "methods": [
2694
2694
  {
@@ -2699,7 +2699,7 @@
2699
2699
  },
2700
2700
  "locationInModule": {
2701
2701
  "filename": "src/steps/package-manager-setup.step.ts",
2702
- "line": 76
2702
+ "line": 91
2703
2703
  },
2704
2704
  "name": "toBash",
2705
2705
  "overrides": "projen-pipelines.PipelineStep",
@@ -2717,7 +2717,7 @@
2717
2717
  },
2718
2718
  "locationInModule": {
2719
2719
  "filename": "src/steps/package-manager-setup.step.ts",
2720
- "line": 56
2720
+ "line": 71
2721
2721
  },
2722
2722
  "name": "toGithub",
2723
2723
  "overrides": "projen-pipelines.PipelineStep",
@@ -2735,7 +2735,7 @@
2735
2735
  },
2736
2736
  "locationInModule": {
2737
2737
  "filename": "src/steps/package-manager-setup.step.ts",
2738
- "line": 67
2738
+ "line": 82
2739
2739
  },
2740
2740
  "name": "toGitlab",
2741
2741
  "overrides": "projen-pipelines.PipelineStep",
@@ -3070,7 +3070,7 @@
3070
3070
  "kind": "interface",
3071
3071
  "locationInModule": {
3072
3072
  "filename": "src/drift/base.ts",
3073
- "line": 3
3073
+ "line": 5
3074
3074
  },
3075
3075
  "name": "DriftDetectionStageOptions",
3076
3076
  "properties": [
@@ -3083,7 +3083,7 @@
3083
3083
  "immutable": true,
3084
3084
  "locationInModule": {
3085
3085
  "filename": "src/drift/base.ts",
3086
- "line": 7
3086
+ "line": 9
3087
3087
  },
3088
3088
  "name": "name",
3089
3089
  "type": {
@@ -3099,7 +3099,7 @@
3099
3099
  "immutable": true,
3100
3100
  "locationInModule": {
3101
3101
  "filename": "src/drift/base.ts",
3102
- "line": 12
3102
+ "line": 14
3103
3103
  },
3104
3104
  "name": "region",
3105
3105
  "type": {
@@ -3115,7 +3115,7 @@
3115
3115
  "immutable": true,
3116
3116
  "locationInModule": {
3117
3117
  "filename": "src/drift/base.ts",
3118
- "line": 38
3118
+ "line": 40
3119
3119
  },
3120
3120
  "name": "environment",
3121
3121
  "optional": true,
@@ -3138,7 +3138,7 @@
3138
3138
  "immutable": true,
3139
3139
  "locationInModule": {
3140
3140
  "filename": "src/drift/base.ts",
3141
- "line": 33
3141
+ "line": 35
3142
3142
  },
3143
3143
  "name": "failOnDrift",
3144
3144
  "optional": true,
@@ -3155,7 +3155,7 @@
3155
3155
  "immutable": true,
3156
3156
  "locationInModule": {
3157
3157
  "filename": "src/drift/base.ts",
3158
- "line": 22
3158
+ "line": 24
3159
3159
  },
3160
3160
  "name": "jumpRoleArn",
3161
3161
  "optional": true,
@@ -3172,7 +3172,7 @@
3172
3172
  "immutable": true,
3173
3173
  "locationInModule": {
3174
3174
  "filename": "src/drift/base.ts",
3175
- "line": 17
3175
+ "line": 19
3176
3176
  },
3177
3177
  "name": "roleArn",
3178
3178
  "optional": true,
@@ -3189,7 +3189,7 @@
3189
3189
  "immutable": true,
3190
3190
  "locationInModule": {
3191
3191
  "filename": "src/drift/base.ts",
3192
- "line": 27
3192
+ "line": 29
3193
3193
  },
3194
3194
  "name": "stackNames",
3195
3195
  "optional": true,
@@ -3298,7 +3298,7 @@
3298
3298
  },
3299
3299
  "locationInModule": {
3300
3300
  "filename": "src/drift/base.ts",
3301
- "line": 93
3301
+ "line": 108
3302
3302
  },
3303
3303
  "parameters": [
3304
3304
  {
@@ -3318,7 +3318,7 @@
3318
3318
  "kind": "class",
3319
3319
  "locationInModule": {
3320
3320
  "filename": "src/drift/base.ts",
3321
- "line": 85
3321
+ "line": 99
3322
3322
  },
3323
3323
  "name": "DriftDetectionWorkflow",
3324
3324
  "properties": [
@@ -3329,7 +3329,7 @@
3329
3329
  "immutable": true,
3330
3330
  "locationInModule": {
3331
3331
  "filename": "src/drift/base.ts",
3332
- "line": 86
3332
+ "line": 100
3333
3333
  },
3334
3334
  "name": "name",
3335
3335
  "type": {
@@ -3344,7 +3344,7 @@
3344
3344
  "immutable": true,
3345
3345
  "locationInModule": {
3346
3346
  "filename": "src/drift/base.ts",
3347
- "line": 91
3347
+ "line": 106
3348
3348
  },
3349
3349
  "name": "namePrefix",
3350
3350
  "protected": true,
@@ -3359,7 +3359,27 @@
3359
3359
  "immutable": true,
3360
3360
  "locationInModule": {
3361
3361
  "filename": "src/drift/base.ts",
3362
- "line": 87
3362
+ "line": 103
3363
+ },
3364
+ "name": "preInstallSteps",
3365
+ "protected": true,
3366
+ "type": {
3367
+ "collection": {
3368
+ "elementtype": {
3369
+ "fqn": "projen-pipelines.PipelineStep"
3370
+ },
3371
+ "kind": "array"
3372
+ }
3373
+ }
3374
+ },
3375
+ {
3376
+ "docs": {
3377
+ "stability": "stable"
3378
+ },
3379
+ "immutable": true,
3380
+ "locationInModule": {
3381
+ "filename": "src/drift/base.ts",
3382
+ "line": 101
3363
3383
  },
3364
3384
  "name": "schedule",
3365
3385
  "type": {
@@ -3373,7 +3393,7 @@
3373
3393
  "immutable": true,
3374
3394
  "locationInModule": {
3375
3395
  "filename": "src/drift/base.ts",
3376
- "line": 88
3396
+ "line": 102
3377
3397
  },
3378
3398
  "name": "stages",
3379
3399
  "protected": true,
@@ -3399,7 +3419,7 @@
3399
3419
  "kind": "interface",
3400
3420
  "locationInModule": {
3401
3421
  "filename": "src/drift/base.ts",
3402
- "line": 58
3422
+ "line": 60
3403
3423
  },
3404
3424
  "name": "DriftDetectionWorkflowOptions",
3405
3425
  "properties": [
@@ -3412,7 +3432,7 @@
3412
3432
  "immutable": true,
3413
3433
  "locationInModule": {
3414
3434
  "filename": "src/drift/base.ts",
3415
- "line": 82
3435
+ "line": 84
3416
3436
  },
3417
3437
  "name": "stages",
3418
3438
  "type": {
@@ -3434,7 +3454,7 @@
3434
3454
  "immutable": true,
3435
3455
  "locationInModule": {
3436
3456
  "filename": "src/drift/base.ts",
3437
- "line": 71
3457
+ "line": 73
3438
3458
  },
3439
3459
  "name": "name",
3440
3460
  "optional": true,
@@ -3452,7 +3472,7 @@
3452
3472
  "immutable": true,
3453
3473
  "locationInModule": {
3454
3474
  "filename": "src/drift/base.ts",
3455
- "line": 65
3475
+ "line": 67
3456
3476
  },
3457
3477
  "name": "pipelineName",
3458
3478
  "optional": true,
@@ -3460,6 +3480,30 @@
3460
3480
  "primitive": "string"
3461
3481
  }
3462
3482
  },
3483
+ {
3484
+ "abstract": true,
3485
+ "docs": {
3486
+ "default": "- no additional pre-install steps",
3487
+ "remarks": "Note: Package manager setup (e.g., PnpmSetupStep for pnpm or CorepackSetupStep\nfor Yarn Berry) is automatically detected from the project and always included.\nUse this option for any additional pre-install steps you need.",
3488
+ "stability": "stable",
3489
+ "summary": "Additional steps to execute before installing dependencies. These steps are executed before the package manager setup and install command."
3490
+ },
3491
+ "immutable": true,
3492
+ "locationInModule": {
3493
+ "filename": "src/drift/base.ts",
3494
+ "line": 96
3495
+ },
3496
+ "name": "preInstallSteps",
3497
+ "optional": true,
3498
+ "type": {
3499
+ "collection": {
3500
+ "elementtype": {
3501
+ "fqn": "projen-pipelines.PipelineStep"
3502
+ },
3503
+ "kind": "array"
3504
+ }
3505
+ }
3506
+ },
3463
3507
  {
3464
3508
  "abstract": true,
3465
3509
  "docs": {
@@ -3470,7 +3514,7 @@
3470
3514
  "immutable": true,
3471
3515
  "locationInModule": {
3472
3516
  "filename": "src/drift/base.ts",
3473
- "line": 77
3517
+ "line": 79
3474
3518
  },
3475
3519
  "name": "schedule",
3476
3520
  "optional": true,
@@ -3491,7 +3535,7 @@
3491
3535
  "kind": "interface",
3492
3536
  "locationInModule": {
3493
3537
  "filename": "src/drift/base.ts",
3494
- "line": 41
3538
+ "line": 43
3495
3539
  },
3496
3540
  "name": "DriftErrorHandler",
3497
3541
  "properties": [
@@ -3504,7 +3548,7 @@
3504
3548
  "immutable": true,
3505
3549
  "locationInModule": {
3506
3550
  "filename": "src/drift/base.ts",
3507
- "line": 50
3551
+ "line": 52
3508
3552
  },
3509
3553
  "name": "action",
3510
3554
  "type": {
@@ -3520,7 +3564,7 @@
3520
3564
  "immutable": true,
3521
3565
  "locationInModule": {
3522
3566
  "filename": "src/drift/base.ts",
3523
- "line": 45
3567
+ "line": 47
3524
3568
  },
3525
3569
  "name": "pattern",
3526
3570
  "type": {
@@ -3536,7 +3580,7 @@
3536
3580
  "immutable": true,
3537
3581
  "locationInModule": {
3538
3582
  "filename": "src/drift/base.ts",
3539
- "line": 55
3583
+ "line": 57
3540
3584
  },
3541
3585
  "name": "message",
3542
3586
  "optional": true,
@@ -4242,7 +4286,7 @@
4242
4286
  },
4243
4287
  "locationInModule": {
4244
4288
  "filename": "src/awscdk/github.ts",
4245
- "line": 76
4289
+ "line": 77
4246
4290
  },
4247
4291
  "parameters": [
4248
4292
  {
@@ -4268,7 +4312,7 @@
4268
4312
  "kind": "class",
4269
4313
  "locationInModule": {
4270
4314
  "filename": "src/awscdk/github.ts",
4271
- "line": 56
4315
+ "line": 57
4272
4316
  },
4273
4317
  "methods": [
4274
4318
  {
@@ -4278,7 +4322,7 @@
4278
4322
  },
4279
4323
  "locationInModule": {
4280
4324
  "filename": "src/awscdk/github.ts",
4281
- "line": 348
4325
+ "line": 359
4282
4326
  },
4283
4327
  "name": "createAssetUpload",
4284
4328
  "parameters": [
@@ -4305,7 +4349,7 @@
4305
4349
  },
4306
4350
  "locationInModule": {
4307
4351
  "filename": "src/awscdk/github.ts",
4308
- "line": 404
4352
+ "line": 415
4309
4353
  },
4310
4354
  "name": "createDeployment",
4311
4355
  "parameters": [
@@ -4334,7 +4378,7 @@
4334
4378
  },
4335
4379
  "locationInModule": {
4336
4380
  "filename": "src/awscdk/github.ts",
4337
- "line": 177
4381
+ "line": 188
4338
4382
  },
4339
4383
  "name": "createFeatureWorkflows",
4340
4384
  "protected": true
@@ -4346,7 +4390,7 @@
4346
4390
  },
4347
4391
  "locationInModule": {
4348
4392
  "filename": "src/awscdk/github.ts",
4349
- "line": 528
4393
+ "line": 539
4350
4394
  },
4351
4395
  "name": "createIndependentDeployment",
4352
4396
  "parameters": [
@@ -4368,7 +4412,7 @@
4368
4412
  },
4369
4413
  "locationInModule": {
4370
4414
  "filename": "src/awscdk/github.ts",
4371
- "line": 144
4415
+ "line": 145
4372
4416
  },
4373
4417
  "name": "engineType",
4374
4418
  "overrides": "projen-pipelines.CDKPipeline",
@@ -4389,7 +4433,7 @@
4389
4433
  "immutable": true,
4390
4434
  "locationInModule": {
4391
4435
  "filename": "src/awscdk/github.ts",
4392
- "line": 59
4436
+ "line": 60
4393
4437
  },
4394
4438
  "name": "needsVersionedArtifacts",
4395
4439
  "type": {
@@ -4402,7 +4446,7 @@
4402
4446
  },
4403
4447
  "locationInModule": {
4404
4448
  "filename": "src/awscdk/github.ts",
4405
- "line": 68
4449
+ "line": 69
4406
4450
  },
4407
4451
  "name": "useGithubPackages",
4408
4452
  "protected": true,
@@ -4416,7 +4460,7 @@
4416
4460
  },
4417
4461
  "locationInModule": {
4418
4462
  "filename": "src/awscdk/github.ts",
4419
- "line": 69
4463
+ "line": 70
4420
4464
  },
4421
4465
  "name": "minNodeVersion",
4422
4466
  "optional": true,
@@ -4442,7 +4486,7 @@
4442
4486
  "kind": "interface",
4443
4487
  "locationInModule": {
4444
4488
  "filename": "src/awscdk/github.ts",
4445
- "line": 18
4489
+ "line": 19
4446
4490
  },
4447
4491
  "name": "GithubCDKPipelineOptions",
4448
4492
  "properties": [
@@ -4456,7 +4500,7 @@
4456
4500
  "immutable": true,
4457
4501
  "locationInModule": {
4458
4502
  "filename": "src/awscdk/github.ts",
4459
- "line": 25
4503
+ "line": 26
4460
4504
  },
4461
4505
  "name": "runnerTags",
4462
4506
  "optional": true,
@@ -4480,7 +4524,7 @@
4480
4524
  "immutable": true,
4481
4525
  "locationInModule": {
4482
4526
  "filename": "src/awscdk/github.ts",
4483
- "line": 37
4527
+ "line": 38
4484
4528
  },
4485
4529
  "name": "useGithubEnvironments",
4486
4530
  "optional": true,
@@ -4499,7 +4543,7 @@
4499
4543
  "immutable": true,
4500
4544
  "locationInModule": {
4501
4545
  "filename": "src/awscdk/github.ts",
4502
- "line": 49
4546
+ "line": 50
4503
4547
  },
4504
4548
  "name": "useGithubEnvironmentsForAssetUpload",
4505
4549
  "optional": true,
@@ -4517,7 +4561,7 @@
4517
4561
  "immutable": true,
4518
4562
  "locationInModule": {
4519
4563
  "filename": "src/awscdk/github.ts",
4520
- "line": 28
4564
+ "line": 29
4521
4565
  },
4522
4566
  "name": "useGithubPackagesForAssembly",
4523
4567
  "optional": true,
@@ -6628,6 +6672,24 @@
6628
6672
  "line": 22
6629
6673
  },
6630
6674
  "methods": [
6675
+ {
6676
+ "docs": {
6677
+ "remarks": "Should be implemented by subclasses.",
6678
+ "stability": "stable",
6679
+ "summary": "Generates a configuration for a bash script step."
6680
+ },
6681
+ "locationInModule": {
6682
+ "filename": "src/steps/package-manager-setup.step.ts",
6683
+ "line": 51
6684
+ },
6685
+ "name": "toBash",
6686
+ "overrides": "projen-pipelines.PipelineStep",
6687
+ "returns": {
6688
+ "type": {
6689
+ "fqn": "projen-pipelines.BashStepConfig"
6690
+ }
6691
+ }
6692
+ },
6631
6693
  {
6632
6694
  "docs": {
6633
6695
  "remarks": "Should be implemented by subclasses.",
@@ -6645,6 +6707,24 @@
6645
6707
  "fqn": "projen-pipelines.GithubStepConfig"
6646
6708
  }
6647
6709
  }
6710
+ },
6711
+ {
6712
+ "docs": {
6713
+ "remarks": "Should be implemented by subclasses.",
6714
+ "stability": "stable",
6715
+ "summary": "Generates a configuration for a GitLab CI step."
6716
+ },
6717
+ "locationInModule": {
6718
+ "filename": "src/steps/package-manager-setup.step.ts",
6719
+ "line": 42
6720
+ },
6721
+ "name": "toGitlab",
6722
+ "overrides": "projen-pipelines.PipelineStep",
6723
+ "returns": {
6724
+ "type": {
6725
+ "fqn": "projen-pipelines.GitlabStepConfig"
6726
+ }
6727
+ }
6648
6728
  }
6649
6729
  ],
6650
6730
  "name": "PnpmSetupStep",
@@ -8917,6 +8997,6 @@
8917
8997
  "symbolId": "src/versioning/types:VersioningStrategyComponents"
8918
8998
  }
8919
8999
  },
8920
- "version": "0.3.19",
8921
- "fingerprint": "tw2ahT2/J20faDtheoRPVSJlYvjsIUvwg2A7FkINwkk="
9000
+ "version": "0.3.21",
9001
+ "fingerprint": "LiziAW6u2LLCWYr0gpufljgn3oVI7iuhQ+DC61mgids="
8922
9002
  }
package/API.md CHANGED
@@ -2927,6 +2927,7 @@ const bashDriftDetectionWorkflowOptions: BashDriftDetectionWorkflowOptions = { .
2927
2927
  | <code><a href="#projen-pipelines.BashDriftDetectionWorkflowOptions.property.stages">stages</a></code> | <code><a href="#projen-pipelines.DriftDetectionStageOptions">DriftDetectionStageOptions</a>[]</code> | Drift detection configurations for different environments. |
2928
2928
  | <code><a href="#projen-pipelines.BashDriftDetectionWorkflowOptions.property.name">name</a></code> | <code>string</code> | Name of the workflow. |
2929
2929
  | <code><a href="#projen-pipelines.BashDriftDetectionWorkflowOptions.property.pipelineName">pipelineName</a></code> | <code>string</code> | A unique name for this pipeline, used as a prefix for workflow files and artifact names to prevent collisions in monorepos. |
2930
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflowOptions.property.preInstallSteps">preInstallSteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | Additional steps to execute before installing dependencies. These steps are executed before the package manager setup and install command. |
2930
2931
  | <code><a href="#projen-pipelines.BashDriftDetectionWorkflowOptions.property.schedule">schedule</a></code> | <code>string</code> | Cron schedule for drift detection. |
2931
2932
  | <code><a href="#projen-pipelines.BashDriftDetectionWorkflowOptions.property.scriptPath">scriptPath</a></code> | <code>string</code> | Path to the output script. |
2932
2933
 
@@ -2970,6 +2971,23 @@ A unique name for this pipeline, used as a prefix for workflow files and artifac
2970
2971
 
2971
2972
  ---
2972
2973
 
2974
+ ##### `preInstallSteps`<sup>Optional</sup> <a name="preInstallSteps" id="projen-pipelines.BashDriftDetectionWorkflowOptions.property.preInstallSteps"></a>
2975
+
2976
+ ```typescript
2977
+ public readonly preInstallSteps: PipelineStep[];
2978
+ ```
2979
+
2980
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
2981
+ - *Default:* no additional pre-install steps
2982
+
2983
+ Additional steps to execute before installing dependencies. These steps are executed before the package manager setup and install command.
2984
+
2985
+ Note: Package manager setup (e.g., PnpmSetupStep for pnpm or CorepackSetupStep
2986
+ for Yarn Berry) is automatically detected from the project and always included.
2987
+ Use this option for any additional pre-install steps you need.
2988
+
2989
+ ---
2990
+
2973
2991
  ##### `schedule`<sup>Optional</sup> <a name="schedule" id="projen-pipelines.BashDriftDetectionWorkflowOptions.property.schedule"></a>
2974
2992
 
2975
2993
  ```typescript
@@ -4242,6 +4260,7 @@ const driftDetectionWorkflowOptions: DriftDetectionWorkflowOptions = { ... }
4242
4260
  | <code><a href="#projen-pipelines.DriftDetectionWorkflowOptions.property.stages">stages</a></code> | <code><a href="#projen-pipelines.DriftDetectionStageOptions">DriftDetectionStageOptions</a>[]</code> | Drift detection configurations for different environments. |
4243
4261
  | <code><a href="#projen-pipelines.DriftDetectionWorkflowOptions.property.name">name</a></code> | <code>string</code> | Name of the workflow. |
4244
4262
  | <code><a href="#projen-pipelines.DriftDetectionWorkflowOptions.property.pipelineName">pipelineName</a></code> | <code>string</code> | A unique name for this pipeline, used as a prefix for workflow files and artifact names to prevent collisions in monorepos. |
4263
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflowOptions.property.preInstallSteps">preInstallSteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | Additional steps to execute before installing dependencies. These steps are executed before the package manager setup and install command. |
4245
4264
  | <code><a href="#projen-pipelines.DriftDetectionWorkflowOptions.property.schedule">schedule</a></code> | <code>string</code> | Cron schedule for drift detection. |
4246
4265
 
4247
4266
  ---
@@ -4284,6 +4303,23 @@ A unique name for this pipeline, used as a prefix for workflow files and artifac
4284
4303
 
4285
4304
  ---
4286
4305
 
4306
+ ##### `preInstallSteps`<sup>Optional</sup> <a name="preInstallSteps" id="projen-pipelines.DriftDetectionWorkflowOptions.property.preInstallSteps"></a>
4307
+
4308
+ ```typescript
4309
+ public readonly preInstallSteps: PipelineStep[];
4310
+ ```
4311
+
4312
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
4313
+ - *Default:* no additional pre-install steps
4314
+
4315
+ Additional steps to execute before installing dependencies. These steps are executed before the package manager setup and install command.
4316
+
4317
+ Note: Package manager setup (e.g., PnpmSetupStep for pnpm or CorepackSetupStep
4318
+ for Yarn Berry) is automatically detected from the project and always included.
4319
+ Use this option for any additional pre-install steps you need.
4320
+
4321
+ ---
4322
+
4287
4323
  ##### `schedule`<sup>Optional</sup> <a name="schedule" id="projen-pipelines.DriftDetectionWorkflowOptions.property.schedule"></a>
4288
4324
 
4289
4325
  ```typescript
@@ -4852,6 +4888,7 @@ const gitHubDriftDetectionWorkflowOptions: GitHubDriftDetectionWorkflowOptions =
4852
4888
  | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.stages">stages</a></code> | <code><a href="#projen-pipelines.DriftDetectionStageOptions">DriftDetectionStageOptions</a>[]</code> | Drift detection configurations for different environments. |
4853
4889
  | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.name">name</a></code> | <code>string</code> | Name of the workflow. |
4854
4890
  | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.pipelineName">pipelineName</a></code> | <code>string</code> | A unique name for this pipeline, used as a prefix for workflow files and artifact names to prevent collisions in monorepos. |
4891
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.preInstallSteps">preInstallSteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | Additional steps to execute before installing dependencies. These steps are executed before the package manager setup and install command. |
4855
4892
  | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.schedule">schedule</a></code> | <code>string</code> | Cron schedule for drift detection. |
4856
4893
  | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.createIssues">createIssues</a></code> | <code>boolean</code> | Whether to create issues on drift detection. |
4857
4894
  | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.permissions">permissions</a></code> | <code>{[ key: string ]: string}</code> | Additional permissions for GitHub workflow. |
@@ -4896,6 +4933,23 @@ A unique name for this pipeline, used as a prefix for workflow files and artifac
4896
4933
 
4897
4934
  ---
4898
4935
 
4936
+ ##### `preInstallSteps`<sup>Optional</sup> <a name="preInstallSteps" id="projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.preInstallSteps"></a>
4937
+
4938
+ ```typescript
4939
+ public readonly preInstallSteps: PipelineStep[];
4940
+ ```
4941
+
4942
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
4943
+ - *Default:* no additional pre-install steps
4944
+
4945
+ Additional steps to execute before installing dependencies. These steps are executed before the package manager setup and install command.
4946
+
4947
+ Note: Package manager setup (e.g., PnpmSetupStep for pnpm or CorepackSetupStep
4948
+ for Yarn Berry) is automatically detected from the project and always included.
4949
+ Use this option for any additional pre-install steps you need.
4950
+
4951
+ ---
4952
+
4899
4953
  ##### `schedule`<sup>Optional</sup> <a name="schedule" id="projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.schedule"></a>
4900
4954
 
4901
4955
  ```typescript
@@ -5555,6 +5609,7 @@ const gitLabDriftDetectionWorkflowOptions: GitLabDriftDetectionWorkflowOptions =
5555
5609
  | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.stages">stages</a></code> | <code><a href="#projen-pipelines.DriftDetectionStageOptions">DriftDetectionStageOptions</a>[]</code> | Drift detection configurations for different environments. |
5556
5610
  | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.name">name</a></code> | <code>string</code> | Name of the workflow. |
5557
5611
  | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.pipelineName">pipelineName</a></code> | <code>string</code> | A unique name for this pipeline, used as a prefix for workflow files and artifact names to prevent collisions in monorepos. |
5612
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.preInstallSteps">preInstallSteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | Additional steps to execute before installing dependencies. These steps are executed before the package manager setup and install command. |
5558
5613
  | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.schedule">schedule</a></code> | <code>string</code> | Cron schedule for drift detection. |
5559
5614
  | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.image">image</a></code> | <code>string</code> | Docker image to use for drift detection. |
5560
5615
  | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.runnerTags">runnerTags</a></code> | <code>string[]</code> | GitLab runner tags. |
@@ -5599,6 +5654,23 @@ A unique name for this pipeline, used as a prefix for workflow files and artifac
5599
5654
 
5600
5655
  ---
5601
5656
 
5657
+ ##### `preInstallSteps`<sup>Optional</sup> <a name="preInstallSteps" id="projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.preInstallSteps"></a>
5658
+
5659
+ ```typescript
5660
+ public readonly preInstallSteps: PipelineStep[];
5661
+ ```
5662
+
5663
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
5664
+ - *Default:* no additional pre-install steps
5665
+
5666
+ Additional steps to execute before installing dependencies. These steps are executed before the package manager setup and install command.
5667
+
5668
+ Note: Package manager setup (e.g., PnpmSetupStep for pnpm or CorepackSetupStep
5669
+ for Yarn Berry) is automatically detected from the project and always included.
5670
+ Use this option for any additional pre-install steps you need.
5671
+
5672
+ ---
5673
+
5602
5674
  ##### `schedule`<sup>Optional</sup> <a name="schedule" id="projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.schedule"></a>
5603
5675
 
5604
5676
  ```typescript
@@ -12,5 +12,5 @@ class AssignApprover extends projen_1.Component {
12
12
  }
13
13
  exports.AssignApprover = AssignApprover;
14
14
  _a = JSII_RTTI_SYMBOL_1;
15
- AssignApprover[_a] = { fqn: "projen-pipelines.AssignApprover", version: "0.3.19" };
15
+ AssignApprover[_a] = { fqn: "projen-pipelines.AssignApprover", version: "0.3.21" };
16
16
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hc3NpZ24tYXBwcm92ZXIvYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG1DQUE0QztBQXVCNUMsTUFBc0IsY0FBZSxTQUFRLGtCQUFTO0lBR3BELFlBQVksS0FBYyxFQUFxQixXQUFrQztRQUMvRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFEZ0MsZ0JBQVcsR0FBWCxXQUFXLENBQXVCO0lBRWpGLENBQUM7O0FBTEgsd0NBT0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFByb2plY3QgfSBmcm9tICdwcm9qZW4nO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwcHJvdmVyTWFwcGluZyB7XG5cbiAgcmVhZG9ubHkgYXV0aG9yOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGFwcHJvdmVyczogc3RyaW5nW107XG5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBBc3NpZ25BcHByb3Zlck9wdGlvbnMge1xuXG4gIC8qKlxuICAgKiBUaGUgbWFwcGluZyBvZiBhdXRob3JzIHRvIGFwcHJvdmVycy5cbiAgICovXG4gIHJlYWRvbmx5IGFwcHJvdmVyTWFwcGluZzogQXBwcm92ZXJNYXBwaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSBHaXRIdWIgdG9rZW4gdG8gdXNlIGZvciB0aGUgQVBJIGNhbGxzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVmYXVsdEFwcHJvdmVyczogc3RyaW5nW107XG5cbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFzc2lnbkFwcHJvdmVyIGV4dGVuZHMgQ29tcG9uZW50IHtcblxuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBQcm9qZWN0LCBwcm90ZWN0ZWQgcmVhZG9ubHkgYmFzZU9wdGlvbnM6IEFzc2lnbkFwcHJvdmVyT3B0aW9ucykge1xuICAgIHN1cGVyKHNjb3BlKTtcbiAgfVxuXG59Il19
@@ -81,5 +81,5 @@ if (filteredApprovers.length > 0) {
81
81
  }
82
82
  exports.GitHubAssignApprover = GitHubAssignApprover;
83
83
  _a = JSII_RTTI_SYMBOL_1;
84
- GitHubAssignApprover[_a] = { fqn: "projen-pipelines.GitHubAssignApprover", version: "0.3.19" };
84
+ GitHubAssignApprover[_a] = { fqn: "projen-pipelines.GitHubAssignApprover", version: "0.3.21" };
85
85
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0aHViLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Fzc2lnbi1hcHByb3Zlci9naXRodWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSx1RUFBa0Y7QUFDbEYsaUNBQStEO0FBYS9ELE1BQWEsb0JBQXFCLFNBQVEscUJBQWM7SUFJdEQsWUFBWSxLQUFvQixFQUFFLE9BQW9DO1FBQ3BFLEtBQUssQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFFdkIsZ0RBQWdEO1FBQ2hELElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLE1BQU8sQ0FBQyxXQUFXLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztZQUNmLGlCQUFpQixFQUFFO2dCQUNqQixLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsa0JBQWtCLENBQUM7YUFDdEM7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksaUJBQWlCO1FBQ3RCLE9BQU87WUFDTCxZQUFZLEVBQUUsK0JBQWEsQ0FBQyxLQUFLO1NBQ2xDLENBQUM7SUFDSixDQUFDO0lBRVMsYUFBYTtRQUNyQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRWhFLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxDQUFDLDZCQUE2QixFQUFFLENBQUM7UUFFbkUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsaUJBQWlCLEVBQUU7WUFDdEMsTUFBTSxFQUFFLFVBQVU7WUFDbEIsV0FBVyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUNyQyxLQUFLLEVBQUU7Z0JBQ0w7b0JBQ0UsSUFBSSxFQUFFLGlDQUFpQztvQkFDdkMsSUFBSSxFQUFFLDBCQUEwQjtvQkFDaEMsSUFBSSxFQUFFO3dCQUNKLE1BQU0sRUFBRSxxQkFBcUI7cUJBQzlCO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVMsNkJBQTZCO1FBQ3JDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZTthQUNwRCxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxNQUFNLE9BQU8sQ0FBQyxNQUFNLE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7YUFDN0YsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWYsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQjthQUN2RCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO2FBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVkLE9BQU87Ozs7RUFJVCxjQUFjLEdBQUcsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDdkMsZ0JBQWdCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFxQjlCLENBQUM7SUFDRCxDQUFDOztBQXBGSCxvREFxRkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHaXRIdWJQcm9qZWN0LCBHaXRodWJXb3JrZmxvdyB9IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViJztcbmltcG9ydCB7IEpvYlBlcm1pc3Npb24sIEpvYlBlcm1pc3Npb25zIH0gZnJvbSAncHJvamVuL2xpYi9naXRodWIvd29ya2Zsb3dzLW1vZGVsJztcbmltcG9ydCB7IEFzc2lnbkFwcHJvdmVyLCBBc3NpZ25BcHByb3Zlck9wdGlvbnMgfSBmcm9tICcuL2Jhc2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEdpdEh1YkFzc2lnbkFwcHJvdmVyT3B0aW9ucyBleHRlbmRzIEFzc2lnbkFwcHJvdmVyT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIHJ1bm5lciB0YWdzIHRvIHVzZSB0byBzZWxlY3QgcnVubmVyc1xuICAgKlxuICAgKiBAZGVmYXVsdCBbJ3VidW50dS1sYXRlc3QnXVxuICAgKi9cbiAgcmVhZG9ubHkgcnVubmVyVGFncz86IHN0cmluZ1tdO1xuXG59XG5cbmV4cG9ydCBjbGFzcyBHaXRIdWJBc3NpZ25BcHByb3ZlciBleHRlbmRzIEFzc2lnbkFwcHJvdmVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSB3b3JrZmxvdzogR2l0aHViV29ya2Zsb3c7XG4gIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogR2l0SHViQXNzaWduQXBwcm92ZXJPcHRpb25zO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBHaXRIdWJQcm9qZWN0LCBvcHRpb25zOiBHaXRIdWJBc3NpZ25BcHByb3Zlck9wdGlvbnMpIHtcbiAgICBzdXBlcihzY29wZSwgb3B0aW9ucyk7XG4gICAgdGhpcy5vcHRpb25zID0gb3B0aW9ucztcblxuICAgIC8vIEluaXRpYWxpemUgdGhlIGRlcGxveW1lbnQgd29ya2Zsb3cgb24gR2l0SHViLlxuICAgIHRoaXMud29ya2Zsb3cgPSBzY29wZS5naXRodWIhLmFkZFdvcmtmbG93KCdhc3NpZ24tYXBwcm92ZXInKTtcbiAgICB0aGlzLndvcmtmbG93Lm9uKHtcbiAgICAgIHB1bGxSZXF1ZXN0VGFyZ2V0OiB7XG4gICAgICAgIHR5cGVzOiBbJ29wZW5lZCcsICdyZWFkeV9mb3JfcmV2aWV3J10sXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgdGhpcy5zZXR1cFdvcmtmbG93KCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSByZXF1aXJlZCBwZXJtaXNzaW9ucyBmb3IgdGhlIEdpdEh1YiB3b3JrZmxvd1xuICAgKi9cbiAgcHVibGljIHJlbmRlclBlcm1pc3Npb25zKCk6IEpvYlBlcm1pc3Npb25zIHtcbiAgICByZXR1cm4ge1xuICAgICAgcHVsbFJlcXVlc3RzOiBKb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgIH07XG4gIH1cblxuICBwcm90ZWN0ZWQgc2V0dXBXb3JrZmxvdygpOiB2b2lkIHtcbiAgICBjb25zdCBydW5uZXJUYWdzID0gdGhpcy5vcHRpb25zLnJ1bm5lclRhZ3MgPz8gWyd1YnVudHUtbGF0ZXN0J107XG5cbiAgICBjb25zdCBhcHByb3Zlck1hcHBpbmdTY3JpcHQgPSB0aGlzLmdlbmVyYXRlQXBwcm92ZXJNYXBwaW5nU2NyaXB0KCk7XG5cbiAgICB0aGlzLndvcmtmbG93LmFkZEpvYignYXNzaWduLWFwcHJvdmVyJywge1xuICAgICAgcnVuc09uOiBydW5uZXJUYWdzLFxuICAgICAgcGVybWlzc2lvbnM6IHRoaXMucmVuZGVyUGVybWlzc2lvbnMoKSxcbiAgICAgIHN0ZXBzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnQXNzaWduIGFwcHJvdmVyIGJhc2VkIG9uIGF1dGhvcicsXG4gICAgICAgICAgdXNlczogJ2FjdGlvbnMvZ2l0aHViLXNjcmlwdEB2OCcsXG4gICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgc2NyaXB0OiBhcHByb3Zlck1hcHBpbmdTY3JpcHQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2VuZXJhdGVBcHByb3Zlck1hcHBpbmdTY3JpcHQoKTogc3RyaW5nIHtcbiAgICBjb25zdCBtYXBwaW5nRW50cmllcyA9IHRoaXMuYmFzZU9wdGlvbnMuYXBwcm92ZXJNYXBwaW5nXG4gICAgICAubWFwKG1hcHBpbmcgPT4gYCAgJyR7bWFwcGluZy5hdXRob3J9JzogWyR7bWFwcGluZy5hcHByb3ZlcnMubWFwKGEgPT4gYCcke2F9J2ApLmpvaW4oJywgJyl9XWApXG4gICAgICAuam9pbignLFxcbicpO1xuXG4gICAgY29uc3QgZGVmYXVsdEFwcHJvdmVycyA9IHRoaXMuYmFzZU9wdGlvbnMuZGVmYXVsdEFwcHJvdmVyc1xuICAgICAgLm1hcChhID0+IGAnJHthfSdgKVxuICAgICAgLmpvaW4oJywgJyk7XG5cbiAgICByZXR1cm4gYGNvbnN0IGF1dGhvciA9IGNvbnRleHQucGF5bG9hZC5wdWxsX3JlcXVlc3QudXNlci5sb2dpbjtcblxuLy8gRGVmaW5lIGFwcHJvdmVyIG1hcHBpbmdcbmNvbnN0IGFwcHJvdmVyTWFwcGluZyA9IHtcbiR7bWFwcGluZ0VudHJpZXN9JHttYXBwaW5nRW50cmllcy5sZW5ndGggPiAwID8gJywnIDogJyd9XG4gICdkZWZhdWx0JzogWyR7ZGVmYXVsdEFwcHJvdmVyc31dIC8vIERlZmF1bHQgYXBwcm92ZXIocykgaWYgYXV0aG9yIG5vdCBpbiBtYXBwaW5nXG59O1xuXG4vLyBHZXQgYXBwcm92ZXJzIGZvciB0aGUgUFIgYXV0aG9yXG5jb25zdCBhcHByb3ZlcnMgPSBhcHByb3Zlck1hcHBpbmdbYXV0aG9yXSB8fCBhcHByb3Zlck1hcHBpbmdbJ2RlZmF1bHQnXTtcblxuLy8gRmlsdGVyIG91dCB0aGUgYXV0aG9yIGZyb20gYXBwcm92ZXJzIGxpc3QgKGNhbid0IGFwcHJvdmUgb3duIFBSKVxuY29uc3QgZmlsdGVyZWRBcHByb3ZlcnMgPSBhcHByb3ZlcnMuZmlsdGVyKGFwcHJvdmVyID0+IGFwcHJvdmVyICE9PSBhdXRob3IpO1xuXG5pZiAoZmlsdGVyZWRBcHByb3ZlcnMubGVuZ3RoID4gMCkge1xuICAvLyBSZXF1ZXN0IHJldmlld3MgZnJvbSB0aGUgYXBwcm92ZXJzXG4gIGF3YWl0IGdpdGh1Yi5yZXN0LnB1bGxzLnJlcXVlc3RSZXZpZXdlcnMoe1xuICAgIG93bmVyOiBjb250ZXh0LnJlcG8ub3duZXIsXG4gICAgcmVwbzogY29udGV4dC5yZXBvLnJlcG8sXG4gICAgcHVsbF9udW1iZXI6IGNvbnRleHQuaXNzdWUubnVtYmVyLFxuICAgIHJldmlld2VyczogZmlsdGVyZWRBcHByb3ZlcnNcbiAgfSk7XG4gIFxuICBjb25zb2xlLmxvZyhcXGBBc3NpZ25lZCByZXZpZXdlcnM6IFxcJHtmaWx0ZXJlZEFwcHJvdmVycy5qb2luKCcsICcpfVxcYCk7XG59IGVsc2Uge1xuICBjb25zb2xlLmxvZygnTm8gZWxpZ2libGUgcmV2aWV3ZXJzIGZvdW5kIGZvciB0aGlzIFBSIGF1dGhvcicpO1xufWA7XG4gIH1cbn1cbiJdfQ==