projen-pipelines 0.2.13 → 0.2.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/API.md CHANGED
@@ -390,6 +390,191 @@ public readonly stackPrefix: string;
390
390
  ---
391
391
 
392
392
 
393
+ ### BashDriftDetectionWorkflow <a name="BashDriftDetectionWorkflow" id="projen-pipelines.BashDriftDetectionWorkflow"></a>
394
+
395
+ #### Initializers <a name="Initializers" id="projen-pipelines.BashDriftDetectionWorkflow.Initializer"></a>
396
+
397
+ ```typescript
398
+ import { BashDriftDetectionWorkflow } from 'projen-pipelines'
399
+
400
+ new BashDriftDetectionWorkflow(project: Project, options: BashDriftDetectionWorkflowOptions)
401
+ ```
402
+
403
+ | **Name** | **Type** | **Description** |
404
+ | --- | --- | --- |
405
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.Initializer.parameter.project">project</a></code> | <code>projen.Project</code> | *No description.* |
406
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.Initializer.parameter.options">options</a></code> | <code><a href="#projen-pipelines.BashDriftDetectionWorkflowOptions">BashDriftDetectionWorkflowOptions</a></code> | *No description.* |
407
+
408
+ ---
409
+
410
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.BashDriftDetectionWorkflow.Initializer.parameter.project"></a>
411
+
412
+ - *Type:* projen.Project
413
+
414
+ ---
415
+
416
+ ##### `options`<sup>Required</sup> <a name="options" id="projen-pipelines.BashDriftDetectionWorkflow.Initializer.parameter.options"></a>
417
+
418
+ - *Type:* <a href="#projen-pipelines.BashDriftDetectionWorkflowOptions">BashDriftDetectionWorkflowOptions</a>
419
+
420
+ ---
421
+
422
+ #### Methods <a name="Methods" id="Methods"></a>
423
+
424
+ | **Name** | **Description** |
425
+ | --- | --- |
426
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.toString">toString</a></code> | Returns a string representation of this construct. |
427
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.postSynthesize">postSynthesize</a></code> | Called after synthesis. |
428
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.preSynthesize">preSynthesize</a></code> | Called before synthesis. |
429
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.synthesize">synthesize</a></code> | Synthesizes files to the project output directory. |
430
+
431
+ ---
432
+
433
+ ##### `toString` <a name="toString" id="projen-pipelines.BashDriftDetectionWorkflow.toString"></a>
434
+
435
+ ```typescript
436
+ public toString(): string
437
+ ```
438
+
439
+ Returns a string representation of this construct.
440
+
441
+ ##### `postSynthesize` <a name="postSynthesize" id="projen-pipelines.BashDriftDetectionWorkflow.postSynthesize"></a>
442
+
443
+ ```typescript
444
+ public postSynthesize(): void
445
+ ```
446
+
447
+ Called after synthesis.
448
+
449
+ Order is *not* guaranteed.
450
+
451
+ ##### `preSynthesize` <a name="preSynthesize" id="projen-pipelines.BashDriftDetectionWorkflow.preSynthesize"></a>
452
+
453
+ ```typescript
454
+ public preSynthesize(): void
455
+ ```
456
+
457
+ Called before synthesis.
458
+
459
+ ##### `synthesize` <a name="synthesize" id="projen-pipelines.BashDriftDetectionWorkflow.synthesize"></a>
460
+
461
+ ```typescript
462
+ public synthesize(): void
463
+ ```
464
+
465
+ Synthesizes files to the project output directory.
466
+
467
+ #### Static Functions <a name="Static Functions" id="Static Functions"></a>
468
+
469
+ | **Name** | **Description** |
470
+ | --- | --- |
471
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
472
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.isComponent">isComponent</a></code> | Test whether the given construct is a component. |
473
+
474
+ ---
475
+
476
+ ##### `isConstruct` <a name="isConstruct" id="projen-pipelines.BashDriftDetectionWorkflow.isConstruct"></a>
477
+
478
+ ```typescript
479
+ import { BashDriftDetectionWorkflow } from 'projen-pipelines'
480
+
481
+ BashDriftDetectionWorkflow.isConstruct(x: any)
482
+ ```
483
+
484
+ Checks if `x` is a construct.
485
+
486
+ Use this method instead of `instanceof` to properly detect `Construct`
487
+ instances, even when the construct library is symlinked.
488
+
489
+ Explanation: in JavaScript, multiple copies of the `constructs` library on
490
+ disk are seen as independent, completely different libraries. As a
491
+ consequence, the class `Construct` in each copy of the `constructs` library
492
+ is seen as a different class, and an instance of one class will not test as
493
+ `instanceof` the other class. `npm install` will not create installations
494
+ like this, but users may manually symlink construct libraries together or
495
+ use a monorepo tool: in those cases, multiple copies of the `constructs`
496
+ library can be accidentally installed, and `instanceof` will behave
497
+ unpredictably. It is safest to avoid using `instanceof`, and using
498
+ this type-testing method instead.
499
+
500
+ ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.BashDriftDetectionWorkflow.isConstruct.parameter.x"></a>
501
+
502
+ - *Type:* any
503
+
504
+ Any object.
505
+
506
+ ---
507
+
508
+ ##### `isComponent` <a name="isComponent" id="projen-pipelines.BashDriftDetectionWorkflow.isComponent"></a>
509
+
510
+ ```typescript
511
+ import { BashDriftDetectionWorkflow } from 'projen-pipelines'
512
+
513
+ BashDriftDetectionWorkflow.isComponent(x: any)
514
+ ```
515
+
516
+ Test whether the given construct is a component.
517
+
518
+ ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.BashDriftDetectionWorkflow.isComponent.parameter.x"></a>
519
+
520
+ - *Type:* any
521
+
522
+ ---
523
+
524
+ #### Properties <a name="Properties" id="Properties"></a>
525
+
526
+ | **Name** | **Type** | **Description** |
527
+ | --- | --- | --- |
528
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
529
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.property.project">project</a></code> | <code>projen.Project</code> | *No description.* |
530
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.property.name">name</a></code> | <code>string</code> | *No description.* |
531
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflow.property.schedule">schedule</a></code> | <code>string</code> | *No description.* |
532
+
533
+ ---
534
+
535
+ ##### `node`<sup>Required</sup> <a name="node" id="projen-pipelines.BashDriftDetectionWorkflow.property.node"></a>
536
+
537
+ ```typescript
538
+ public readonly node: Node;
539
+ ```
540
+
541
+ - *Type:* constructs.Node
542
+
543
+ The tree node.
544
+
545
+ ---
546
+
547
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.BashDriftDetectionWorkflow.property.project"></a>
548
+
549
+ ```typescript
550
+ public readonly project: Project;
551
+ ```
552
+
553
+ - *Type:* projen.Project
554
+
555
+ ---
556
+
557
+ ##### `name`<sup>Required</sup> <a name="name" id="projen-pipelines.BashDriftDetectionWorkflow.property.name"></a>
558
+
559
+ ```typescript
560
+ public readonly name: string;
561
+ ```
562
+
563
+ - *Type:* string
564
+
565
+ ---
566
+
567
+ ##### `schedule`<sup>Required</sup> <a name="schedule" id="projen-pipelines.BashDriftDetectionWorkflow.property.schedule"></a>
568
+
569
+ ```typescript
570
+ public readonly schedule: string;
571
+ ```
572
+
573
+ - *Type:* string
574
+
575
+ ---
576
+
577
+
393
578
  ### CDKPipeline <a name="CDKPipeline" id="projen-pipelines.CDKPipeline"></a>
394
579
 
395
580
  The CDKPipeline class extends the Component class and sets up the necessary configuration for deploying AWS CDK (Cloud Development Kit) applications across multiple stages.
@@ -619,6 +804,191 @@ public readonly stackPrefix: string;
619
804
  ---
620
805
 
621
806
 
