projen-pipelines 0.1.1 → 0.2.0

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
@@ -1226,6 +1226,7 @@ const bashCDKPipelineOptions: BashCDKPipelineOptions = { ... }
1226
1226
 
1227
1227
  | **Name** | **Type** | **Description** |
1228
1228
  | --- | --- | --- |
1229
+ | <code><a href="#projen-pipelines.BashCDKPipelineOptions.property.iamRoleArns">iamRoleArns</a></code> | <code><a href="#projen-pipelines.IamRoleConfig">IamRoleConfig</a></code> | IAM config. |
1229
1230
  | <code><a href="#projen-pipelines.BashCDKPipelineOptions.property.pkgNamespace">pkgNamespace</a></code> | <code>string</code> | This field determines the NPM namespace to be used when packaging CDK cloud assemblies. |
1230
1231
  | <code><a href="#projen-pipelines.BashCDKPipelineOptions.property.stages">stages</a></code> | <code><a href="#projen-pipelines.DeploymentStage">DeploymentStage</a>[]</code> | This field specifies a list of stages that should be deployed using a CI/CD pipeline. |
1231
1232
  | <code><a href="#projen-pipelines.BashCDKPipelineOptions.property.branchName">branchName</a></code> | <code>string</code> | the name of the branch to deploy from. |
@@ -1243,6 +1244,18 @@ const bashCDKPipelineOptions: BashCDKPipelineOptions = { ... }
1243
1244
 
1244
1245
  ---
1245
1246
 
1247
+ ##### `iamRoleArns`<sup>Required</sup> <a name="iamRoleArns" id="projen-pipelines.BashCDKPipelineOptions.property.iamRoleArns"></a>
1248
+
1249
+ ```typescript
1250
+ public readonly iamRoleArns: IamRoleConfig;
1251
+ ```
1252
+
1253
+ - *Type:* <a href="#projen-pipelines.IamRoleConfig">IamRoleConfig</a>
1254
+
1255
+ IAM config.
1256
+
1257
+ ---
1258
+
1246
1259
  ##### `pkgNamespace`<sup>Required</sup> <a name="pkgNamespace" id="projen-pipelines.BashCDKPipelineOptions.property.pkgNamespace"></a>
1247
1260
 
1248
1261
  ```typescript
@@ -1459,6 +1472,7 @@ const cDKPipelineOptions: CDKPipelineOptions = { ... }
1459
1472
 
1460
1473
  | **Name** | **Type** | **Description** |
1461
1474
  | --- | --- | --- |
1475
+ | <code><a href="#projen-pipelines.CDKPipelineOptions.property.iamRoleArns">iamRoleArns</a></code> | <code><a href="#projen-pipelines.IamRoleConfig">IamRoleConfig</a></code> | IAM config. |
1462
1476
  | <code><a href="#projen-pipelines.CDKPipelineOptions.property.pkgNamespace">pkgNamespace</a></code> | <code>string</code> | This field determines the NPM namespace to be used when packaging CDK cloud assemblies. |
1463
1477
  | <code><a href="#projen-pipelines.CDKPipelineOptions.property.stages">stages</a></code> | <code><a href="#projen-pipelines.DeploymentStage">DeploymentStage</a>[]</code> | This field specifies a list of stages that should be deployed using a CI/CD pipeline. |
1464
1478
  | <code><a href="#projen-pipelines.CDKPipelineOptions.property.branchName">branchName</a></code> | <code>string</code> | the name of the branch to deploy from. |
@@ -1476,6 +1490,18 @@ const cDKPipelineOptions: CDKPipelineOptions = { ... }
1476
1490
 
1477
1491
  ---
1478
1492
 
1493
+ ##### `iamRoleArns`<sup>Required</sup> <a name="iamRoleArns" id="projen-pipelines.CDKPipelineOptions.property.iamRoleArns"></a>
1494
+
1495
+ ```typescript
1496
+ public readonly iamRoleArns: IamRoleConfig;
1497
+ ```
1498
+
1499
+ - *Type:* <a href="#projen-pipelines.IamRoleConfig">IamRoleConfig</a>
1500
+
1501
+ IAM config.
1502
+
1503
+ ---
1504
+
1479
1505
  ##### `pkgNamespace`<sup>Required</sup> <a name="pkgNamespace" id="projen-pipelines.CDKPipelineOptions.property.pkgNamespace"></a>
1480
1506
 
1481
1507
  ```typescript
@@ -1640,6 +1666,67 @@ This field is used to define a prefix for the AWS Stack resources created during
1640
1666
 
1641
1667
  ---
1642
1668
 
1669
+ ### CodeArtifactLoginStepOptions <a name="CodeArtifactLoginStepOptions" id="projen-pipelines.CodeArtifactLoginStepOptions"></a>
1670
+
1671
+ #### Initializer <a name="Initializer" id="projen-pipelines.CodeArtifactLoginStepOptions.Initializer"></a>
1672
+
1673
+ ```typescript
1674
+ import { CodeArtifactLoginStepOptions } from 'projen-pipelines'
1675
+
1676
+ const codeArtifactLoginStepOptions: CodeArtifactLoginStepOptions = { ... }
1677
+ ```
1678
+
1679
+ #### Properties <a name="Properties" id="Properties"></a>
1680
+
1681
+ | **Name** | **Type** | **Description** |
1682
+ | --- | --- | --- |
1683
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStepOptions.property.domainName">domainName</a></code> | <code>string</code> | *No description.* |
1684
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStepOptions.property.ownerAccount">ownerAccount</a></code> | <code>string</code> | *No description.* |
1685
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStepOptions.property.region">region</a></code> | <code>string</code> | *No description.* |
1686
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStepOptions.property.role">role</a></code> | <code>string</code> | *No description.* |
1687
+
1688
+ ---
1689
+
1690
+ ##### `domainName`<sup>Required</sup> <a name="domainName" id="projen-pipelines.CodeArtifactLoginStepOptions.property.domainName"></a>
1691
+
1692
+ ```typescript
1693
+ public readonly domainName: string;
1694
+ ```
1695
+
1696
+ - *Type:* string
1697
+
1698
+ ---
1699
+
1700
+ ##### `ownerAccount`<sup>Required</sup> <a name="ownerAccount" id="projen-pipelines.CodeArtifactLoginStepOptions.property.ownerAccount"></a>
1701
+
1702
+ ```typescript
1703
+ public readonly ownerAccount: string;
1704
+ ```
1705
+
1706
+ - *Type:* string
1707
+
1708
+ ---
1709
+
1710
+ ##### `region`<sup>Required</sup> <a name="region" id="projen-pipelines.CodeArtifactLoginStepOptions.property.region"></a>
1711
+
1712
+ ```typescript
1713
+ public readonly region: string;
1714
+ ```
1715
+
1716
+ - *Type:* string
1717
+
1718
+ ---
1719
+
1720
+ ##### `role`<sup>Required</sup> <a name="role" id="projen-pipelines.CodeArtifactLoginStepOptions.property.role"></a>
1721
+
1722
+ ```typescript
1723
+ public readonly role: string;
1724
+ ```
1725
+
1726
+ - *Type:* string
1727
+
1728
+ ---
1729
+
1643
1730
  ### CodeCatalystCDKPipelineOptions <a name="CodeCatalystCDKPipelineOptions" id="projen-pipelines.CodeCatalystCDKPipelineOptions"></a>
1644
1731
 
1645
1732
  #### Initializer <a name="Initializer" id="projen-pipelines.CodeCatalystCDKPipelineOptions.Initializer"></a>
@@ -1654,6 +1741,7 @@ const codeCatalystCDKPipelineOptions: CodeCatalystCDKPipelineOptions = { ... }
1654
1741
 
1655
1742
  | **Name** | **Type** | **Description** |
1656
1743
  | --- | --- | --- |
