projen-pipelines 0.2.10 → 0.2.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +36 -13
- package/README.md +41 -0
- package/lib/assign-approver/base.js +1 -1
- package/lib/assign-approver/github.js +3 -3
- package/lib/awscdk/base.js +3 -3
- package/lib/awscdk/bash.js +1 -1
- package/lib/awscdk/github.d.ts +12 -0
- package/lib/awscdk/github.js +117 -2
- package/lib/awscdk/gitlab.d.ts +1 -0
- package/lib/awscdk/gitlab.js +8 -2
- package/lib/steps/artifact-steps.js +2 -2
- package/lib/steps/aws-assume-role.step.js +1 -1
- package/lib/steps/registries.js +2 -2
- package/lib/steps/step.js +4 -4
- package/llm.md +23 -1
- package/package.json +1 -1
package/llm.md
CHANGED
|
@@ -44,9 +44,10 @@ For AWS CDK applications, the library provides:
|
|
|
44
44
|
|
|
45
45
|
- `CDKPipeline` (abstract base class)
|
|
46
46
|
- Platform-specific implementations (e.g., `GithubCDKPipeline`)
|
|
47
|
-
- Support for multi-stage deployments (dev, prod, personal)
|
|
47
|
+
- Support for multi-stage deployments (dev, prod, personal, feature)
|
|
48
48
|
- Asset publishing and versioning
|
|
49
49
|
- Automated CloudFormation deployment
|
|
50
|
+
- Feature branch deployments with automatic lifecycle management
|
|
50
51
|
|
|
51
52
|
## Usage Example
|
|
52
53
|
|
|
@@ -128,6 +129,7 @@ When creating a CDK pipeline, these are key configuration options:
|
|
|
128
129
|
| `pkgNamespace` | Namespace for published packages |
|
|
129
130
|
| `stages` | Array of deployment stages with environment settings |
|
|
130
131
|
| `useGithubPackagesForAssembly` | Use GitHub Packages for assembly storage |
|
|
132
|
+
| `featureStages` | Configuration for feature branch deployments |
|
|
131
133
|
|
|
132
134
|
## Deployment Stages
|
|
133
135
|
|
|
@@ -186,6 +188,26 @@ The CDK pipeline adds these tasks to your projen project:
|
|
|
186
188
|
| `bump` | Bump version based on git tags |
|
|
187
189
|
| `release:push-assembly` | Publish cloud assembly to registry |
|
|
188
190
|
|
|
191
|
+
## Feature Branch Deployments
|
|
192
|
+
|
|
193
|
+
When `featureStages` is configured, the library creates automated workflows for feature branch lifecycle management:
|
|
194
|
+
|
|
195
|
+
### GitHub Actions Implementation
|
|
196
|
+
|
|
197
|
+
- **deploy-feature workflow**: Triggered when a PR is labeled with 'feature-deployment'
|
|
198
|
+
- **destroy-feature workflow**: Triggered when PR is closed or 'feature-deployment' label is removed
|
|
199
|
+
- Uses branch name in stack naming for isolation
|
|
200
|
+
|
|
201
|
+
### Configuration Example
|
|
202
|
+
|
|
203
|
+
```typescript
|
|
204
|
+
{
|
|
205
|
+
featureStages: {
|
|
206
|
+
env: { account: '123456789013', region: 'eu-central-1' }
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
```
|
|
210
|
+
|
|
189
211
|
## Best Practices
|
|
190
212
|
|
|
191
213
|
1. **IAM Role Setup**: Create minimal permission IAM roles for deployment
|