807
+ ### DriftDetectionWorkflow <a name="DriftDetectionWorkflow" id="projen-pipelines.DriftDetectionWorkflow"></a>
808
+
809
+ #### Initializers <a name="Initializers" id="projen-pipelines.DriftDetectionWorkflow.Initializer"></a>
810
+
811
+ ```typescript
812
+ import { DriftDetectionWorkflow } from 'projen-pipelines'
813
+
814
+ new DriftDetectionWorkflow(project: Project, options: DriftDetectionWorkflowOptions)
815
+ ```
816
+
817
+ | **Name** | **Type** | **Description** |
818
+ | --- | --- | --- |
819
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.Initializer.parameter.project">project</a></code> | <code>projen.Project</code> | *No description.* |
820
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.Initializer.parameter.options">options</a></code> | <code><a href="#projen-pipelines.DriftDetectionWorkflowOptions">DriftDetectionWorkflowOptions</a></code> | *No description.* |
821
+
822
+ ---
823
+
824
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.DriftDetectionWorkflow.Initializer.parameter.project"></a>
825
+
826
+ - *Type:* projen.Project
827
+
828
+ ---
829
+
830
+ ##### `options`<sup>Required</sup> <a name="options" id="projen-pipelines.DriftDetectionWorkflow.Initializer.parameter.options"></a>
831
+
832
+ - *Type:* <a href="#projen-pipelines.DriftDetectionWorkflowOptions">DriftDetectionWorkflowOptions</a>
833
+
834
+ ---
835
+
836
+ #### Methods <a name="Methods" id="Methods"></a>
837
+
838
+ | **Name** | **Description** |
839
+ | --- | --- |
840
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.toString">toString</a></code> | Returns a string representation of this construct. |
841
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.postSynthesize">postSynthesize</a></code> | Called after synthesis. |
842
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.preSynthesize">preSynthesize</a></code> | Called before synthesis. |
843
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.synthesize">synthesize</a></code> | Synthesizes files to the project output directory. |
844
+
845
+ ---
846
+
847
+ ##### `toString` <a name="toString" id="projen-pipelines.DriftDetectionWorkflow.toString"></a>
848
+
849
+ ```typescript
850
+ public toString(): string
851
+ ```
852
+
853
+ Returns a string representation of this construct.
854
+
855
+ ##### `postSynthesize` <a name="postSynthesize" id="projen-pipelines.DriftDetectionWorkflow.postSynthesize"></a>
856
+
857
+ ```typescript
858
+ public postSynthesize(): void
859
+ ```
860
+
861
+ Called after synthesis.
862
+
863
+ Order is *not* guaranteed.
864
+
865
+ ##### `preSynthesize` <a name="preSynthesize" id="projen-pipelines.DriftDetectionWorkflow.preSynthesize"></a>
866
+
867
+ ```typescript
868
+ public preSynthesize(): void
869
+ ```
870
+
871
+ Called before synthesis.
872
+
873
+ ##### `synthesize` <a name="synthesize" id="projen-pipelines.DriftDetectionWorkflow.synthesize"></a>
874
+
875
+ ```typescript
876
+ public synthesize(): void
877
+ ```
878
+
879
+ Synthesizes files to the project output directory.
880
+
881
+ #### Static Functions <a name="Static Functions" id="Static Functions"></a>
882
+
883
+ | **Name** | **Description** |
884
+ | --- | --- |
885
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
886
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.isComponent">isComponent</a></code> | Test whether the given construct is a component. |
887
+
888
+ ---
889
+
890
+ ##### `isConstruct` <a name="isConstruct" id="projen-pipelines.DriftDetectionWorkflow.isConstruct"></a>
891
+
892
+ ```typescript
893
+ import { DriftDetectionWorkflow } from 'projen-pipelines'
894
+
895
+ DriftDetectionWorkflow.isConstruct(x: any)
896
+ ```
897
+
898
+ Checks if `x` is a construct.
899
+
900
+ Use this method instead of `instanceof` to properly detect `Construct`
901
+ instances, even when the construct library is symlinked.
902
+
903
+ Explanation: in JavaScript, multiple copies of the `constructs` library on
904
+ disk are seen as independent, completely different libraries. As a
905
+ consequence, the class `Construct` in each copy of the `constructs` library
906
+ is seen as a different class, and an instance of one class will not test as
907
+ `instanceof` the other class. `npm install` will not create installations
908
+ like this, but users may manually symlink construct libraries together or
909
+ use a monorepo tool: in those cases, multiple copies of the `constructs`
910
+ library can be accidentally installed, and `instanceof` will behave
911
+ unpredictably. It is safest to avoid using `instanceof`, and using
912
+ this type-testing method instead.
913
+
914
+ ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.DriftDetectionWorkflow.isConstruct.parameter.x"></a>
915
+
916
+ - *Type:* any
917
+
918
+ Any object.
919
+
920
+ ---
921
+
922
+ ##### `isComponent` <a name="isComponent" id="projen-pipelines.DriftDetectionWorkflow.isComponent"></a>
923
+
924
+ ```typescript
925
+ import { DriftDetectionWorkflow } from 'projen-pipelines'
926
+
927
+ DriftDetectionWorkflow.isComponent(x: any)
928
+ ```
929
+
930
+ Test whether the given construct is a component.
931
+
932
+ ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.DriftDetectionWorkflow.isComponent.parameter.x"></a>
933
+
934
+ - *Type:* any
935
+
936
+ ---
937
+
938
+ #### Properties <a name="Properties" id="Properties"></a>
939
+
940
+ | **Name** | **Type** | **Description** |
941
+ | --- | --- | --- |
942
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
943
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.property.project">project</a></code> | <code>projen.Project</code> | *No description.* |
944
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.property.name">name</a></code> | <code>string</code> | *No description.* |
945
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflow.property.schedule">schedule</a></code> | <code>string</code> | *No description.* |
946
+
947
+ ---
948
+
949
+ ##### `node`<sup>Required</sup> <a name="node" id="projen-pipelines.DriftDetectionWorkflow.property.node"></a>
950
+
951
+ ```typescript
952
+ public readonly node: Node;
953
+ ```
954
+
955
+ - *Type:* constructs.Node
956
+
957
+ The tree node.
958
+
959
+ ---
960
+
961
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.DriftDetectionWorkflow.property.project"></a>
962
+
963
+ ```typescript
964
+ public readonly project: Project;
965
+ ```
966
+
967
+ - *Type:* projen.Project
968
+
969
+ ---
970
+
971
+ ##### `name`<sup>Required</sup> <a name="name" id="projen-pipelines.DriftDetectionWorkflow.property.name"></a>
972
+
973
+ ```typescript
974
+ public readonly name: string;
975
+ ```
976
+
977
+ - *Type:* string
978
+
979
+ ---
980
+
981
+ ##### `schedule`<sup>Required</sup> <a name="schedule" id="projen-pipelines.DriftDetectionWorkflow.property.schedule"></a>
982
+
983
+ ```typescript
984
+ public readonly schedule: string;
985
+ ```
986
+
987
+ - *Type:* string
988
+
989
+ ---
990
+
991
+
622
992
  ### GitHubAssignApprover <a name="GitHubAssignApprover" id="projen-pipelines.GitHubAssignApprover"></a>
623
993
 
624
994
  #### Initializers <a name="Initializers" id="projen-pipelines.GitHubAssignApprover.Initializer"></a>
@@ -936,41 +1306,239 @@ Creates a job to deploy the CDK application to AWS.
936
1306
 
937
1307
  - *Type:* <a href="#projen-pipelines.DeploymentStage">DeploymentStage</a>
938
1308
 
939
- The deployment stage to create.
1309
+ The deployment stage to create.
1310
+
1311
+ ---
1312
+
1313
+ ##### `createIndependentDeployment` <a name="createIndependentDeployment" id="projen-pipelines.GithubCDKPipeline.createIndependentDeployment"></a>
1314
+
1315
+ ```typescript
1316
+ public createIndependentDeployment(stage: IndependentStage): void
1317
+ ```
1318
+
1319
+ Creates a job to deploy the CDK application to AWS.
1320
+
1321
+ ###### `stage`<sup>Required</sup> <a name="stage" id="projen-pipelines.GithubCDKPipeline.createIndependentDeployment.parameter.stage"></a>
1322
+
1323
+ - *Type:* <a href="#projen-pipelines.IndependentStage">IndependentStage</a>
1324
+
1325
+ The independent stage to create.
1326
+
1327
+ ---
1328
+
1329
+ #### Static Functions <a name="Static Functions" id="Static Functions"></a>
1330
+
1331
+ | **Name** | **Description** |
1332
+ | --- | --- |
1333
+ | <code><a href="#projen-pipelines.GithubCDKPipeline.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
1334
+ | <code><a href="#projen-pipelines.GithubCDKPipeline.isComponent">isComponent</a></code> | Test whether the given construct is a component. |
1335
+
1336
+ ---
1337
+
1338
+ ##### `isConstruct` <a name="isConstruct" id="projen-pipelines.GithubCDKPipeline.isConstruct"></a>
1339
+
1340
+ ```typescript
1341
+ import { GithubCDKPipeline } from 'projen-pipelines'
1342
+
1343
+ GithubCDKPipeline.isConstruct(x: any)
1344
+ ```
1345
+
1346
+ Checks if `x` is a construct.
1347
+
1348
+ Use this method instead of `instanceof` to properly detect `Construct`
1349
+ instances, even when the construct library is symlinked.
1350
+
1351
+ Explanation: in JavaScript, multiple copies of the `constructs` library on
1352
+ disk are seen as independent, completely different libraries. As a
1353
+ consequence, the class `Construct` in each copy of the `constructs` library
1354
+ is seen as a different class, and an instance of one class will not test as
1355
+ `instanceof` the other class. `npm install` will not create installations
1356
+ like this, but users may manually symlink construct libraries together or
1357
+ use a monorepo tool: in those cases, multiple copies of the `constructs`
1358
+ library can be accidentally installed, and `instanceof` will behave
1359
+ unpredictably. It is safest to avoid using `instanceof`, and using
1360
+ this type-testing method instead.
1361
+
1362
+ ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.GithubCDKPipeline.isConstruct.parameter.x"></a>
1363
+
1364
+ - *Type:* any
1365
+
1366
+ Any object.
1367
+
1368
+ ---
1369
+
1370
+ ##### `isComponent` <a name="isComponent" id="projen-pipelines.GithubCDKPipeline.isComponent"></a>
1371
+
1372
+ ```typescript
1373
+ import { GithubCDKPipeline } from 'projen-pipelines'
1374
+
1375
+ GithubCDKPipeline.isComponent(x: any)
1376
+ ```
1377
+
1378
+ Test whether the given construct is a component.
1379
+
1380
+ ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.GithubCDKPipeline.isComponent.parameter.x"></a>
1381
+
1382
+ - *Type:* any
1383
+
1384
+ ---
1385
+
1386
+ #### Properties <a name="Properties" id="Properties"></a>
1387
+
1388
+ | **Name** | **Type** | **Description** |
1389
+ | --- | --- | --- |
1390
+ | <code><a href="#projen-pipelines.GithubCDKPipeline.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
1391
+ | <code><a href="#projen-pipelines.GithubCDKPipeline.property.project">project</a></code> | <code>projen.Project</code> | *No description.* |
1392
+ | <code><a href="#projen-pipelines.GithubCDKPipeline.property.branchName">branchName</a></code> | <code>string</code> | *No description.* |
1393
+ | <code><a href="#projen-pipelines.GithubCDKPipeline.property.stackPrefix">stackPrefix</a></code> | <code>string</code> | *No description.* |
1394
+ | <code><a href="#projen-pipelines.GithubCDKPipeline.property.needsVersionedArtifacts">needsVersionedArtifacts</a></code> | <code>boolean</code> | Indicates if versioned artifacts are needed based on manual approval requirements. |
1395
+
1396
+ ---
1397
+
1398
+ ##### `node`<sup>Required</sup> <a name="node" id="projen-pipelines.GithubCDKPipeline.property.node"></a>
1399
+
1400
+ ```typescript
1401
+ public readonly node: Node;
1402
+ ```
1403
+
1404
+ - *Type:* constructs.Node
1405
+
1406
+ The tree node.
1407
+
1408
+ ---
1409
+
1410
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.GithubCDKPipeline.property.project"></a>
1411
+
1412
+ ```typescript
1413
+ public readonly project: Project;
1414
+ ```
1415
+
1416
+ - *Type:* projen.Project
1417
+
1418
+ ---
1419
+
1420
+ ##### `branchName`<sup>Required</sup> <a name="branchName" id="projen-pipelines.GithubCDKPipeline.property.branchName"></a>
1421
+
1422
+ ```typescript
1423
+ public readonly branchName: string;
1424
+ ```
1425
+
1426
+ - *Type:* string
1427
+
1428
+ ---
1429
+
1430
+ ##### `stackPrefix`<sup>Required</sup> <a name="stackPrefix" id="projen-pipelines.GithubCDKPipeline.property.stackPrefix"></a>
1431
+
1432
+ ```typescript
1433
+ public readonly stackPrefix: string;
1434
+ ```
1435
+
1436
+ - *Type:* string
1437
+
1438
+ ---
1439
+
1440
+ ##### `needsVersionedArtifacts`<sup>Required</sup> <a name="needsVersionedArtifacts" id="projen-pipelines.GithubCDKPipeline.property.needsVersionedArtifacts"></a>
1441
+
1442
+ ```typescript
1443
+ public readonly needsVersionedArtifacts: boolean;
1444
+ ```
1445
+
1446
+ - *Type:* boolean
1447
+
1448
+ Indicates if versioned artifacts are needed based on manual approval requirements.
1449
+
1450
+ ---
1451
+
1452
+
1453
+ ### GitHubDriftDetectionWorkflow <a name="GitHubDriftDetectionWorkflow" id="projen-pipelines.GitHubDriftDetectionWorkflow"></a>
1454
+
1455
+ #### Initializers <a name="Initializers" id="projen-pipelines.GitHubDriftDetectionWorkflow.Initializer"></a>
1456
+
1457
+ ```typescript
1458
+ import { GitHubDriftDetectionWorkflow } from 'projen-pipelines'
1459
+
1460
+ new GitHubDriftDetectionWorkflow(project: Project, options: GitHubDriftDetectionWorkflowOptions)
1461
+ ```
1462
+
1463
+ | **Name** | **Type** | **Description** |
1464
+ | --- | --- | --- |
1465
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.Initializer.parameter.project">project</a></code> | <code>projen.Project</code> | *No description.* |
1466
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.Initializer.parameter.options">options</a></code> | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions">GitHubDriftDetectionWorkflowOptions</a></code> | *No description.* |
1467
+
1468
+ ---
1469
+
1470
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.GitHubDriftDetectionWorkflow.Initializer.parameter.project"></a>
1471
+
1472
+ - *Type:* projen.Project
1473
+
1474
+ ---
1475
+
1476
+ ##### `options`<sup>Required</sup> <a name="options" id="projen-pipelines.GitHubDriftDetectionWorkflow.Initializer.parameter.options"></a>
1477
+
1478
+ - *Type:* <a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions">GitHubDriftDetectionWorkflowOptions</a>
1479
+
1480
+ ---
1481
+
1482
+ #### Methods <a name="Methods" id="Methods"></a>
1483
+
1484
+ | **Name** | **Description** |
1485
+ | --- | --- |
1486
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.toString">toString</a></code> | Returns a string representation of this construct. |
1487
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.postSynthesize">postSynthesize</a></code> | Called after synthesis. |
1488
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.preSynthesize">preSynthesize</a></code> | Called before synthesis. |
1489
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.synthesize">synthesize</a></code> | Synthesizes files to the project output directory. |
1490
+
1491
+ ---
1492
+
1493
+ ##### `toString` <a name="toString" id="projen-pipelines.GitHubDriftDetectionWorkflow.toString"></a>
1494
+
1495
+ ```typescript
1496
+ public toString(): string
1497
+ ```
1498
+
1499
+ Returns a string representation of this construct.
1500
+
1501
+ ##### `postSynthesize` <a name="postSynthesize" id="projen-pipelines.GitHubDriftDetectionWorkflow.postSynthesize"></a>
1502
+
1503
+ ```typescript
1504
+ public postSynthesize(): void
1505
+ ```
1506
+
1507
+ Called after synthesis.
940
1508
 