1744
+ | <code><a href="#projen-pipelines.CodeCatalystCDKPipelineOptions.property.iamRoleArns">iamRoleArns</a></code> | <code><a href="#projen-pipelines.IamRoleConfig">IamRoleConfig</a></code> | IAM config. |
1657
1745
  | <code><a href="#projen-pipelines.CodeCatalystCDKPipelineOptions.property.pkgNamespace">pkgNamespace</a></code> | <code>string</code> | This field determines the NPM namespace to be used when packaging CDK cloud assemblies. |
1658
1746
  | <code><a href="#projen-pipelines.CodeCatalystCDKPipelineOptions.property.stages">stages</a></code> | <code><a href="#projen-pipelines.DeploymentStage">DeploymentStage</a>[]</code> | This field specifies a list of stages that should be deployed using a CI/CD pipeline. |
1659
1747
  | <code><a href="#projen-pipelines.CodeCatalystCDKPipelineOptions.property.branchName">branchName</a></code> | <code>string</code> | the name of the branch to deploy from. |
@@ -1668,7 +1756,18 @@ const codeCatalystCDKPipelineOptions: CodeCatalystCDKPipelineOptions = { ... }
1668
1756
  | <code><a href="#projen-pipelines.CodeCatalystCDKPipelineOptions.property.preSynthCommands">preSynthCommands</a></code> | <code>string[]</code> | *No description.* |
1669
1757
  | <code><a href="#projen-pipelines.CodeCatalystCDKPipelineOptions.property.preSynthSteps">preSynthSteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | *No description.* |
1670
1758
  | <code><a href="#projen-pipelines.CodeCatalystCDKPipelineOptions.property.stackPrefix">stackPrefix</a></code> | <code>string</code> | This field is used to define a prefix for the AWS Stack resources created during the pipeline's operation. |
1671
- | <code><a href="#projen-pipelines.CodeCatalystCDKPipelineOptions.property.iamRoleArns">iamRoleArns</a></code> | <code><a href="#projen-pipelines.CodeCatalystIamRoleConfig">CodeCatalystIamRoleConfig</a></code> | *No description.* |
1759
+
1760
+ ---
1761
+
1762
+ ##### `iamRoleArns`<sup>Required</sup> <a name="iamRoleArns" id="projen-pipelines.CodeCatalystCDKPipelineOptions.property.iamRoleArns"></a>
1763
+
1764
+ ```typescript
1765
+ public readonly iamRoleArns: IamRoleConfig;
1766
+ ```
1767
+
1768
+ - *Type:* <a href="#projen-pipelines.IamRoleConfig">IamRoleConfig</a>
1769
+
1770
+ IAM config.
1672
1771
 
1673
1772
  ---
1674
1773
 
@@ -1836,98 +1935,6 @@ This field is used to define a prefix for the AWS Stack resources created during
1836
1935
 
1837
1936
  ---
1838
1937
 
1839
- ##### `iamRoleArns`<sup>Required</sup> <a name="iamRoleArns" id="projen-pipelines.CodeCatalystCDKPipelineOptions.property.iamRoleArns"></a>
1840
-
1841
- ```typescript
1842
- public readonly iamRoleArns: CodeCatalystIamRoleConfig;
1843
- ```
1844
-
1845
- - *Type:* <a href="#projen-pipelines.CodeCatalystIamRoleConfig">CodeCatalystIamRoleConfig</a>
1846
-
1847
- ---
1848
-
1849
- ### CodeCatalystIamRoleConfig <a name="CodeCatalystIamRoleConfig" id="projen-pipelines.CodeCatalystIamRoleConfig"></a>
1850
-
1851
- #### Initializer <a name="Initializer" id="projen-pipelines.CodeCatalystIamRoleConfig.Initializer"></a>
1852
-
1853
- ```typescript
1854
- import { CodeCatalystIamRoleConfig } from 'projen-pipelines'
1855
-
1856
- const codeCatalystIamRoleConfig: CodeCatalystIamRoleConfig = { ... }
1857
- ```
1858
-
1859
- #### Properties <a name="Properties" id="Properties"></a>
1860
-
1861
- | **Name** | **Type** | **Description** |
1862
- | --- | --- | --- |
1863
- | <code><a href="#projen-pipelines.CodeCatalystIamRoleConfig.property.assetPublishing">assetPublishing</a></code> | <code>string</code> | IAM role ARN for the asset publishing step. |
1864
- | <code><a href="#projen-pipelines.CodeCatalystIamRoleConfig.property.assetPublishingPerStage">assetPublishingPerStage</a></code> | <code>{[ key: string ]: string}</code> | IAM role ARN for the asset publishing step for a specific stage. |
1865
- | <code><a href="#projen-pipelines.CodeCatalystIamRoleConfig.property.default">default</a></code> | <code>string</code> | Default IAM role ARN used if no specific role is provided. |
1866
- | <code><a href="#projen-pipelines.CodeCatalystIamRoleConfig.property.deployment">deployment</a></code> | <code>{[ key: string ]: string}</code> | IAM role ARNs for different deployment stages. |
1867
- | <code><a href="#projen-pipelines.CodeCatalystIamRoleConfig.property.synth">synth</a></code> | <code>string</code> | IAM role ARN for the synthesis step. |
1868
-
1869
- ---
1870
-
1871
- ##### `assetPublishing`<sup>Optional</sup> <a name="assetPublishing" id="projen-pipelines.CodeCatalystIamRoleConfig.property.assetPublishing"></a>
1872
-
1873
- ```typescript
1874
- public readonly assetPublishing: string;
1875
- ```
1876
-
1877
- - *Type:* string
1878
-
1879
- IAM role ARN for the asset publishing step.
1880
-
1881
- ---
1882
-
1883
- ##### `assetPublishingPerStage`<sup>Optional</sup> <a name="assetPublishingPerStage" id="projen-pipelines.CodeCatalystIamRoleConfig.property.assetPublishingPerStage"></a>
1884
-
1885
- ```typescript
1886
- public readonly assetPublishingPerStage: {[ key: string ]: string};
1887
- ```
1888
-
1889
- - *Type:* {[ key: string ]: string}
1890
-
1891
- IAM role ARN for the asset publishing step for a specific stage.
1892
-
1893
- ---
1894
-
1895
- ##### `default`<sup>Optional</sup> <a name="default" id="projen-pipelines.CodeCatalystIamRoleConfig.property.default"></a>
1896
-
1897
- ```typescript
1898
- public readonly default: string;
1899
- ```
1900
-
1901
- - *Type:* string
1902
-
1903
- Default IAM role ARN used if no specific role is provided.
1904
-
1905
- ---
1906
-
1907
- ##### `deployment`<sup>Optional</sup> <a name="deployment" id="projen-pipelines.CodeCatalystIamRoleConfig.property.deployment"></a>
1908
-
1909
- ```typescript
1910
- public readonly deployment: {[ key: string ]: string};
1911
- ```
1912
-
1913
- - *Type:* {[ key: string ]: string}
1914
-
1915
- IAM role ARNs for different deployment stages.
1916
-
1917
- ---
1918
-
1919
- ##### `synth`<sup>Optional</sup> <a name="synth" id="projen-pipelines.CodeCatalystIamRoleConfig.property.synth"></a>
1920
-
1921
- ```typescript
1922
- public readonly synth: string;
1923
- ```
1924
-
1925
- - *Type:* string
1926
-
1927
- IAM role ARN for the synthesis step.
1928
-
1929
- ---
1930
-
1931
1938
  ### CodeCatalystStepConfig <a name="CodeCatalystStepConfig" id="projen-pipelines.CodeCatalystStepConfig"></a>
1932
1939
 
1933
1940
  Configuration interface for a CodeCatalyst Actions step.
@@ -2004,6 +2011,8 @@ const deploymentStage: DeploymentStage = { ... }
2004
2011
  | --- | --- | --- |
2005
2012
  | <code><a href="#projen-pipelines.DeploymentStage.property.env">env</a></code> | <code><a href="#projen-pipelines.Environment">Environment</a></code> | *No description.* |
2006
2013
  | <code><a href="#projen-pipelines.DeploymentStage.property.name">name</a></code> | <code>string</code> | *No description.* |