941
- ---
1509
+ Order is *not* guaranteed.
942
1510
 
943
- ##### `createIndependentDeployment` <a name="createIndependentDeployment" id="projen-pipelines.GithubCDKPipeline.createIndependentDeployment"></a>
1511
+ ##### `preSynthesize` <a name="preSynthesize" id="projen-pipelines.GitHubDriftDetectionWorkflow.preSynthesize"></a>
944
1512
 
945
1513
  ```typescript
946
- public createIndependentDeployment(stage: IndependentStage): void
1514
+ public preSynthesize(): void
947
1515
  ```
948
1516
 
949
- Creates a job to deploy the CDK application to AWS.
950
-
951
- ###### `stage`<sup>Required</sup> <a name="stage" id="projen-pipelines.GithubCDKPipeline.createIndependentDeployment.parameter.stage"></a>
1517
+ Called before synthesis.
952
1518
 
953
- - *Type:* <a href="#projen-pipelines.IndependentStage">IndependentStage</a>
1519
+ ##### `synthesize` <a name="synthesize" id="projen-pipelines.GitHubDriftDetectionWorkflow.synthesize"></a>
954
1520
 
955
- The independent stage to create.
1521
+ ```typescript
1522
+ public synthesize(): void
1523
+ ```
956
1524
 
957
- ---
1525
+ Synthesizes files to the project output directory.
958
1526
 
959
1527
  #### Static Functions <a name="Static Functions" id="Static Functions"></a>
960
1528
 
961
1529
  | **Name** | **Description** |
962
1530
  | --- | --- |
963
- | <code><a href="#projen-pipelines.GithubCDKPipeline.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
964
- | <code><a href="#projen-pipelines.GithubCDKPipeline.isComponent">isComponent</a></code> | Test whether the given construct is a component. |
1531
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
1532
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.isComponent">isComponent</a></code> | Test whether the given construct is a component. |
965
1533
 
966
1534
  ---
967
1535
 
968
- ##### `isConstruct` <a name="isConstruct" id="projen-pipelines.GithubCDKPipeline.isConstruct"></a>
1536
+ ##### `isConstruct` <a name="isConstruct" id="projen-pipelines.GitHubDriftDetectionWorkflow.isConstruct"></a>
969
1537
 
970
1538
  ```typescript
971
- import { GithubCDKPipeline } from 'projen-pipelines'
1539
+ import { GitHubDriftDetectionWorkflow } from 'projen-pipelines'
972
1540
 
973
- GithubCDKPipeline.isConstruct(x: any)
1541
+ GitHubDriftDetectionWorkflow.isConstruct(x: any)
974
1542
  ```
975
1543
 
976
1544
  Checks if `x` is a construct.
@@ -989,7 +1557,7 @@ library can be accidentally installed, and `instanceof` will behave
989
1557
  unpredictably. It is safest to avoid using `instanceof`, and using
990
1558
  this type-testing method instead.
991
1559
 
992
- ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.GithubCDKPipeline.isConstruct.parameter.x"></a>
1560
+ ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.GitHubDriftDetectionWorkflow.isConstruct.parameter.x"></a>
993
1561
 
994
1562
  - *Type:* any
995
1563
 
@@ -997,17 +1565,17 @@ Any object.
997
1565
 
998
1566
  ---
999
1567
 
1000
- ##### `isComponent` <a name="isComponent" id="projen-pipelines.GithubCDKPipeline.isComponent"></a>
1568
+ ##### `isComponent` <a name="isComponent" id="projen-pipelines.GitHubDriftDetectionWorkflow.isComponent"></a>
1001
1569
 
1002
1570
  ```typescript
1003
- import { GithubCDKPipeline } from 'projen-pipelines'
1571
+ import { GitHubDriftDetectionWorkflow } from 'projen-pipelines'
1004
1572
 
1005
- GithubCDKPipeline.isComponent(x: any)
1573
+ GitHubDriftDetectionWorkflow.isComponent(x: any)
1006
1574
  ```
1007
1575
 
1008
1576
  Test whether the given construct is a component.
1009
1577
 
1010
- ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.GithubCDKPipeline.isComponent.parameter.x"></a>
1578
+ ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.GitHubDriftDetectionWorkflow.isComponent.parameter.x"></a>
1011
1579
 
1012
1580
  - *Type:* any
1013
1581
 
@@ -1017,15 +1585,14 @@ Test whether the given construct is a component.
1017
1585
 
1018
1586
  | **Name** | **Type** | **Description** |
1019
1587
  | --- | --- | --- |
1020
- | <code><a href="#projen-pipelines.GithubCDKPipeline.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
1021
- | <code><a href="#projen-pipelines.GithubCDKPipeline.property.project">project</a></code> | <code>projen.Project</code> | *No description.* |
1022
- | <code><a href="#projen-pipelines.GithubCDKPipeline.property.branchName">branchName</a></code> | <code>string</code> | *No description.* |
1023
- | <code><a href="#projen-pipelines.GithubCDKPipeline.property.stackPrefix">stackPrefix</a></code> | <code>string</code> | *No description.* |
1024
- | <code><a href="#projen-pipelines.GithubCDKPipeline.property.needsVersionedArtifacts">needsVersionedArtifacts</a></code> | <code>boolean</code> | Indicates if versioned artifacts are needed based on manual approval requirements. |
1588
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
1589
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.property.project">project</a></code> | <code>projen.Project</code> | *No description.* |
1590
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.property.name">name</a></code> | <code>string</code> | *No description.* |
1591
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflow.property.schedule">schedule</a></code> | <code>string</code> | *No description.* |
1025
1592
 
1026
1593
  ---
1027
1594
 
1028
- ##### `node`<sup>Required</sup> <a name="node" id="projen-pipelines.GithubCDKPipeline.property.node"></a>
1595
+ ##### `node`<sup>Required</sup> <a name="node" id="projen-pipelines.GitHubDriftDetectionWorkflow.property.node"></a>
1029
1596
 
1030
1597
  ```typescript
1031
1598
  public readonly node: Node;
@@ -1037,7 +1604,7 @@ The tree node.
1037
1604
 
1038
1605
  ---
1039
1606
 
1040
- ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.GithubCDKPipeline.property.project"></a>
1607
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.GitHubDriftDetectionWorkflow.property.project"></a>
1041
1608
 
1042
1609
  ```typescript
1043
1610
  public readonly project: Project;
@@ -1047,38 +1614,26 @@ public readonly project: Project;
1047
1614
 
1048
1615
  ---
1049
1616
 
1050
- ##### `branchName`<sup>Required</sup> <a name="branchName" id="projen-pipelines.GithubCDKPipeline.property.branchName"></a>
1617
+ ##### `name`<sup>Required</sup> <a name="name" id="projen-pipelines.GitHubDriftDetectionWorkflow.property.name"></a>
1051
1618
 
1052
1619
  ```typescript
1053
- public readonly branchName: string;
1620
+ public readonly name: string;
1054
1621
  ```
1055
1622
 
1056
1623
  - *Type:* string
1057
1624
 
1058
1625
  ---
1059
1626
 
1060
- ##### `stackPrefix`<sup>Required</sup> <a name="stackPrefix" id="projen-pipelines.GithubCDKPipeline.property.stackPrefix"></a>
1627
+ ##### `schedule`<sup>Required</sup> <a name="schedule" id="projen-pipelines.GitHubDriftDetectionWorkflow.property.schedule"></a>
1061
1628
 
1062
1629
  ```typescript
1063
- public readonly stackPrefix: string;
1630
+ public readonly schedule: string;
1064
1631
  ```
1065
1632
 
1066
1633
  - *Type:* string
1067
1634
 
1068
1635
  ---
1069
1636
 
1070
- ##### `needsVersionedArtifacts`<sup>Required</sup> <a name="needsVersionedArtifacts" id="projen-pipelines.GithubCDKPipeline.property.needsVersionedArtifacts"></a>
1071
-
1072
- ```typescript
1073
- public readonly needsVersionedArtifacts: boolean;
1074
- ```
1075
-
1076
- - *Type:* boolean
1077
-
1078
- Indicates if versioned artifacts are needed based on manual approval requirements.
1079
-
1080
- ---
1081
-
1082
1637
 
1083
1638
  ### GitlabCDKPipeline <a name="GitlabCDKPipeline" id="projen-pipelines.GitlabCDKPipeline"></a>
1084
1639
 
@@ -1374,6 +1929,191 @@ Currently set to false
1374
1929
  ---
1375
1930
 
1376
1931
 
1932
+ ### GitLabDriftDetectionWorkflow <a name="GitLabDriftDetectionWorkflow" id="projen-pipelines.GitLabDriftDetectionWorkflow"></a>
1933
+
1934
+ #### Initializers <a name="Initializers" id="projen-pipelines.GitLabDriftDetectionWorkflow.Initializer"></a>
1935
+
1936
+ ```typescript
1937
+ import { GitLabDriftDetectionWorkflow } from 'projen-pipelines'
1938
+
1939
+ new GitLabDriftDetectionWorkflow(project: Project, options: GitLabDriftDetectionWorkflowOptions)
1940
+ ```
1941
+
1942
+ | **Name** | **Type** | **Description** |
1943
+ | --- | --- | --- |
1944
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.Initializer.parameter.project">project</a></code> | <code>projen.Project</code> | *No description.* |
1945
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.Initializer.parameter.options">options</a></code> | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions">GitLabDriftDetectionWorkflowOptions</a></code> | *No description.* |
1946
+
1947
+ ---
1948
+
1949
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.GitLabDriftDetectionWorkflow.Initializer.parameter.project"></a>
1950
+
1951
+ - *Type:* projen.Project
1952
+
1953
+ ---
1954
+
1955
+ ##### `options`<sup>Required</sup> <a name="options" id="projen-pipelines.GitLabDriftDetectionWorkflow.Initializer.parameter.options"></a>
1956
+
1957
+ - *Type:* <a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions">GitLabDriftDetectionWorkflowOptions</a>
1958
+
1959
+ ---
1960
+
1961
+ #### Methods <a name="Methods" id="Methods"></a>
1962
+
1963
+ | **Name** | **Description** |
1964
+ | --- | --- |
1965
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.toString">toString</a></code> | Returns a string representation of this construct. |
1966
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.postSynthesize">postSynthesize</a></code> | Called after synthesis. |
1967
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.preSynthesize">preSynthesize</a></code> | Called before synthesis. |
1968
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.synthesize">synthesize</a></code> | Synthesizes files to the project output directory. |
1969
+
1970
+ ---
1971
+
1972
+ ##### `toString` <a name="toString" id="projen-pipelines.GitLabDriftDetectionWorkflow.toString"></a>
1973
+
1974
+ ```typescript
1975
+ public toString(): string
1976
+ ```
1977
+
1978
+ Returns a string representation of this construct.
1979
+
1980
+ ##### `postSynthesize` <a name="postSynthesize" id="projen-pipelines.GitLabDriftDetectionWorkflow.postSynthesize"></a>
1981
+
1982
+ ```typescript
1983
+ public postSynthesize(): void
1984
+ ```
1985
+
1986
+ Called after synthesis.
1987
+
1988
+ Order is *not* guaranteed.
1989
+
1990
+ ##### `preSynthesize` <a name="preSynthesize" id="projen-pipelines.GitLabDriftDetectionWorkflow.preSynthesize"></a>
1991
+
1992
+ ```typescript
1993
+ public preSynthesize(): void
1994
+ ```
1995
+
1996
+ Called before synthesis.
1997
+
1998
+ ##### `synthesize` <a name="synthesize" id="projen-pipelines.GitLabDriftDetectionWorkflow.synthesize"></a>
1999
+
2000
+ ```typescript
2001
+ public synthesize(): void
2002
+ ```
2003
+
2004
+ Synthesizes files to the project output directory.
2005
+
2006
+ #### Static Functions <a name="Static Functions" id="Static Functions"></a>
2007
+
2008
+ | **Name** | **Description** |
2009
+ | --- | --- |
2010
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
2011
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.isComponent">isComponent</a></code> | Test whether the given construct is a component. |
2012
+
2013
+ ---
2014
+
2015
+ ##### `isConstruct` <a name="isConstruct" id="projen-pipelines.GitLabDriftDetectionWorkflow.isConstruct"></a>
2016
+
2017
+ ```typescript
2018
+ import { GitLabDriftDetectionWorkflow } from 'projen-pipelines'
2019
+
2020
+ GitLabDriftDetectionWorkflow.isConstruct(x: any)
2021
+ ```
2022
+
2023
+ Checks if `x` is a construct.
2024
+
2025
+ Use this method instead of `instanceof` to properly detect `Construct`
2026
+ instances, even when the construct library is symlinked.
2027
+
2028
+ Explanation: in JavaScript, multiple copies of the `constructs` library on
2029
+ disk are seen as independent, completely different libraries. As a
2030
+ consequence, the class `Construct` in each copy of the `constructs` library
2031
+ is seen as a different class, and an instance of one class will not test as
2032
+ `instanceof` the other class. `npm install` will not create installations
2033
+ like this, but users may manually symlink construct libraries together or
2034
+ use a monorepo tool: in those cases, multiple copies of the `constructs`
2035
+ library can be accidentally installed, and `instanceof` will behave
2036
+ unpredictably. It is safest to avoid using `instanceof`, and using
2037
+ this type-testing method instead.
2038
+
2039
+ ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.GitLabDriftDetectionWorkflow.isConstruct.parameter.x"></a>
2040
+
2041
+ - *Type:* any
2042
+
2043
+ Any object.
2044
+
2045
+ ---
2046
+
2047
+ ##### `isComponent` <a name="isComponent" id="projen-pipelines.GitLabDriftDetectionWorkflow.isComponent"></a>
2048
+
2049
+ ```typescript
2050
+ import { GitLabDriftDetectionWorkflow } from 'projen-pipelines'
2051
+
2052
+ GitLabDriftDetectionWorkflow.isComponent(x: any)
2053
+ ```
2054
+
2055
+ Test whether the given construct is a component.
2056
+
2057
+ ###### `x`<sup>Required</sup> <a name="x" id="projen-pipelines.GitLabDriftDetectionWorkflow.isComponent.parameter.x"></a>
2058
+
2059
+ - *Type:* any
2060
+
2061
+ ---
2062
+
2063
+ #### Properties <a name="Properties" id="Properties"></a>
2064
+
2065
+ | **Name** | **Type** | **Description** |
2066
+ | --- | --- | --- |
2067
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
2068
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.property.project">project</a></code> | <code>projen.Project</code> | *No description.* |
2069
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.property.name">name</a></code> | <code>string</code> | *No description.* |
2070
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflow.property.schedule">schedule</a></code> | <code>string</code> | *No description.* |
2071
+
2072
+ ---
2073
+
2074
+ ##### `node`<sup>Required</sup> <a name="node" id="projen-pipelines.GitLabDriftDetectionWorkflow.property.node"></a>
2075
+
2076
+ ```typescript
2077
+ public readonly node: Node;
2078
+ ```
2079
+
2080
+ - *Type:* constructs.Node
2081
+
2082
+ The tree node.
2083
+
2084
+ ---
2085
+
2086
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.GitLabDriftDetectionWorkflow.property.project"></a>
2087
+
2088
+ ```typescript
2089
+ public readonly project: Project;
2090
+ ```
2091
+
2092
+ - *Type:* projen.Project
2093
+
2094
+ ---
2095
+
2096
+ ##### `name`<sup>Required</sup> <a name="name" id="projen-pipelines.GitLabDriftDetectionWorkflow.property.name"></a>
2097
+
2098
+ ```typescript
2099
+ public readonly name: string;
2100
+ ```
2101
+
2102
+ - *Type:* string
2103
+
2104
+ ---
2105
+
2106
+ ##### `schedule`<sup>Required</sup> <a name="schedule" id="projen-pipelines.GitLabDriftDetectionWorkflow.property.schedule"></a>
2107
+
2108
+ ```typescript
2109
+ public readonly schedule: string;
2110
+ ```
2111
+
2112
+ - *Type:* string
2113
+
2114
+ ---
2115
+
2116
+
1377
2117
  ## Structs <a name="Structs" id="Structs"></a>
1378
2118
 
1379
2119
  ### ApproverMapping <a name="ApproverMapping" id="projen-pipelines.ApproverMapping"></a>
@@ -1691,52 +2431,124 @@ public readonly preInstallCommands: string[];
1691
2431
  public readonly preInstallSteps: PipelineStep[];