2014
+ | <code><a href="#projen-pipelines.DeploymentStage.property.postDeploySteps">postDeploySteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | *No description.* |
2015
+ | <code><a href="#projen-pipelines.DeploymentStage.property.postDiffSteps">postDiffSteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | *No description.* |
2007
2016
  | <code><a href="#projen-pipelines.DeploymentStage.property.watchable">watchable</a></code> | <code>boolean</code> | *No description.* |
2008
2017
  | <code><a href="#projen-pipelines.DeploymentStage.property.manualApproval">manualApproval</a></code> | <code>boolean</code> | *No description.* |
2009
2018
 
@@ -2029,6 +2038,26 @@ public readonly name: string;
2029
2038
 
2030
2039
  ---
2031
2040
 
2041
+ ##### `postDeploySteps`<sup>Optional</sup> <a name="postDeploySteps" id="projen-pipelines.DeploymentStage.property.postDeploySteps"></a>
2042
+
2043
+ ```typescript
2044
+ public readonly postDeploySteps: PipelineStep[];
2045
+ ```
2046
+
2047
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
2048
+
2049
+ ---
2050
+
2051
+ ##### `postDiffSteps`<sup>Optional</sup> <a name="postDiffSteps" id="projen-pipelines.DeploymentStage.property.postDiffSteps"></a>
2052
+
2053
+ ```typescript
2054
+ public readonly postDiffSteps: PipelineStep[];
2055
+ ```
2056
+
2057
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
2058
+
2059
+ ---
2060
+
2032
2061
  ##### `watchable`<sup>Optional</sup> <a name="watchable" id="projen-pipelines.DeploymentStage.property.watchable"></a>
2033
2062
 
2034
2063
  ```typescript
@@ -2159,6 +2188,7 @@ const githubCDKPipelineOptions: GithubCDKPipelineOptions = { ... }
2159
2188
 
2160
2189
  | **Name** | **Type** | **Description** |
2161
2190
  | --- | --- | --- |
2191
+ | <code><a href="#projen-pipelines.GithubCDKPipelineOptions.property.iamRoleArns">iamRoleArns</a></code> | <code><a href="#projen-pipelines.IamRoleConfig">IamRoleConfig</a></code> | IAM config. |
2162
2192
  | <code><a href="#projen-pipelines.GithubCDKPipelineOptions.property.pkgNamespace">pkgNamespace</a></code> | <code>string</code> | This field determines the NPM namespace to be used when packaging CDK cloud assemblies. |
2163
2193
  | <code><a href="#projen-pipelines.GithubCDKPipelineOptions.property.stages">stages</a></code> | <code><a href="#projen-pipelines.DeploymentStage">DeploymentStage</a>[]</code> | This field specifies a list of stages that should be deployed using a CI/CD pipeline. |
2164
2194
  | <code><a href="#projen-pipelines.GithubCDKPipelineOptions.property.branchName">branchName</a></code> | <code>string</code> | the name of the branch to deploy from. |
@@ -2173,13 +2203,24 @@ const githubCDKPipelineOptions: GithubCDKPipelineOptions = { ... }
2173
2203
  | <code><a href="#projen-pipelines.GithubCDKPipelineOptions.property.preSynthCommands">preSynthCommands</a></code> | <code>string[]</code> | *No description.* |
2174
2204
  | <code><a href="#projen-pipelines.GithubCDKPipelineOptions.property.preSynthSteps">preSynthSteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | *No description.* |
2175
2205
  | <code><a href="#projen-pipelines.GithubCDKPipelineOptions.property.stackPrefix">stackPrefix</a></code> | <code>string</code> | This field is used to define a prefix for the AWS Stack resources created during the pipeline's operation. |
2176
- | <code><a href="#projen-pipelines.GithubCDKPipelineOptions.property.iamRoleArns">iamRoleArns</a></code> | <code><a href="#projen-pipelines.GithubIamRoleConfig">GithubIamRoleConfig</a></code> | IAM config for GitHub Actions. |
2177
2206
  | <code><a href="#projen-pipelines.GithubCDKPipelineOptions.property.runnerTags">runnerTags</a></code> | <code>string[]</code> | runner tags to use to select runners. |
2178
2207
  | <code><a href="#projen-pipelines.GithubCDKPipelineOptions.property.useGithubEnvironments">useGithubEnvironments</a></code> | <code>boolean</code> | whether to use GitHub environments for deployment stages. |
2179
2208
  | <code><a href="#projen-pipelines.GithubCDKPipelineOptions.property.useGithubPackagesForAssembly">useGithubPackagesForAssembly</a></code> | <code>boolean</code> | use GitHub Packages to store vesioned artifacts of cloud assembly; |
2180
2209
 
2181
2210
  ---
2182
2211
 
2212
+ ##### `iamRoleArns`<sup>Required</sup> <a name="iamRoleArns" id="projen-pipelines.GithubCDKPipelineOptions.property.iamRoleArns"></a>
2213
+
2214
+ ```typescript
2215
+ public readonly iamRoleArns: IamRoleConfig;
2216
+ ```
2217
+
2218
+ - *Type:* <a href="#projen-pipelines.IamRoleConfig">IamRoleConfig</a>
2219
+
2220
+ IAM config.
2221
+
2222
+ ---
2223
+
2183
2224
  ##### `pkgNamespace`<sup>Required</sup> <a name="pkgNamespace" id="projen-pipelines.GithubCDKPipelineOptions.property.pkgNamespace"></a>
2184
2225
 
2185
2226
  ```typescript
@@ -2344,18 +2385,6 @@ This field is used to define a prefix for the AWS Stack resources created during
2344
2385
 
2345
2386
  ---
2346
2387
 
2347
- ##### `iamRoleArns`<sup>Required</sup> <a name="iamRoleArns" id="projen-pipelines.GithubCDKPipelineOptions.property.iamRoleArns"></a>
2348
-
2349
- ```typescript
2350
- public readonly iamRoleArns: GithubIamRoleConfig;
2351
- ```
2352
-
2353
- - *Type:* <a href="#projen-pipelines.GithubIamRoleConfig">GithubIamRoleConfig</a>
2354
-
2355
- IAM config for GitHub Actions.
2356
-
2357
- ---
2358
-
2359
2388
  ##### `runnerTags`<sup>Optional</sup> <a name="runnerTags" id="projen-pipelines.GithubCDKPipelineOptions.property.runnerTags"></a>
2360
2389
 
2361
2390
  ```typescript
@@ -2398,90 +2427,6 @@ also needed for manual approvals
2398
2427
 
2399
2428
  ---
2400
2429
 
2401
- ### GithubIamRoleConfig <a name="GithubIamRoleConfig" id="projen-pipelines.GithubIamRoleConfig"></a>
2402
-
2403
- Configuration interface for GitHub-specific IAM roles used in the CDK pipeline.
2404
-
2405
- #### Initializer <a name="Initializer" id="projen-pipelines.GithubIamRoleConfig.Initializer"></a>
2406
-
2407
- ```typescript
2408
- import { GithubIamRoleConfig } from 'projen-pipelines'
2409
-
2410
- const githubIamRoleConfig: GithubIamRoleConfig = { ... }
2411
- ```
2412
-
2413
- #### Properties <a name="Properties" id="Properties"></a>
2414
-
2415
- | **Name** | **Type** | **Description** |
2416
- | --- | --- | --- |
2417
- | <code><a href="#projen-pipelines.GithubIamRoleConfig.property.assetPublishing">assetPublishing</a></code> | <code>string</code> | IAM role ARN for the asset publishing step. |
2418
- | <code><a href="#projen-pipelines.GithubIamRoleConfig.property.assetPublishingPerStage">assetPublishingPerStage</a></code> | <code>{[ key: string ]: string}</code> | IAM role ARN for the asset publishing step for a specific stage. |
2419
- | <code><a href="#projen-pipelines.GithubIamRoleConfig.property.default">default</a></code> | <code>string</code> | Default IAM role ARN used if no specific role is provided. |
2420
- | <code><a href="#projen-pipelines.GithubIamRoleConfig.property.deployment">deployment</a></code> | <code>{[ key: string ]: string}</code> | IAM role ARNs for different deployment stages. |
2421
- | <code><a href="#projen-pipelines.GithubIamRoleConfig.property.synth">synth</a></code> | <code>string</code> | IAM role ARN for the synthesis step. |
2422
-
2423
- ---
2424
-
2425
- ##### `assetPublishing`<sup>Optional</sup> <a name="assetPublishing" id="projen-pipelines.GithubIamRoleConfig.property.assetPublishing"></a>
2426
-
2427
- ```typescript
2428
- public readonly assetPublishing: string;
2429
- ```
2430
-
2431
- - *Type:* string
2432
-
2433
- IAM role ARN for the asset publishing step.
2434
-
2435
- ---
2436
-
2437
- ##### `assetPublishingPerStage`<sup>Optional</sup> <a name="assetPublishingPerStage" id="projen-pipelines.GithubIamRoleConfig.property.assetPublishingPerStage"></a>
2438
-
2439
- ```typescript
2440
- public readonly assetPublishingPerStage: {[ key: string ]: string};
2441
- ```
2442
-
2443
- - *Type:* {[ key: string ]: string}
2444
-
2445
- IAM role ARN for the asset publishing step for a specific stage.
2446
-
2447
- ---
2448
-
2449
- ##### `default`<sup>Optional</sup> <a name="default" id="projen-pipelines.GithubIamRoleConfig.property.default"></a>
2450
-
2451
- ```typescript
2452
- public readonly default: string;
2453
- ```
2454
-
2455
- - *Type:* string
2456
-
2457
- Default IAM role ARN used if no specific role is provided.
2458
-
2459
- ---
2460
-
2461
- ##### `deployment`<sup>Optional</sup> <a name="deployment" id="projen-pipelines.GithubIamRoleConfig.property.deployment"></a>
2462
-
2463
- ```typescript
2464
- public readonly deployment: {[ key: string ]: string};
2465
- ```
2466
-
2467
- - *Type:* {[ key: string ]: string}
2468
-
2469
- IAM role ARNs for different deployment stages.
2470
-
2471
- ---
2472
-
2473
- ##### `synth`<sup>Optional</sup> <a name="synth" id="projen-pipelines.GithubIamRoleConfig.property.synth"></a>
2474
-
2475
- ```typescript
2476
- public readonly synth: string;
2477
- ```
2478
-
2479
- - *Type:* string
2480
-
2481
- IAM role ARN for the synthesis step.
2482
-
2483
- ---
2484
-
2485
2430
  ### GithubPackagesLoginStepOptions <a name="GithubPackagesLoginStepOptions" id="projen-pipelines.GithubPackagesLoginStepOptions"></a>
2486
2431
 
2487
2432
  #### Initializer <a name="Initializer" id="projen-pipelines.GithubPackagesLoginStepOptions.Initializer"></a>
@@ -2600,6 +2545,7 @@ const gitlabCDKPipelineOptions: GitlabCDKPipelineOptions = { ... }
2600
2545
 
2601
2546
  | **Name** | **Type** | **Description** |
2602
2547
  | --- | --- | --- |
2548
+ | <code><a href="#projen-pipelines.GitlabCDKPipelineOptions.property.iamRoleArns">iamRoleArns</a></code> | <code><a href="#projen-pipelines.IamRoleConfig">IamRoleConfig</a></code> | IAM config. |
2603
2549
  | <code><a href="#projen-pipelines.GitlabCDKPipelineOptions.property.pkgNamespace">pkgNamespace</a></code> | <code>string</code> | This field determines the NPM namespace to be used when packaging CDK cloud assemblies. |
2604
2550
  | <code><a href="#projen-pipelines.GitlabCDKPipelineOptions.property.stages">stages</a></code> | <code><a href="#projen-pipelines.DeploymentStage">DeploymentStage</a>[]</code> | This field specifies a list of stages that should be deployed using a CI/CD pipeline. |
2605
2551
  | <code><a href="#projen-pipelines.GitlabCDKPipelineOptions.property.branchName">branchName</a></code> | <code>string</code> | the name of the branch to deploy from. |
@@ -2614,19 +2560,30 @@ const gitlabCDKPipelineOptions: GitlabCDKPipelineOptions = { ... }
2614
2560
  | <code><a href="#projen-pipelines.GitlabCDKPipelineOptions.property.preSynthCommands">preSynthCommands</a></code> | <code>string[]</code> | *No description.* |
2615
2561
  | <code><a href="#projen-pipelines.GitlabCDKPipelineOptions.property.preSynthSteps">preSynthSteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | *No description.* |
2616
2562
  | <code><a href="#projen-pipelines.GitlabCDKPipelineOptions.property.stackPrefix">stackPrefix</a></code> | <code>string</code> | This field is used to define a prefix for the AWS Stack resources created during the pipeline's operation. |
2617
- | <code><a href="#projen-pipelines.GitlabCDKPipelineOptions.property.iamRoleArns">iamRoleArns</a></code> | <code><a href="#projen-pipelines.GitlabIamRoleConfig">GitlabIamRoleConfig</a></code> | IAM role ARNs configuration for the pipeline. |
2618
2563
  | <code><a href="#projen-pipelines.GitlabCDKPipelineOptions.property.image">image</a></code> | <code>string</code> | The Docker image to use for running the pipeline jobs. |
2619
2564
  | <code><a href="#projen-pipelines.GitlabCDKPipelineOptions.property.runnerTags">runnerTags</a></code> | <code><a href="#projen-pipelines.GitlabRunnerTags">GitlabRunnerTags</a></code> | Runner tags configuration for the pipeline. |
2620
2565
 
2621
2566
  ---
2622
2567
 
2623
- ##### `pkgNamespace`<sup>Required</sup> <a name="pkgNamespace" id="projen-pipelines.GitlabCDKPipelineOptions.property.pkgNamespace"></a>
2568
+ ##### `iamRoleArns`<sup>Required</sup> <a name="iamRoleArns" id="projen-pipelines.GitlabCDKPipelineOptions.property.iamRoleArns"></a>
2624
2569
 
2625
2570
  ```typescript
2626
- public readonly pkgNamespace: string;
2571
+ public readonly iamRoleArns: IamRoleConfig;
2627
2572
  ```
2628
2573
 
2629
- - *Type:* string
2574
+ - *Type:* <a href="#projen-pipelines.IamRoleConfig">IamRoleConfig</a>
2575
+
2576
+ IAM config.
2577
+
2578
+ ---
2579
+
2580
+ ##### `pkgNamespace`<sup>Required</sup> <a name="pkgNamespace" id="projen-pipelines.GitlabCDKPipelineOptions.property.pkgNamespace"></a>
2581
+
2582
+ ```typescript
2583
+ public readonly pkgNamespace: string;
2584
+ ```
2585
+
2586
+ - *Type:* string
2630
2587
 
2631
2588
  This field determines the NPM namespace to be used when packaging CDK cloud assemblies.
2632
2589
 
@@ -2784,18 +2741,6 @@ This field is used to define a prefix for the AWS Stack resources created during
2784
2741
 
2785
2742
  ---
2786
2743
 
2787
- ##### `iamRoleArns`<sup>Required</sup> <a name="iamRoleArns" id="projen-pipelines.GitlabCDKPipelineOptions.property.iamRoleArns"></a>
2788
-
2789
- ```typescript
2790
- public readonly iamRoleArns: GitlabIamRoleConfig;
2791
- ```
2792
-
2793
- - *Type:* <a href="#projen-pipelines.GitlabIamRoleConfig">GitlabIamRoleConfig</a>
2794
-
2795
- IAM role ARNs configuration for the pipeline.
2796
-
2797
- ---
2798
-
2799
2744
  ##### `image`<sup>Optional</sup> <a name="image" id="projen-pipelines.GitlabCDKPipelineOptions.property.image"></a>
2800
2745
 
2801
2746
  ```typescript
@@ -2820,106 +2765,6 @@ Runner tags configuration for the pipeline.
2820
2765
 
2821
2766
  ---
2822
2767
 