1692
2432
  ```
1693
2433
 
1694
- - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
2434
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
2435
+
2436
+ ---
2437
+
2438
+ ##### `preSynthCommands`<sup>Optional</sup> <a name="preSynthCommands" id="projen-pipelines.BashCDKPipelineOptions.property.preSynthCommands"></a>
2439
+
2440
+ ```typescript
2441
+ public readonly preSynthCommands: string[];
2442
+ ```
2443
+
2444
+ - *Type:* string[]
2445
+
2446
+ ---
2447
+
2448
+ ##### `preSynthSteps`<sup>Optional</sup> <a name="preSynthSteps" id="projen-pipelines.BashCDKPipelineOptions.property.preSynthSteps"></a>
2449
+
2450
+ ```typescript
2451
+ public readonly preSynthSteps: PipelineStep[];
2452
+ ```
2453
+
2454
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
2455
+
2456
+ ---
2457
+
2458
+ ##### `stackPrefix`<sup>Optional</sup> <a name="stackPrefix" id="projen-pipelines.BashCDKPipelineOptions.property.stackPrefix"></a>
2459
+
2460
+ ```typescript
2461
+ public readonly stackPrefix: string;
2462
+ ```
2463
+
2464
+ - *Type:* string
2465
+ - *Default:* project name
2466
+
2467
+ This field is used to define a prefix for the AWS Stack resources created during the pipeline's operation.
2468
+
2469
+ ---
2470
+
2471
+ ##### `versioning`<sup>Optional</sup> <a name="versioning" id="projen-pipelines.BashCDKPipelineOptions.property.versioning"></a>
2472
+
2473
+ ```typescript
2474
+ public readonly versioning: VersioningConfig;
2475
+ ```
2476
+
2477
+ - *Type:* <a href="#projen-pipelines.VersioningConfig">VersioningConfig</a>
2478
+
2479
+ Versioning configuration.
2480
+
2481
+ ---
2482
+
2483
+ ### BashDriftDetectionWorkflowOptions <a name="BashDriftDetectionWorkflowOptions" id="projen-pipelines.BashDriftDetectionWorkflowOptions"></a>
2484
+
2485
+ #### Initializer <a name="Initializer" id="projen-pipelines.BashDriftDetectionWorkflowOptions.Initializer"></a>
2486
+
2487
+ ```typescript
2488
+ import { BashDriftDetectionWorkflowOptions } from 'projen-pipelines'
2489
+
2490
+ const bashDriftDetectionWorkflowOptions: BashDriftDetectionWorkflowOptions = { ... }
2491
+ ```
2492
+
2493
+ #### Properties <a name="Properties" id="Properties"></a>
2494
+
2495
+ | **Name** | **Type** | **Description** |
2496
+ | --- | --- | --- |
2497
+ | <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. |
2498
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflowOptions.property.name">name</a></code> | <code>string</code> | Name of the workflow. |
2499
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflowOptions.property.schedule">schedule</a></code> | <code>string</code> | Cron schedule for drift detection. |
2500
+ | <code><a href="#projen-pipelines.BashDriftDetectionWorkflowOptions.property.scriptPath">scriptPath</a></code> | <code>string</code> | Path to the output script. |
1695
2501
 
1696
2502
  ---
1697
2503
 
1698
- ##### `preSynthCommands`<sup>Optional</sup> <a name="preSynthCommands" id="projen-pipelines.BashCDKPipelineOptions.property.preSynthCommands"></a>
2504
+ ##### `stages`<sup>Required</sup> <a name="stages" id="projen-pipelines.BashDriftDetectionWorkflowOptions.property.stages"></a>
1699
2505
 
1700
2506
  ```typescript
1701
- public readonly preSynthCommands: string[];
2507
+ public readonly stages: DriftDetectionStageOptions[];
1702
2508
  ```
1703
2509
 
1704
- - *Type:* string[]
2510
+ - *Type:* <a href="#projen-pipelines.DriftDetectionStageOptions">DriftDetectionStageOptions</a>[]
2511
+
2512
+ Drift detection configurations for different environments.
1705
2513
 
1706
2514
  ---
1707
2515
 
1708
- ##### `preSynthSteps`<sup>Optional</sup> <a name="preSynthSteps" id="projen-pipelines.BashCDKPipelineOptions.property.preSynthSteps"></a>
2516
+ ##### `name`<sup>Optional</sup> <a name="name" id="projen-pipelines.BashDriftDetectionWorkflowOptions.property.name"></a>
1709
2517
 
1710
2518
  ```typescript
1711
- public readonly preSynthSteps: PipelineStep[];
2519
+ public readonly name: string;
1712
2520
  ```
1713
2521
 
1714
- - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
2522
+ - *Type:* string
2523
+ - *Default:* "drift-detection"
2524
+
2525
+ Name of the workflow.
1715
2526
 
1716
2527
  ---
1717
2528
 
1718
- ##### `stackPrefix`<sup>Optional</sup> <a name="stackPrefix" id="projen-pipelines.BashCDKPipelineOptions.property.stackPrefix"></a>
2529
+ ##### `schedule`<sup>Optional</sup> <a name="schedule" id="projen-pipelines.BashDriftDetectionWorkflowOptions.property.schedule"></a>
1719
2530
 
1720
2531
  ```typescript
1721
- public readonly stackPrefix: string;
2532
+ public readonly schedule: string;
1722
2533
  ```
1723
2534
 
1724
2535
  - *Type:* string
1725
- - *Default:* project name
2536
+ - *Default:* "0 0 * * *" (daily at midnight)
1726
2537
 
1727
- This field is used to define a prefix for the AWS Stack resources created during the pipeline's operation.
2538
+ Cron schedule for drift detection.
1728
2539
 
1729
2540
  ---
1730
2541
 
1731
- ##### `versioning`<sup>Optional</sup> <a name="versioning" id="projen-pipelines.BashCDKPipelineOptions.property.versioning"></a>
2542
+ ##### `scriptPath`<sup>Optional</sup> <a name="scriptPath" id="projen-pipelines.BashDriftDetectionWorkflowOptions.property.scriptPath"></a>
1732
2543
 
1733
2544
  ```typescript
1734
- public readonly versioning: VersioningConfig;
2545
+ public readonly scriptPath: string;
1735
2546
  ```
1736
2547
 
1737
- - *Type:* <a href="#projen-pipelines.VersioningConfig">VersioningConfig</a>
2548
+ - *Type:* string
2549
+ - *Default:* "drift-detection.sh"
1738
2550
 
1739
- Versioning configuration.
2551
+ Path to the output script.
1740
2552
 
1741
2553
  ---
1742
2554
 
@@ -2556,97 +3368,417 @@ public readonly env: Environment;
2556
3368
  public readonly name: string;
2557
3369
  ```
2558
3370
 