2823
- ### GitlabIamRoleConfig <a name="GitlabIamRoleConfig" id="projen-pipelines.GitlabIamRoleConfig"></a>
2824
-
2825
- Configuration for IAM roles used within the GitLab CI/CD pipeline for various stages.
2826
-
2827
- Allows specifying different IAM roles for synthesis, asset publishing, and deployment stages,
2828
- providing granular control over permissions.
2829
-
2830
- #### Initializer <a name="Initializer" id="projen-pipelines.GitlabIamRoleConfig.Initializer"></a>
2831
-
2832
- ```typescript
2833
- import { GitlabIamRoleConfig } from 'projen-pipelines'
2834
-
2835
- const gitlabIamRoleConfig: GitlabIamRoleConfig = { ... }
2836
- ```
2837
-
2838
- #### Properties <a name="Properties" id="Properties"></a>
2839
-
2840
- | **Name** | **Type** | **Description** |
2841
- | --- | --- | --- |
2842
- | <code><a href="#projen-pipelines.GitlabIamRoleConfig.property.assetPublishing">assetPublishing</a></code> | <code>string</code> | IAM role ARN for the asset publishing step. |
2843
- | <code><a href="#projen-pipelines.GitlabIamRoleConfig.property.assetPublishingPerStage">assetPublishingPerStage</a></code> | <code>{[ key: string ]: string}</code> | IAM role ARN for the asset publishing step for a specific stage. |
2844
- | <code><a href="#projen-pipelines.GitlabIamRoleConfig.property.default">default</a></code> | <code>string</code> | Default IAM role ARN used if specific stage role is not provided. |
2845
- | <code><a href="#projen-pipelines.GitlabIamRoleConfig.property.deployment">deployment</a></code> | <code>{[ key: string ]: string}</code> | A map of stage names to IAM role ARNs for the deployment operation. |
2846
- | <code><a href="#projen-pipelines.GitlabIamRoleConfig.property.diff">diff</a></code> | <code>{[ key: string ]: string}</code> | A map of stage names to IAM role ARNs for the diff operation. |
2847
- | <code><a href="#projen-pipelines.GitlabIamRoleConfig.property.synth">synth</a></code> | <code>string</code> | IAM role ARN for the synthesis stage. |
2848
-
2849
- ---
2850
-
2851
- ##### `assetPublishing`<sup>Optional</sup> <a name="assetPublishing" id="projen-pipelines.GitlabIamRoleConfig.property.assetPublishing"></a>
2852
-
2853
- ```typescript
2854
- public readonly assetPublishing: string;
2855
- ```
2856
-
2857
- - *Type:* string
2858
-
2859
- IAM role ARN for the asset publishing step.
2860
-
2861
- ---
2862
-
2863
- ##### `assetPublishingPerStage`<sup>Optional</sup> <a name="assetPublishingPerStage" id="projen-pipelines.GitlabIamRoleConfig.property.assetPublishingPerStage"></a>
2864
-
2865
- ```typescript
2866
- public readonly assetPublishingPerStage: {[ key: string ]: string};
2867
- ```
2868
-
2869
- - *Type:* {[ key: string ]: string}
2870
-
2871
- IAM role ARN for the asset publishing step for a specific stage.
2872
-
2873
- ---
2874
-
2875
- ##### `default`<sup>Optional</sup> <a name="default" id="projen-pipelines.GitlabIamRoleConfig.property.default"></a>
2876
-
2877
- ```typescript
2878
- public readonly default: string;
2879
- ```
2880
-
2881
- - *Type:* string
2882
-
2883
- Default IAM role ARN used if specific stage role is not provided.
2884
-
2885
- ---
2886
-
2887
- ##### `deployment`<sup>Optional</sup> <a name="deployment" id="projen-pipelines.GitlabIamRoleConfig.property.deployment"></a>
2888
-
2889
- ```typescript
2890
- public readonly deployment: {[ key: string ]: string};
2891
- ```
2892
-
2893
- - *Type:* {[ key: string ]: string}
2894
-
2895
- A map of stage names to IAM role ARNs for the deployment operation.
2896
-
2897
- ---
2898
-
2899
- ##### `diff`<sup>Optional</sup> <a name="diff" id="projen-pipelines.GitlabIamRoleConfig.property.diff"></a>
2900
-
2901
- ```typescript
2902
- public readonly diff: {[ key: string ]: string};
2903
- ```
2904
-
2905
- - *Type:* {[ key: string ]: string}
2906
-
2907
- A map of stage names to IAM role ARNs for the diff operation.
2908
-
2909
- ---
2910
-
2911
- ##### `synth`<sup>Optional</sup> <a name="synth" id="projen-pipelines.GitlabIamRoleConfig.property.synth"></a>
2912
-
2913
- ```typescript
2914
- public readonly synth: string;
2915
- ```
2916
-
2917
- - *Type:* string
2918
-
2919
- IAM role ARN for the synthesis stage.
2920
-
2921
- ---
2922
-
2923
2768
  ### GitlabRunnerTags <a name="GitlabRunnerTags" id="projen-pipelines.GitlabRunnerTags"></a>
2924
2769
 
2925
2770
  Configuration for GitLab runner tags used within the CI/CD pipeline for various stages.
@@ -3077,6 +2922,103 @@ Dependencies which need to be completed before this step.
3077
2922
 
3078
2923
  ---
3079
2924
 
2925
+ ### IamRoleConfig <a name="IamRoleConfig" id="projen-pipelines.IamRoleConfig"></a>
2926
+
2927
+ Configuration interface for IAM roles used in the CDK pipeline.
2928
+
2929
+ #### Initializer <a name="Initializer" id="projen-pipelines.IamRoleConfig.Initializer"></a>
2930
+
2931
+ ```typescript
2932
+ import { IamRoleConfig } from 'projen-pipelines'
2933
+
2934
+ const iamRoleConfig: IamRoleConfig = { ... }
2935
+ ```
2936
+
2937
+ #### Properties <a name="Properties" id="Properties"></a>
2938
+
2939
+ | **Name** | **Type** | **Description** |
2940
+ | --- | --- | --- |
2941
+ | <code><a href="#projen-pipelines.IamRoleConfig.property.assetPublishing">assetPublishing</a></code> | <code>string</code> | IAM role ARN for the asset publishing step. |
2942
+ | <code><a href="#projen-pipelines.IamRoleConfig.property.assetPublishingPerStage">assetPublishingPerStage</a></code> | <code>{[ key: string ]: string}</code> | IAM role ARN for the asset publishing step for a specific stage. |
2943
+ | <code><a href="#projen-pipelines.IamRoleConfig.property.default">default</a></code> | <code>string</code> | Default IAM role ARN used if no specific role is provided. |
2944
+ | <code><a href="#projen-pipelines.IamRoleConfig.property.deployment">deployment</a></code> | <code>{[ key: string ]: string}</code> | IAM role ARNs for different deployment stages. |
2945
+ | <code><a href="#projen-pipelines.IamRoleConfig.property.diff">diff</a></code> | <code>{[ key: string ]: string}</code> | IAM role ARNs for different diff stages. |
2946
+ | <code><a href="#projen-pipelines.IamRoleConfig.property.synth">synth</a></code> | <code>string</code> | IAM role ARN for the synthesis step. |
2947
+
2948
+ ---
2949
+
2950
+ ##### `assetPublishing`<sup>Optional</sup> <a name="assetPublishing" id="projen-pipelines.IamRoleConfig.property.assetPublishing"></a>
2951
+
2952
+ ```typescript
2953
+ public readonly assetPublishing: string;
2954
+ ```
2955
+
2956
+ - *Type:* string
2957
+
2958
+ IAM role ARN for the asset publishing step.
2959
+
2960
+ ---
2961
+
2962
+ ##### `assetPublishingPerStage`<sup>Optional</sup> <a name="assetPublishingPerStage" id="projen-pipelines.IamRoleConfig.property.assetPublishingPerStage"></a>
2963
+
2964
+ ```typescript
2965
+ public readonly assetPublishingPerStage: {[ key: string ]: string};
2966
+ ```
2967
+
2968
+ - *Type:* {[ key: string ]: string}
2969
+
2970
+ IAM role ARN for the asset publishing step for a specific stage.
2971
+
2972
+ ---
2973
+
2974
+ ##### `default`<sup>Optional</sup> <a name="default" id="projen-pipelines.IamRoleConfig.property.default"></a>
2975
+
2976
+ ```typescript
2977
+ public readonly default: string;
2978
+ ```
2979
+
2980
+ - *Type:* string
2981
+
2982
+ Default IAM role ARN used if no specific role is provided.
2983
+
2984
+ ---
2985
+
2986
+ ##### `deployment`<sup>Optional</sup> <a name="deployment" id="projen-pipelines.IamRoleConfig.property.deployment"></a>
2987
+
2988
+ ```typescript
2989
+ public readonly deployment: {[ key: string ]: string};
2990
+ ```
2991
+
2992
+ - *Type:* {[ key: string ]: string}
2993
+
2994
+ IAM role ARNs for different deployment stages.
2995
+
2996
+ ---
2997
+
2998
+ ##### `diff`<sup>Optional</sup> <a name="diff" id="projen-pipelines.IamRoleConfig.property.diff"></a>
2999
+
3000
+ ```typescript
3001
+ public readonly diff: {[ key: string ]: string};
3002
+ ```
3003
+
3004
+ - *Type:* {[ key: string ]: string}
3005
+
3006
+ IAM role ARNs for different diff stages.
3007
+
3008
+ ---
3009
+
3010
+ ##### `synth`<sup>Optional</sup> <a name="synth" id="projen-pipelines.IamRoleConfig.property.synth"></a>
3011
+
3012
+ ```typescript
3013
+ public readonly synth: string;
3014
+ ```
3015
+
3016
+ - *Type:* string
3017
+
3018
+ IAM role ARN for the synthesis step.
3019
+
3020
+ ---
3021
+
3080
3022
  ### IndependentStage <a name="IndependentStage" id="projen-pipelines.IndependentStage"></a>