2559
- - *Type:* string
3371
+ - *Type:* string
3372
+
3373
+ ---
3374
+
3375
+ ##### `diffType`<sup>Optional</sup> <a name="diffType" id="projen-pipelines.DeploymentStage.property.diffType"></a>
3376
+
3377
+ ```typescript
3378
+ public readonly diffType: CdkDiffType;
3379
+ ```
3380
+
3381
+ - *Type:* <a href="#projen-pipelines.CdkDiffType">CdkDiffType</a>
3382
+
3383
+ ---
3384
+
3385
+ ##### `postDeploySteps`<sup>Optional</sup> <a name="postDeploySteps" id="projen-pipelines.DeploymentStage.property.postDeploySteps"></a>
3386
+
3387
+ ```typescript
3388
+ public readonly postDeploySteps: PipelineStep[];
3389
+ ```
3390
+
3391
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
3392
+
3393
+ ---
3394
+
3395
+ ##### `postDiffSteps`<sup>Optional</sup> <a name="postDiffSteps" id="projen-pipelines.DeploymentStage.property.postDiffSteps"></a>
3396
+
3397
+ ```typescript
3398
+ public readonly postDiffSteps: PipelineStep[];
3399
+ ```
3400
+
3401
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
3402
+
3403
+ ---
3404
+
3405
+ ##### `watchable`<sup>Optional</sup> <a name="watchable" id="projen-pipelines.DeploymentStage.property.watchable"></a>
3406
+
3407
+ ```typescript
3408
+ public readonly watchable: boolean;
3409
+ ```
3410
+
3411
+ - *Type:* boolean
3412
+
3413
+ ---
3414
+
3415
+ ##### `manualApproval`<sup>Optional</sup> <a name="manualApproval" id="projen-pipelines.DeploymentStage.property.manualApproval"></a>
3416
+
3417
+ ```typescript
3418
+ public readonly manualApproval: boolean;
3419
+ ```
3420
+
3421
+ - *Type:* boolean
3422
+
3423
+ ---
3424
+
3425
+ ### DownloadArtifactStepConfig <a name="DownloadArtifactStepConfig" id="projen-pipelines.DownloadArtifactStepConfig"></a>
3426
+
3427
+ #### Initializer <a name="Initializer" id="projen-pipelines.DownloadArtifactStepConfig.Initializer"></a>
3428
+
3429
+ ```typescript
3430
+ import { DownloadArtifactStepConfig } from 'projen-pipelines'
3431
+
3432
+ const downloadArtifactStepConfig: DownloadArtifactStepConfig = { ... }
3433
+ ```
3434
+
3435
+ #### Properties <a name="Properties" id="Properties"></a>
3436
+
3437
+ | **Name** | **Type** | **Description** |
3438
+ | --- | --- | --- |
3439
+ | <code><a href="#projen-pipelines.DownloadArtifactStepConfig.property.name">name</a></code> | <code>string</code> | *No description.* |
3440
+ | <code><a href="#projen-pipelines.DownloadArtifactStepConfig.property.path">path</a></code> | <code>string</code> | *No description.* |
3441
+
3442
+ ---
3443
+
3444
+ ##### `name`<sup>Required</sup> <a name="name" id="projen-pipelines.DownloadArtifactStepConfig.property.name"></a>
3445
+
3446
+ ```typescript
3447
+ public readonly name: string;
3448
+ ```
3449
+
3450
+ - *Type:* string
3451
+
3452
+ ---
3453
+
3454
+ ##### `path`<sup>Required</sup> <a name="path" id="projen-pipelines.DownloadArtifactStepConfig.property.path"></a>
3455
+
3456
+ ```typescript
3457
+ public readonly path: string;
3458
+ ```
3459
+
3460
+ - *Type:* string
3461
+
3462
+ ---
3463
+
3464
+ ### DriftDetectionStageOptions <a name="DriftDetectionStageOptions" id="projen-pipelines.DriftDetectionStageOptions"></a>
3465
+
3466
+ #### Initializer <a name="Initializer" id="projen-pipelines.DriftDetectionStageOptions.Initializer"></a>
3467
+
3468
+ ```typescript
3469
+ import { DriftDetectionStageOptions } from 'projen-pipelines'
3470
+
3471
+ const driftDetectionStageOptions: DriftDetectionStageOptions = { ... }
3472
+ ```
3473
+
3474
+ #### Properties <a name="Properties" id="Properties"></a>
3475
+
3476
+ | **Name** | **Type** | **Description** |
3477
+ | --- | --- | --- |
3478
+ | <code><a href="#projen-pipelines.DriftDetectionStageOptions.property.name">name</a></code> | <code>string</code> | Name of the stage. |
3479
+ | <code><a href="#projen-pipelines.DriftDetectionStageOptions.property.region">region</a></code> | <code>string</code> | AWS region for this stage. |
3480
+ | <code><a href="#projen-pipelines.DriftDetectionStageOptions.property.environment">environment</a></code> | <code>{[ key: string ]: string}</code> | Environment variables for this stage. |
3481
+ | <code><a href="#projen-pipelines.DriftDetectionStageOptions.property.failOnDrift">failOnDrift</a></code> | <code>boolean</code> | Whether to fail if drift is detected. |
3482
+ | <code><a href="#projen-pipelines.DriftDetectionStageOptions.property.roleArn">roleArn</a></code> | <code>string</code> | Role to assume for drift detection. |
3483
+ | <code><a href="#projen-pipelines.DriftDetectionStageOptions.property.stackNames">stackNames</a></code> | <code>string[]</code> | Stack names to check in this stage. |
3484
+
3485
+ ---
3486
+
3487
+ ##### `name`<sup>Required</sup> <a name="name" id="projen-pipelines.DriftDetectionStageOptions.property.name"></a>
3488
+
3489
+ ```typescript
3490
+ public readonly name: string;
3491
+ ```
3492
+
3493
+ - *Type:* string
3494
+
3495
+ Name of the stage.
3496
+
3497
+ ---
3498
+
3499
+ ##### `region`<sup>Required</sup> <a name="region" id="projen-pipelines.DriftDetectionStageOptions.property.region"></a>
3500
+
3501
+ ```typescript
3502
+ public readonly region: string;
3503
+ ```
3504
+
3505
+ - *Type:* string
3506
+
3507
+ AWS region for this stage.
3508
+
3509
+ ---
3510
+
3511
+ ##### `environment`<sup>Optional</sup> <a name="environment" id="projen-pipelines.DriftDetectionStageOptions.property.environment"></a>
3512
+
3513
+ ```typescript
3514
+ public readonly environment: {[ key: string ]: string};
3515
+ ```
3516
+
3517
+ - *Type:* {[ key: string ]: string}
3518
+
3519
+ Environment variables for this stage.
3520
+
3521
+ ---
3522
+
3523
+ ##### `failOnDrift`<sup>Optional</sup> <a name="failOnDrift" id="projen-pipelines.DriftDetectionStageOptions.property.failOnDrift"></a>
3524
+
3525
+ ```typescript
3526
+ public readonly failOnDrift: boolean;
3527
+ ```
3528
+
3529
+ - *Type:* boolean
3530
+ - *Default:* true
3531
+
3532
+ Whether to fail if drift is detected.
3533
+
3534
+ ---
3535
+
3536
+ ##### `roleArn`<sup>Optional</sup> <a name="roleArn" id="projen-pipelines.DriftDetectionStageOptions.property.roleArn"></a>
3537
+
3538
+ ```typescript
3539
+ public readonly roleArn: string;
3540
+ ```
3541
+
3542
+ - *Type:* string
3543
+
3544
+ Role to assume for drift detection.
3545
+
3546
+ ---
3547
+
3548
+ ##### `stackNames`<sup>Optional</sup> <a name="stackNames" id="projen-pipelines.DriftDetectionStageOptions.property.stackNames"></a>
3549
+
3550
+ ```typescript
3551
+ public readonly stackNames: string[];
3552
+ ```
3553
+
3554
+ - *Type:* string[]
3555
+
3556
+ Stack names to check in this stage.
3557
+
3558
+ ---
3559
+
3560
+ ### DriftDetectionStepProps <a name="DriftDetectionStepProps" id="projen-pipelines.DriftDetectionStepProps"></a>
3561
+
3562
+ #### Initializer <a name="Initializer" id="projen-pipelines.DriftDetectionStepProps.Initializer"></a>
3563
+
3564
+ ```typescript
3565
+ import { DriftDetectionStepProps } from 'projen-pipelines'
3566
+
3567
+ const driftDetectionStepProps: DriftDetectionStepProps = { ... }
3568
+ ```
3569
+
3570
+ #### Properties <a name="Properties" id="Properties"></a>
3571
+
3572
+ | **Name** | **Type** | **Description** |
3573
+ | --- | --- | --- |
3574
+ | <code><a href="#projen-pipelines.DriftDetectionStepProps.property.name">name</a></code> | <code>string</code> | Name of the stage. |
3575
+ | <code><a href="#projen-pipelines.DriftDetectionStepProps.property.region">region</a></code> | <code>string</code> | AWS region for this stage. |
3576
+ | <code><a href="#projen-pipelines.DriftDetectionStepProps.property.environment">environment</a></code> | <code>{[ key: string ]: string}</code> | Environment variables for this stage. |
3577
+ | <code><a href="#projen-pipelines.DriftDetectionStepProps.property.failOnDrift">failOnDrift</a></code> | <code>boolean</code> | Whether to fail if drift is detected. |
3578
+ | <code><a href="#projen-pipelines.DriftDetectionStepProps.property.roleArn">roleArn</a></code> | <code>string</code> | Role to assume for drift detection. |
3579
+ | <code><a href="#projen-pipelines.DriftDetectionStepProps.property.stackNames">stackNames</a></code> | <code>string[]</code> | Stack names to check in this stage. |
3580
+ | <code><a href="#projen-pipelines.DriftDetectionStepProps.property.timeout">timeout</a></code> | <code>number</code> | Timeout in minutes for drift detection. |
3581
+
3582
+ ---
3583
+
3584
+ ##### `name`<sup>Required</sup> <a name="name" id="projen-pipelines.DriftDetectionStepProps.property.name"></a>
3585
+
3586
+ ```typescript
3587
+ public readonly name: string;
3588
+ ```
3589
+
3590
+ - *Type:* string
3591
+
3592
+ Name of the stage.
3593
+
3594
+ ---
3595
+
3596
+ ##### `region`<sup>Required</sup> <a name="region" id="projen-pipelines.DriftDetectionStepProps.property.region"></a>
3597
+
3598
+ ```typescript
3599
+ public readonly region: string;
3600
+ ```
3601
+
3602
+ - *Type:* string
3603
+
3604
+ AWS region for this stage.
3605
+
3606
+ ---
3607
+
3608
+ ##### `environment`<sup>Optional</sup> <a name="environment" id="projen-pipelines.DriftDetectionStepProps.property.environment"></a>
3609
+
3610
+ ```typescript
3611
+ public readonly environment: {[ key: string ]: string};
3612
+ ```
3613
+
3614
+ - *Type:* {[ key: string ]: string}
3615
+
3616
+ Environment variables for this stage.
3617
+
3618
+ ---
3619
+
3620
+ ##### `failOnDrift`<sup>Optional</sup> <a name="failOnDrift" id="projen-pipelines.DriftDetectionStepProps.property.failOnDrift"></a>
3621
+
3622
+ ```typescript
3623
+ public readonly failOnDrift: boolean;
3624
+ ```
3625
+
3626
+ - *Type:* boolean
3627
+ - *Default:* true
3628
+
3629
+ Whether to fail if drift is detected.
3630
+
3631
+ ---
3632
+
3633
+ ##### `roleArn`<sup>Optional</sup> <a name="roleArn" id="projen-pipelines.DriftDetectionStepProps.property.roleArn"></a>
3634
+
3635
+ ```typescript
3636
+ public readonly roleArn: string;
3637
+ ```
3638
+
3639
+ - *Type:* string
3640
+
3641
+ Role to assume for drift detection.
3642
+
3643
+ ---
3644
+
3645
+ ##### `stackNames`<sup>Optional</sup> <a name="stackNames" id="projen-pipelines.DriftDetectionStepProps.property.stackNames"></a>
3646
+
3647
+ ```typescript
3648
+ public readonly stackNames: string[];
3649
+ ```
3650
+
3651
+ - *Type:* string[]
3652
+
3653
+ Stack names to check in this stage.
2560
3654
 
2561
3655
  ---
2562
3656
 
2563
- ##### `diffType`<sup>Optional</sup> <a name="diffType" id="projen-pipelines.DeploymentStage.property.diffType"></a>
3657
+ ##### `timeout`<sup>Optional</sup> <a name="timeout" id="projen-pipelines.DriftDetectionStepProps.property.timeout"></a>
2564
3658
 
2565
3659
  ```typescript
2566
- public readonly diffType: CdkDiffType;
3660
+ public readonly timeout: number;
2567
3661
  ```
2568
3662
 
2569
- - *Type:* <a href="#projen-pipelines.CdkDiffType">CdkDiffType</a>
3663
+ - *Type:* number
3664
+ - *Default:* 30
3665
+
3666
+ Timeout in minutes for drift detection.
2570
3667
 
2571
3668
  ---
2572
3669
 
2573
- ##### `postDeploySteps`<sup>Optional</sup> <a name="postDeploySteps" id="projen-pipelines.DeploymentStage.property.postDeploySteps"></a>
3670
+ ### DriftDetectionWorkflowOptions <a name="DriftDetectionWorkflowOptions" id="projen-pipelines.DriftDetectionWorkflowOptions"></a>
3671
+
3672
+ #### Initializer <a name="Initializer" id="projen-pipelines.DriftDetectionWorkflowOptions.Initializer"></a>
2574
3673
 
2575
3674
  ```typescript
2576
- public readonly postDeploySteps: PipelineStep[];
3675
+ import { DriftDetectionWorkflowOptions } from 'projen-pipelines'
3676
+
3677
+ const driftDetectionWorkflowOptions: DriftDetectionWorkflowOptions = { ... }
2577
3678
  ```
2578
3679
 
2579
- - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
3680
+ #### Properties <a name="Properties" id="Properties"></a>
3681
+
3682
+ | **Name** | **Type** | **Description** |
3683
+ | --- | --- | --- |
3684
+ | <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. |
3685
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflowOptions.property.name">name</a></code> | <code>string</code> | Name of the workflow. |
3686
+ | <code><a href="#projen-pipelines.DriftDetectionWorkflowOptions.property.schedule">schedule</a></code> | <code>string</code> | Cron schedule for drift detection. |
2580
3687
 
2581
3688
  ---
2582
3689
 
2583
- ##### `postDiffSteps`<sup>Optional</sup> <a name="postDiffSteps" id="projen-pipelines.DeploymentStage.property.postDiffSteps"></a>
3690
+ ##### `stages`<sup>Required</sup> <a name="stages" id="projen-pipelines.DriftDetectionWorkflowOptions.property.stages"></a>
2584
3691
 