3081
3023
 
3082
3024
  Options for stages that are not part of the pipeline.
@@ -3095,10 +3037,10 @@ const independentStage: IndependentStage = { ... }
3095
3037
  | --- | --- | --- |
3096
3038
  | <code><a href="#projen-pipelines.IndependentStage.property.env">env</a></code> | <code><a href="#projen-pipelines.Environment">Environment</a></code> | *No description.* |
3097
3039
  | <code><a href="#projen-pipelines.IndependentStage.property.name">name</a></code> | <code>string</code> | *No description.* |
3098
- | <code><a href="#projen-pipelines.IndependentStage.property.watchable">watchable</a></code> | <code>boolean</code> | *No description.* |
3099
- | <code><a href="#projen-pipelines.IndependentStage.property.deployOnPush">deployOnPush</a></code> | <code>boolean</code> | This specifies whether the stage should be deployed on push. |
3100
3040
  | <code><a href="#projen-pipelines.IndependentStage.property.postDeploySteps">postDeploySteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | *No description.* |
3101
3041
  | <code><a href="#projen-pipelines.IndependentStage.property.postDiffSteps">postDiffSteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | *No description.* |
3042
+ | <code><a href="#projen-pipelines.IndependentStage.property.watchable">watchable</a></code> | <code>boolean</code> | *No description.* |
3043
+ | <code><a href="#projen-pipelines.IndependentStage.property.deployOnPush">deployOnPush</a></code> | <code>boolean</code> | This specifies whether the stage should be deployed on push. |
3102
3044
 
3103
3045
  ---
3104
3046
 
@@ -3122,46 +3064,46 @@ public readonly name: string;
3122
3064
 
3123
3065
  ---
3124
3066
 
3125
- ##### `watchable`<sup>Optional</sup> <a name="watchable" id="projen-pipelines.IndependentStage.property.watchable"></a>
3067
+ ##### `postDeploySteps`<sup>Optional</sup> <a name="postDeploySteps" id="projen-pipelines.IndependentStage.property.postDeploySteps"></a>
3126
3068
 
3127
3069
  ```typescript
3128
- public readonly watchable: boolean;
3070
+ public readonly postDeploySteps: PipelineStep[];
3129
3071
  ```
3130
3072
 
3131
- - *Type:* boolean
3073
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
3132
3074
 
3133
3075
  ---
3134
3076
 
3135
- ##### `deployOnPush`<sup>Optional</sup> <a name="deployOnPush" id="projen-pipelines.IndependentStage.property.deployOnPush"></a>
3077
+ ##### `postDiffSteps`<sup>Optional</sup> <a name="postDiffSteps" id="projen-pipelines.IndependentStage.property.postDiffSteps"></a>
3136
3078
 
3137
3079
  ```typescript
3138
- public readonly deployOnPush: boolean;
3080
+ public readonly postDiffSteps: PipelineStep[];
3139
3081
  ```
3140
3082
 
3141
- - *Type:* boolean
3142
- - *Default:* false
3143
-
3144
- This specifies whether the stage should be deployed on push.
3083
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
3145
3084
 
3146
3085
  ---
3147
3086
 
3148
- ##### `postDeploySteps`<sup>Optional</sup> <a name="postDeploySteps" id="projen-pipelines.IndependentStage.property.postDeploySteps"></a>
3087
+ ##### `watchable`<sup>Optional</sup> <a name="watchable" id="projen-pipelines.IndependentStage.property.watchable"></a>
3149
3088
 
3150
3089
  ```typescript
3151
- public readonly postDeploySteps: PipelineStep[];
3090
+ public readonly watchable: boolean;
3152
3091
  ```
3153
3092
 
3154
- - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
3093
+ - *Type:* boolean
3155
3094
 
3156
3095
  ---
3157
3096
 
3158
- ##### `postDiffSteps`<sup>Optional</sup> <a name="postDiffSteps" id="projen-pipelines.IndependentStage.property.postDiffSteps"></a>
3097
+ ##### `deployOnPush`<sup>Optional</sup> <a name="deployOnPush" id="projen-pipelines.IndependentStage.property.deployOnPush"></a>
3159
3098
 
3160
3099
  ```typescript
3161
- public readonly postDiffSteps: PipelineStep[];
3100
+ public readonly deployOnPush: boolean;
3162
3101
  ```
3163
3102
 
3164
- - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
3103
+ - *Type:* boolean
3104
+ - *Default:* false
3105
+
3106
+ This specifies whether the stage should be deployed on push.
3165
3107
 
3166
3108
  ---
3167
3109
 
@@ -3183,6 +3125,8 @@ const namedStageOptions: NamedStageOptions = { ... }
3183
3125
  | --- | --- | --- |
3184
3126
  | <code><a href="#projen-pipelines.NamedStageOptions.property.env">env</a></code> | <code><a href="#projen-pipelines.Environment">Environment</a></code> | *No description.* |
3185
3127
  | <code><a href="#projen-pipelines.NamedStageOptions.property.name">name</a></code> | <code>string</code> | *No description.* |
3128
+ | <code><a href="#projen-pipelines.NamedStageOptions.property.postDeploySteps">postDeploySteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | *No description.* |
3129
+ | <code><a href="#projen-pipelines.NamedStageOptions.property.postDiffSteps">postDiffSteps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | *No description.* |
3186
3130
  | <code><a href="#projen-pipelines.NamedStageOptions.property.watchable">watchable</a></code> | <code>boolean</code> | *No description.* |
3187
3131
 
3188
3132
  ---
@@ -3207,6 +3151,26 @@ public readonly name: string;
3207
3151
 
3208
3152
  ---
3209
3153
 