2585
3692
  ```typescript
2586
- public readonly postDiffSteps: PipelineStep[];
3693
+ public readonly stages: DriftDetectionStageOptions[];
2587
3694
  ```
2588
3695
 
2589
- - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
3696
+ - *Type:* <a href="#projen-pipelines.DriftDetectionStageOptions">DriftDetectionStageOptions</a>[]
3697
+
3698
+ Drift detection configurations for different environments.
2590
3699
 
2591
3700
  ---
2592
3701
 
2593
- ##### `watchable`<sup>Optional</sup> <a name="watchable" id="projen-pipelines.DeploymentStage.property.watchable"></a>
3702
+ ##### `name`<sup>Optional</sup> <a name="name" id="projen-pipelines.DriftDetectionWorkflowOptions.property.name"></a>
2594
3703
 
2595
3704
  ```typescript
2596
- public readonly watchable: boolean;
3705
+ public readonly name: string;
2597
3706
  ```
2598
3707
 
2599
- - *Type:* boolean
3708
+ - *Type:* string
3709
+ - *Default:* "drift-detection"
3710
+
3711
+ Name of the workflow.
2600
3712
 
2601
3713
  ---
2602
3714
 
2603
- ##### `manualApproval`<sup>Optional</sup> <a name="manualApproval" id="projen-pipelines.DeploymentStage.property.manualApproval"></a>
3715
+ ##### `schedule`<sup>Optional</sup> <a name="schedule" id="projen-pipelines.DriftDetectionWorkflowOptions.property.schedule"></a>
2604
3716
 
2605
3717
  ```typescript
2606
- public readonly manualApproval: boolean;
3718
+ public readonly schedule: string;
2607
3719
  ```
2608
3720
 
2609
- - *Type:* boolean
3721
+ - *Type:* string
3722
+ - *Default:* "0 0 * * *" (daily at midnight)
3723
+
3724
+ Cron schedule for drift detection.
2610
3725
 
2611
3726
  ---
2612
3727
 
2613
- ### DownloadArtifactStepConfig <a name="DownloadArtifactStepConfig" id="projen-pipelines.DownloadArtifactStepConfig"></a>
3728
+ ### DriftErrorHandler <a name="DriftErrorHandler" id="projen-pipelines.DriftErrorHandler"></a>
2614
3729
 
2615
- #### Initializer <a name="Initializer" id="projen-pipelines.DownloadArtifactStepConfig.Initializer"></a>
3730
+ #### Initializer <a name="Initializer" id="projen-pipelines.DriftErrorHandler.Initializer"></a>
2616
3731
 
2617
3732
  ```typescript
2618
- import { DownloadArtifactStepConfig } from 'projen-pipelines'
3733
+ import { DriftErrorHandler } from 'projen-pipelines'
2619
3734
 
2620
- const downloadArtifactStepConfig: DownloadArtifactStepConfig = { ... }
3735
+ const driftErrorHandler: DriftErrorHandler = { ... }
2621
3736
  ```
2622
3737
 
2623
3738
  #### Properties <a name="Properties" id="Properties"></a>
2624
3739
 
2625
3740
  | **Name** | **Type** | **Description** |
2626
3741
  | --- | --- | --- |
2627
- | <code><a href="#projen-pipelines.DownloadArtifactStepConfig.property.name">name</a></code> | <code>string</code> | *No description.* |
2628
- | <code><a href="#projen-pipelines.DownloadArtifactStepConfig.property.path">path</a></code> | <code>string</code> | *No description.* |
3742
+ | <code><a href="#projen-pipelines.DriftErrorHandler.property.action">action</a></code> | <code>string</code> | Action to take when pattern matches. |
3743
+ | <code><a href="#projen-pipelines.DriftErrorHandler.property.pattern">pattern</a></code> | <code>string</code> | Pattern to match stack names. |
3744
+ | <code><a href="#projen-pipelines.DriftErrorHandler.property.message">message</a></code> | <code>string</code> | Optional message to display. |
2629
3745
 
2630
3746
  ---
2631
3747
 
2632
- ##### `name`<sup>Required</sup> <a name="name" id="projen-pipelines.DownloadArtifactStepConfig.property.name"></a>
3748
+ ##### `action`<sup>Required</sup> <a name="action" id="projen-pipelines.DriftErrorHandler.property.action"></a>
2633
3749
 
2634
3750
  ```typescript
2635
- public readonly name: string;
3751
+ public readonly action: string;
2636
3752
  ```
2637
3753
 
2638
3754
  - *Type:* string
2639
3755
 
3756
+ Action to take when pattern matches.
3757
+
2640
3758
  ---
2641
3759
 
2642
- ##### `path`<sup>Required</sup> <a name="path" id="projen-pipelines.DownloadArtifactStepConfig.property.path"></a>
3760
+ ##### `pattern`<sup>Required</sup> <a name="pattern" id="projen-pipelines.DriftErrorHandler.property.pattern"></a>
2643
3761
 
2644
3762
  ```typescript
2645
- public readonly path: string;
3763
+ public readonly pattern: string;
3764
+ ```
3765
+
3766
+ - *Type:* string
3767
+
3768
+ Pattern to match stack names.
3769
+
3770
+ ---
3771
+
3772
+ ##### `message`<sup>Optional</sup> <a name="message" id="projen-pipelines.DriftErrorHandler.property.message"></a>
3773
+
3774
+ ```typescript
3775
+ public readonly message: string;
2646
3776
  ```
2647
3777
 
2648
3778
  - *Type:* string
2649
3779
 
3780
+ Optional message to display.
3781
+
2650
3782
  ---
2651
3783
 
2652
3784
  ### Environment <a name="Environment" id="projen-pipelines.Environment"></a>
@@ -3032,6 +4164,91 @@ also needed for manual approvals
3032
4164
 
3033
4165
  ---
3034
4166
 
4167
+ ### GitHubDriftDetectionWorkflowOptions <a name="GitHubDriftDetectionWorkflowOptions" id="projen-pipelines.GitHubDriftDetectionWorkflowOptions"></a>
4168
+
4169
+ #### Initializer <a name="Initializer" id="projen-pipelines.GitHubDriftDetectionWorkflowOptions.Initializer"></a>
4170
+
4171
+ ```typescript
4172
+ import { GitHubDriftDetectionWorkflowOptions } from 'projen-pipelines'
4173
+
4174
+ const gitHubDriftDetectionWorkflowOptions: GitHubDriftDetectionWorkflowOptions = { ... }
4175
+ ```
4176
+
4177
+ #### Properties <a name="Properties" id="Properties"></a>
4178
+
4179
+ | **Name** | **Type** | **Description** |
4180
+ | --- | --- | --- |
4181
+ | <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. |
4182
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.name">name</a></code> | <code>string</code> | Name of the workflow. |
4183
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.schedule">schedule</a></code> | <code>string</code> | Cron schedule for drift detection. |
4184
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.createIssues">createIssues</a></code> | <code>boolean</code> | Whether to create issues on drift detection. |
4185
+ | <code><a href="#projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.permissions">permissions</a></code> | <code>{[ key: string ]: string}</code> | Additional permissions for GitHub workflow. |
4186
+
4187
+ ---
4188
+
4189
+ ##### `stages`<sup>Required</sup> <a name="stages" id="projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.stages"></a>
4190
+
4191
+ ```typescript
4192
+ public readonly stages: DriftDetectionStageOptions[];
4193
+ ```
4194
+
4195
+ - *Type:* <a href="#projen-pipelines.DriftDetectionStageOptions">DriftDetectionStageOptions</a>[]
4196
+
4197
+ Drift detection configurations for different environments.
4198
+
4199
+ ---
4200
+
4201
+ ##### `name`<sup>Optional</sup> <a name="name" id="projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.name"></a>
4202
+
4203
+ ```typescript
4204
+ public readonly name: string;
4205
+ ```
4206
+
4207
+ - *Type:* string
4208
+ - *Default:* "drift-detection"
4209
+
4210
+ Name of the workflow.
4211
+
4212
+ ---
4213
+
4214
+ ##### `schedule`<sup>Optional</sup> <a name="schedule" id="projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.schedule"></a>
4215
+
4216
+ ```typescript
4217
+ public readonly schedule: string;
4218
+ ```
4219
+
4220
+ - *Type:* string
4221
+ - *Default:* "0 0 * * *" (daily at midnight)
4222
+
4223
+ Cron schedule for drift detection.
4224
+
4225
+ ---
4226
+
4227
+ ##### `createIssues`<sup>Optional</sup> <a name="createIssues" id="projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.createIssues"></a>
4228
+
4229
+ ```typescript
4230
+ public readonly createIssues: boolean;
4231
+ ```
4232
+
4233
+ - *Type:* boolean
4234
+ - *Default:* false
4235
+
4236
+ Whether to create issues on drift detection.
4237
+
4238
+ ---
4239
+
4240
+ ##### `permissions`<sup>Optional</sup> <a name="permissions" id="projen-pipelines.GitHubDriftDetectionWorkflowOptions.property.permissions"></a>
4241
+
4242
+ ```typescript
4243
+ public readonly permissions: {[ key: string ]: string};
4244
+ ```
4245
+
4246
+ - *Type:* {[ key: string ]: string}
4247
+
4248
+ Additional permissions for GitHub workflow.
4249
+
4250
+ ---
4251
+
3035
4252
  ### GithubPackagesLoginStepOptions <a name="GithubPackagesLoginStepOptions" id="projen-pipelines.GithubPackagesLoginStepOptions"></a>
3036
4253
 
3037
4254
  #### Initializer <a name="Initializer" id="projen-pipelines.GithubPackagesLoginStepOptions.Initializer"></a>
@@ -3554,6 +4771,91 @@ Runner tags configuration for the pipeline.
3554
4771
 
3555
4772
  ---
3556
4773
 
4774
+ ### GitLabDriftDetectionWorkflowOptions <a name="GitLabDriftDetectionWorkflowOptions" id="projen-pipelines.GitLabDriftDetectionWorkflowOptions"></a>
4775
+
4776
+ #### Initializer <a name="Initializer" id="projen-pipelines.GitLabDriftDetectionWorkflowOptions.Initializer"></a>
4777
+
4778
+ ```typescript
4779
+ import { GitLabDriftDetectionWorkflowOptions } from 'projen-pipelines'
4780
+
4781
+ const gitLabDriftDetectionWorkflowOptions: GitLabDriftDetectionWorkflowOptions = { ... }
4782
+ ```
4783
+
4784
+ #### Properties <a name="Properties" id="Properties"></a>
4785
+
4786
+ | **Name** | **Type** | **Description** |
4787
+ | --- | --- | --- |
4788
+ | <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. |
4789
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.name">name</a></code> | <code>string</code> | Name of the workflow. |
4790
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.schedule">schedule</a></code> | <code>string</code> | Cron schedule for drift detection. |
4791
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.image">image</a></code> | <code>string</code> | Docker image to use for drift detection. |
4792
+ | <code><a href="#projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.runnerTags">runnerTags</a></code> | <code>string[]</code> | GitLab runner tags. |
4793
+
4794
+ ---
4795
+
4796
+ ##### `stages`<sup>Required</sup> <a name="stages" id="projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.stages"></a>
4797
+
4798
+ ```typescript
4799
+ public readonly stages: DriftDetectionStageOptions[];
4800
+ ```
4801
+
4802
+ - *Type:* <a href="#projen-pipelines.DriftDetectionStageOptions">DriftDetectionStageOptions</a>[]
4803
+
4804
+ Drift detection configurations for different environments.
4805
+
4806
+ ---
4807
+
4808
+ ##### `name`<sup>Optional</sup> <a name="name" id="projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.name"></a>
4809
+
4810
+ ```typescript
4811
+ public readonly name: string;
4812
+ ```
4813
+
4814
+ - *Type:* string
4815
+ - *Default:* "drift-detection"
4816
+
4817
+ Name of the workflow.
4818
+
4819
+ ---
4820
+
4821
+ ##### `schedule`<sup>Optional</sup> <a name="schedule" id="projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.schedule"></a>
4822
+
4823
+ ```typescript
4824
+ public readonly schedule: string;
4825
+ ```
4826
+
4827
+ - *Type:* string
4828
+ - *Default:* "0 0 * * *" (daily at midnight)
4829
+
4830
+ Cron schedule for drift detection.
4831
+
4832
+ ---
4833
+
4834
+ ##### `image`<sup>Optional</sup> <a name="image" id="projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.image"></a>
4835
+
4836
+ ```typescript
4837
+ public readonly image: string;
4838
+ ```
4839
+
4840
+ - *Type:* string
4841
+ - *Default:* "node:18"
4842
+
4843
+ Docker image to use for drift detection.
4844
+
4845
+ ---
4846
+
4847
+ ##### `runnerTags`<sup>Optional</sup> <a name="runnerTags" id="projen-pipelines.GitLabDriftDetectionWorkflowOptions.property.runnerTags"></a>
4848
+
4849
+ ```typescript
4850
+ public readonly runnerTags: string[];
4851
+ ```
4852
+
4853
+ - *Type:* string[]
4854
+
4855
+ GitLab runner tags.
4856
+
4857
+ ---
4858
+
3557
4859
  ### GitlabRunnerTags <a name="GitlabRunnerTags" id="projen-pipelines.GitlabRunnerTags"></a>
3558
4860
 
3559
4861
  Configuration for GitLab runner tags used within the CI/CD pipeline for various stages.
@@ -5009,6 +6311,109 @@ Should be implemented by subclasses.
5009
6311
 
5010
6312
 
5011
6313
 
6314
+ ### DriftDetectionStep <a name="DriftDetectionStep" id="projen-pipelines.DriftDetectionStep"></a>
6315
+
6316
+ #### Initializers <a name="Initializers" id="projen-pipelines.DriftDetectionStep.Initializer"></a>
6317
+
6318
+ ```typescript
6319
+ import { DriftDetectionStep } from 'projen-pipelines'
6320
+
6321
+ new DriftDetectionStep(project: Project, props: DriftDetectionStepProps)
6322
+ ```
6323
+
6324
+ | **Name** | **Type** | **Description** |
6325
+ | --- | --- | --- |
6326
+ | <code><a href="#projen-pipelines.DriftDetectionStep.Initializer.parameter.project">project</a></code> | <code>projen.Project</code> | - The projen project reference. |
6327
+ | <code><a href="#projen-pipelines.DriftDetectionStep.Initializer.parameter.props">props</a></code> | <code><a href="#projen-pipelines.DriftDetectionStepProps">DriftDetectionStepProps</a></code> | *No description.* |
6328
+
6329
+ ---
6330
+
6331
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.DriftDetectionStep.Initializer.parameter.project"></a>
6332
+
6333
+ - *Type:* projen.Project
6334
+
6335
+ The projen project reference.
6336
+
6337
+ ---
6338
+
6339
+ ##### `props`<sup>Required</sup> <a name="props" id="projen-pipelines.DriftDetectionStep.Initializer.parameter.props"></a>
6340
+
6341
+ - *Type:* <a href="#projen-pipelines.DriftDetectionStepProps">DriftDetectionStepProps</a>
6342
+
6343
+ ---
6344
+
6345
+ #### Methods <a name="Methods" id="Methods"></a>
6346
+
6347
+ | **Name** | **Description** |
6348
+ | --- | --- |
6349
+ | <code><a href="#projen-pipelines.DriftDetectionStep.toBash">toBash</a></code> | Converts the sequence of steps into a Bash script configuration. |
6350
+ | <code><a href="#projen-pipelines.DriftDetectionStep.toCodeCatalyst">toCodeCatalyst</a></code> | Converts the sequence of steps into a CodeCatalyst Actions step configuration. |
6351
+ | <code><a href="#projen-pipelines.DriftDetectionStep.toGithub">toGithub</a></code> | Converts the sequence of steps into a GitHub Actions step configuration. |
6352
+ | <code><a href="#projen-pipelines.DriftDetectionStep.toGitlab">toGitlab</a></code> | Converts the sequence of steps into a GitLab CI configuration. |
6353
+ | <code><a href="#projen-pipelines.DriftDetectionStep.addSteps">addSteps</a></code> | *No description.* |
6354
+ | <code><a href="#projen-pipelines.DriftDetectionStep.prependSteps">prependSteps</a></code> | *No description.* |
6355
+
6356
+ ---
6357
+
6358
+ ##### `toBash` <a name="toBash" id="projen-pipelines.DriftDetectionStep.toBash"></a>
6359
+
6360
+ ```typescript
6361
+ public toBash(): BashStepConfig
6362
+ ```
6363
+
6364
+ Converts the sequence of steps into a Bash script configuration.
6365
+
6366
+ ##### `toCodeCatalyst` <a name="toCodeCatalyst" id="projen-pipelines.DriftDetectionStep.toCodeCatalyst"></a>
6367
+
6368
+ ```typescript
6369
+ public toCodeCatalyst(): CodeCatalystStepConfig
6370
+ ```
6371
+
6372
+ Converts the sequence of steps into a CodeCatalyst Actions step configuration.
6373
+
6374
+ ##### `toGithub` <a name="toGithub" id="projen-pipelines.DriftDetectionStep.toGithub"></a>
6375
+
6376
+ ```typescript
6377
+ public toGithub(): GithubStepConfig
6378
+ ```
6379
+
6380
+ Converts the sequence of steps into a GitHub Actions step configuration.
6381
+
6382
+ ##### `toGitlab` <a name="toGitlab" id="projen-pipelines.DriftDetectionStep.toGitlab"></a>
6383
+
6384
+ ```typescript
6385
+ public toGitlab(): GitlabStepConfig
6386
+ ```
6387
+
6388
+ Converts the sequence of steps into a GitLab CI configuration.
6389
+
6390
+ ##### `addSteps` <a name="addSteps" id="projen-pipelines.DriftDetectionStep.addSteps"></a>
6391
+
6392
+ ```typescript
6393
+ public addSteps(steps: ...PipelineStep[]): void
6394
+ ```
6395
+
6396
+ ###### `steps`<sup>Required</sup> <a name="steps" id="projen-pipelines.DriftDetectionStep.addSteps.parameter.steps"></a>
6397
+
6398
+ - *Type:* ...<a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
6399
+
6400
+ ---
6401
+
6402
+ ##### `prependSteps` <a name="prependSteps" id="projen-pipelines.DriftDetectionStep.prependSteps"></a>
6403
+
6404
+ ```typescript
6405
+ public prependSteps(steps: ...PipelineStep[]): void
6406
+ ```
6407
+
6408
+ ###### `steps`<sup>Required</sup> <a name="steps" id="projen-pipelines.DriftDetectionStep.prependSteps.parameter.steps"></a>
6409
+
6410
+ - *Type:* ...<a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
6411
+
6412
+ ---
6413
+
6414
+
6415
+
6416
+
5012
6417
  ### GithubPackagesLoginStep <a name="GithubPackagesLoginStep" id="projen-pipelines.GithubPackagesLoginStep"></a>
5013
6418
 
5014
6419
  #### Initializers <a name="Initializers" id="projen-pipelines.GithubPackagesLoginStep.Initializer"></a>
@@ -5494,13 +6899,14 @@ Concrete implementation of PipelineStep that executes simple commands.
5494
6899
  ```typescript
5495
6900
  import { SimpleCommandStep } from 'projen-pipelines'
5496
6901
 
5497
- new SimpleCommandStep(project: Project, commands: string[])
6902
+ new SimpleCommandStep(project: Project, commands: string[], env?: {[ key: string ]: string})
5498
6903
  ```
5499
6904
 
5500
6905
  | **Name** | **Type** | **Description** |
5501
6906
  | --- | --- | --- |
5502
6907
  | <code><a href="#projen-pipelines.SimpleCommandStep.Initializer.parameter.project">project</a></code> | <code>projen.Project</code> | - The projen project reference. |
5503
6908
  | <code><a href="#projen-pipelines.SimpleCommandStep.Initializer.parameter.commands">commands</a></code> | <code>string[]</code> | - Shell commands to execute. |
6909
+ | <code><a href="#projen-pipelines.SimpleCommandStep.Initializer.parameter.env">env</a></code> | <code>{[ key: string ]: string}</code> | *No description.* |
5504
6910
 
5505
6911
  ---
5506
6912
 
@@ -5520,6 +6926,12 @@ Shell commands to execute.
5520
6926
 
5521
6927
  ---
5522
6928
 
6929
+ ##### `env`<sup>Optional</sup> <a name="env" id="projen-pipelines.SimpleCommandStep.Initializer.parameter.env"></a>
6930
+
6931
+ - *Type:* {[ key: string ]: string}
6932
+
6933
+ ---
6934
+
5523
6935
  #### Methods <a name="Methods" id="Methods"></a>
5524
6936
 
5525
6937
  | **Name** | **Description** |