3154
+ ##### `postDeploySteps`<sup>Optional</sup> <a name="postDeploySteps" id="projen-pipelines.NamedStageOptions.property.postDeploySteps"></a>
3155
+
3156
+ ```typescript
3157
+ public readonly postDeploySteps: PipelineStep[];
3158
+ ```
3159
+
3160
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
3161
+
3162
+ ---
3163
+
3164
+ ##### `postDiffSteps`<sup>Optional</sup> <a name="postDiffSteps" id="projen-pipelines.NamedStageOptions.property.postDiffSteps"></a>
3165
+
3166
+ ```typescript
3167
+ public readonly postDiffSteps: PipelineStep[];
3168
+ ```
3169
+
3170
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
3171
+
3172
+ ---
3173
+
3210
3174
  ##### `watchable`<sup>Optional</sup> <a name="watchable" id="projen-pipelines.NamedStageOptions.property.watchable"></a>
3211
3175
 
3212
3176
  ```typescript
@@ -3375,6 +3339,109 @@ Should be implemented by subclasses.
3375
3339
 
3376
3340
 
3377
3341
 
3342
+ ### CodeArtifactLoginStep <a name="CodeArtifactLoginStep" id="projen-pipelines.CodeArtifactLoginStep"></a>
3343
+
3344
+ #### Initializers <a name="Initializers" id="projen-pipelines.CodeArtifactLoginStep.Initializer"></a>
3345
+
3346
+ ```typescript
3347
+ import { CodeArtifactLoginStep } from 'projen-pipelines'
3348
+
3349
+ new CodeArtifactLoginStep(project: Project, options: CodeArtifactLoginStepOptions)
3350
+ ```
3351
+
3352
+ | **Name** | **Type** | **Description** |
3353
+ | --- | --- | --- |
3354
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStep.Initializer.parameter.project">project</a></code> | <code>projen.Project</code> | - The projen project reference. |
3355
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStep.Initializer.parameter.options">options</a></code> | <code><a href="#projen-pipelines.CodeArtifactLoginStepOptions">CodeArtifactLoginStepOptions</a></code> | *No description.* |
3356
+
3357
+ ---
3358
+
3359
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.CodeArtifactLoginStep.Initializer.parameter.project"></a>
3360
+
3361
+ - *Type:* projen.Project
3362
+
3363
+ The projen project reference.
3364
+
3365
+ ---
3366
+
3367
+ ##### `options`<sup>Required</sup> <a name="options" id="projen-pipelines.CodeArtifactLoginStep.Initializer.parameter.options"></a>
3368
+
3369
+ - *Type:* <a href="#projen-pipelines.CodeArtifactLoginStepOptions">CodeArtifactLoginStepOptions</a>
3370
+
3371
+ ---
3372
+
3373
+ #### Methods <a name="Methods" id="Methods"></a>
3374
+
3375
+ | **Name** | **Description** |
3376
+ | --- | --- |
3377
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStep.toBash">toBash</a></code> | Converts the sequence of steps into a Bash script configuration. |
3378
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStep.toCodeCatalyst">toCodeCatalyst</a></code> | Converts the sequence of steps into a CodeCatalyst Actions step configuration. |
3379
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStep.toGithub">toGithub</a></code> | Converts the sequence of steps into a GitHub Actions step configuration. |
3380
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStep.toGitlab">toGitlab</a></code> | Converts the sequence of steps into a GitLab CI configuration. |
3381
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStep.addSteps">addSteps</a></code> | *No description.* |
3382
+ | <code><a href="#projen-pipelines.CodeArtifactLoginStep.prependSteps">prependSteps</a></code> | *No description.* |
3383
+
3384
+ ---
3385
+
3386
+ ##### `toBash` <a name="toBash" id="projen-pipelines.CodeArtifactLoginStep.toBash"></a>
3387
+
3388
+ ```typescript
3389
+ public toBash(): BashStepConfig
3390
+ ```
3391
+
3392
+ Converts the sequence of steps into a Bash script configuration.
3393
+
3394
+ ##### `toCodeCatalyst` <a name="toCodeCatalyst" id="projen-pipelines.CodeArtifactLoginStep.toCodeCatalyst"></a>
3395
+
3396
+ ```typescript
3397
+ public toCodeCatalyst(): CodeCatalystStepConfig
3398
+ ```
3399
+
3400
+ Converts the sequence of steps into a CodeCatalyst Actions step configuration.
3401
+
3402
+ ##### `toGithub` <a name="toGithub" id="projen-pipelines.CodeArtifactLoginStep.toGithub"></a>
3403
+
3404
+ ```typescript
3405
+ public toGithub(): GithubStepConfig
3406
+ ```
3407
+
3408
+ Converts the sequence of steps into a GitHub Actions step configuration.
3409
+
3410
+ ##### `toGitlab` <a name="toGitlab" id="projen-pipelines.CodeArtifactLoginStep.toGitlab"></a>
3411
+
3412
+ ```typescript
3413
+ public toGitlab(): GitlabStepConfig
3414
+ ```
3415
+
3416
+ Converts the sequence of steps into a GitLab CI configuration.
3417
+
3418
+ ##### `addSteps` <a name="addSteps" id="projen-pipelines.CodeArtifactLoginStep.addSteps"></a>
3419
+
3420
+ ```typescript
3421
+ public addSteps(steps: PipelineStep): void
3422
+ ```
3423
+
3424
+ ###### `steps`<sup>Required</sup> <a name="steps" id="projen-pipelines.CodeArtifactLoginStep.addSteps.parameter.steps"></a>
3425
+
3426
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>
3427
+
3428
+ ---
3429
+
3430
+ ##### `prependSteps` <a name="prependSteps" id="projen-pipelines.CodeArtifactLoginStep.prependSteps"></a>
3431
+
3432
+ ```typescript
3433
+ public prependSteps(steps: PipelineStep): void
3434
+ ```
3435
+
3436
+ ###### `steps`<sup>Required</sup> <a name="steps" id="projen-pipelines.CodeArtifactLoginStep.prependSteps.parameter.steps"></a>
3437
+
3438
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>
3439
+
3440
+ ---
3441
+
3442
+
3443
+
3444
+
3378
3445
  ### DownloadArtifactStep <a name="DownloadArtifactStep" id="projen-pipelines.DownloadArtifactStep"></a>
3379
3446
 
3380
3447
  #### Initializers <a name="Initializers" id="projen-pipelines.DownloadArtifactStep.Initializer"></a>
@@ -3623,6 +3690,90 @@ Should be implemented by subclasses.
3623
3690
 
3624
3691
 
3625
3692
 
3693
+ ### ProjenScriptStep <a name="ProjenScriptStep" id="projen-pipelines.ProjenScriptStep"></a>
3694
+
3695
+ #### Initializers <a name="Initializers" id="projen-pipelines.ProjenScriptStep.Initializer"></a>
3696
+
3697
+ ```typescript
3698
+ import { ProjenScriptStep } from 'projen-pipelines'
3699
+
3700
+ new ProjenScriptStep(project: Project, scriptName: string, args?: string)
3701
+ ```
3702
+
3703
+ | **Name** | **Type** | **Description** |
3704
+ | --- | --- | --- |
3705
+ | <code><a href="#projen-pipelines.ProjenScriptStep.Initializer.parameter.project">project</a></code> | <code>projen.Project</code> | - The projen project reference. |
3706
+ | <code><a href="#projen-pipelines.ProjenScriptStep.Initializer.parameter.scriptName">scriptName</a></code> | <code>string</code> | *No description.* |
3707
+ | <code><a href="#projen-pipelines.ProjenScriptStep.Initializer.parameter.args">args</a></code> | <code>string</code> | *No description.* |
3708
+
3709
+ ---
3710
+
3711
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.ProjenScriptStep.Initializer.parameter.project"></a>
3712
+
3713
+ - *Type:* projen.Project
3714
+
3715
+ The projen project reference.
3716
+
3717
+ ---
3718
+
3719
+ ##### `scriptName`<sup>Required</sup> <a name="scriptName" id="projen-pipelines.ProjenScriptStep.Initializer.parameter.scriptName"></a>
3720
+
3721
+ - *Type:* string
3722
+
3723
+ ---
3724
+
3725
+ ##### `args`<sup>Optional</sup> <a name="args" id="projen-pipelines.ProjenScriptStep.Initializer.parameter.args"></a>
3726
+
3727
+ - *Type:* string
3728
+
3729
+ ---
3730
+
3731
+ #### Methods <a name="Methods" id="Methods"></a>
3732
+
3733
+ | **Name** | **Description** |
3734
+ | --- | --- |
3735
+ | <code><a href="#projen-pipelines.ProjenScriptStep.toBash">toBash</a></code> | Converts the step into a Bash script configuration. |
3736
+ | <code><a href="#projen-pipelines.ProjenScriptStep.toCodeCatalyst">toCodeCatalyst</a></code> | Converts the step into a CodeCatalyst Actions step configuration. |
3737
+ | <code><a href="#projen-pipelines.ProjenScriptStep.toGithub">toGithub</a></code> | Converts the step into a GitHub Actions step configuration. |
3738
+ | <code><a href="#projen-pipelines.ProjenScriptStep.toGitlab">toGitlab</a></code> | Converts the step into a GitLab CI configuration. |
3739
+
3740
+ ---
3741
+
3742
+ ##### `toBash` <a name="toBash" id="projen-pipelines.ProjenScriptStep.toBash"></a>
3743
+
3744
+ ```typescript
3745
+ public toBash(): BashStepConfig
3746
+ ```
3747
+
3748
+ Converts the step into a Bash script configuration.
3749
+
3750
+ ##### `toCodeCatalyst` <a name="toCodeCatalyst" id="projen-pipelines.ProjenScriptStep.toCodeCatalyst"></a>
3751
+
3752
+ ```typescript
3753
+ public toCodeCatalyst(): CodeCatalystStepConfig
3754
+ ```
3755
+
3756
+ Converts the step into a CodeCatalyst Actions step configuration.
3757
+
3758
+ ##### `toGithub` <a name="toGithub" id="projen-pipelines.ProjenScriptStep.toGithub"></a>
3759
+
3760
+ ```typescript
3761
+ public toGithub(): GithubStepConfig
3762
+ ```
3763
+
3764
+ Converts the step into a GitHub Actions step configuration.
3765
+
3766
+ ##### `toGitlab` <a name="toGitlab" id="projen-pipelines.ProjenScriptStep.toGitlab"></a>
3767
+
3768
+ ```typescript
3769
+ public toGitlab(): GitlabStepConfig
3770
+ ```
3771
+
3772
+ Converts the step into a GitLab CI configuration.
3773
+
3774
+
3775
+
3776
+
3626
3777
  ### SimpleCommandStep <a name="SimpleCommandStep" id="projen-pipelines.SimpleCommandStep"></a>
3627
3778
 
3628
3779
  Concrete implementation of PipelineStep that executes simple commands.
@@ -3704,6 +3855,111 @@ Converts the step into a GitLab CI configuration.
3704
3855
 
3705
3856
 
3706
3857
 
3858
+ ### StepSequence <a name="StepSequence" id="projen-pipelines.StepSequence"></a>
3859
+
3860
+ #### Initializers <a name="Initializers" id="projen-pipelines.StepSequence.Initializer"></a>
3861
+
3862
+ ```typescript
3863
+ import { StepSequence } from 'projen-pipelines'
3864
+
3865
+ new StepSequence(project: Project, steps: PipelineStep[])
3866
+ ```
3867
+
3868
+ | **Name** | **Type** | **Description** |
3869
+ | --- | --- | --- |
3870
+ | <code><a href="#projen-pipelines.StepSequence.Initializer.parameter.project">project</a></code> | <code>projen.Project</code> | - The projen project reference. |
3871
+ | <code><a href="#projen-pipelines.StepSequence.Initializer.parameter.steps">steps</a></code> | <code><a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]</code> | - The sequence of pipeline steps. |
3872
+
3873
+ ---
3874
+
3875
+ ##### `project`<sup>Required</sup> <a name="project" id="projen-pipelines.StepSequence.Initializer.parameter.project"></a>
3876
+
3877
+ - *Type:* projen.Project
3878
+
3879
+ The projen project reference.
3880
+
3881
+ ---
3882
+
3883
+ ##### `steps`<sup>Required</sup> <a name="steps" id="projen-pipelines.StepSequence.Initializer.parameter.steps"></a>
3884
+
3885
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>[]
3886
+
3887
+ The sequence of pipeline steps.
3888
+
3889
+ ---
3890
+
3891
+ #### Methods <a name="Methods" id="Methods"></a>
3892
+
3893
+ | **Name** | **Description** |
3894
+ | --- | --- |
3895
+ | <code><a href="#projen-pipelines.StepSequence.toBash">toBash</a></code> | Converts the sequence of steps into a Bash script configuration. |
3896
+ | <code><a href="#projen-pipelines.StepSequence.toCodeCatalyst">toCodeCatalyst</a></code> | Converts the sequence of steps into a CodeCatalyst Actions step configuration. |
3897
+ | <code><a href="#projen-pipelines.StepSequence.toGithub">toGithub</a></code> | Converts the sequence of steps into a GitHub Actions step configuration. |
3898
+ | <code><a href="#projen-pipelines.StepSequence.toGitlab">toGitlab</a></code> | Converts the sequence of steps into a GitLab CI configuration. |
3899
+ | <code><a href="#projen-pipelines.StepSequence.addSteps">addSteps</a></code> | *No description.* |
3900
+ | <code><a href="#projen-pipelines.StepSequence.prependSteps">prependSteps</a></code> | *No description.* |
3901
+
3902
+ ---
3903
+
3904
+ ##### `toBash` <a name="toBash" id="projen-pipelines.StepSequence.toBash"></a>
3905
+
3906
+ ```typescript
3907
+ public toBash(): BashStepConfig
3908
+ ```
3909
+
3910
+ Converts the sequence of steps into a Bash script configuration.
3911
+
3912
+ ##### `toCodeCatalyst` <a name="toCodeCatalyst" id="projen-pipelines.StepSequence.toCodeCatalyst"></a>
3913
+
3914
+ ```typescript
3915
+ public toCodeCatalyst(): CodeCatalystStepConfig
3916
+ ```
3917
+
3918
+ Converts the sequence of steps into a CodeCatalyst Actions step configuration.
3919
+
3920
+ ##### `toGithub` <a name="toGithub" id="projen-pipelines.StepSequence.toGithub"></a>
3921
+
3922
+ ```typescript
3923
+ public toGithub(): GithubStepConfig
3924
+ ```
3925
+
3926
+ Converts the sequence of steps into a GitHub Actions step configuration.
3927
+
3928
+ ##### `toGitlab` <a name="toGitlab" id="projen-pipelines.StepSequence.toGitlab"></a>
3929
+
3930
+ ```typescript
3931
+ public toGitlab(): GitlabStepConfig
3932
+ ```
3933
+
3934
+ Converts the sequence of steps into a GitLab CI configuration.
3935
+
3936
+ ##### `addSteps` <a name="addSteps" id="projen-pipelines.StepSequence.addSteps"></a>
3937
+
3938
+ ```typescript
3939
+ public addSteps(steps: PipelineStep): void
3940
+ ```
3941
+
3942
+ ###### `steps`<sup>Required</sup> <a name="steps" id="projen-pipelines.StepSequence.addSteps.parameter.steps"></a>
3943
+
3944
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>
3945
+
3946
+ ---
3947
+
3948
+ ##### `prependSteps` <a name="prependSteps" id="projen-pipelines.StepSequence.prependSteps"></a>
3949
+
3950
+ ```typescript
3951
+ public prependSteps(steps: PipelineStep): void
3952
+ ```
3953
+
3954
+ ###### `steps`<sup>Required</sup> <a name="steps" id="projen-pipelines.StepSequence.prependSteps.parameter.steps"></a>
3955
+
3956
+ - *Type:* <a href="#projen-pipelines.PipelineStep">PipelineStep</a>
3957
+
3958
+ ---
3959
+
3960
+
3961
+
3962
+
3707
3963
  ### UploadArtifactStep <a name="UploadArtifactStep" id="projen-pipelines.UploadArtifactStep"></a>
3708
3964
 
3709
3965
  #### Initializers <a name="Initializers" id="projen-pipelines.UploadArtifactStep.Initializer"></a>