(aws-opensearchservice): add useLatestServiceSoftwareForBlueGreen to Domain construct
- Dominant language
- TypeScript
- Stars
- 12.9k
- Forks
- 4.6k
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 74
Description
### Describe the feature
Amazon OpenSearch Service supports `UseLatestServiceSoftwareForBlueGreen` in the `SoftwareUpdateOptions` of `AWS::OpenSearchService::Domain`. This feature request adds that property to the L2 `Domain` construct so users can enable it directly, alongside the existing `enableAutoSoftwareUpdate` property.
### Use Case
When enabled, the domain automatically uses the latest available service software during a blue/green deployment, rather than the currently pinned service software version. The property is already available in CloudFormation (`AWS::OpenSearchService::Domain` → `SoftwareUpdateOptions.UseLatestServiceSoftwareForBlueGreen`), but is not exposed by the CDK L2 `Domain` construct. Today users must fall back to an escape hatch (`addPropertyOverride`) to set it.
### Proposed Solution
Add an optional `useLatestServiceSoftwareForBlueGreen` boolean to `DomainProps`, wired through to the L1 `SoftwareUpdateOptions.useLatestServiceSoftwareForBlueGreen`. The `softwareUpdateOptions` block is rendered when either `enableAutoSoftwareUpdate` or `useLatestServiceSoftwareForBlueGreen` is specified. The property is optional and defaults to off, so existing behavior is unchanged.
### Other Information
Implementation is in progress in PR #38499 (currently in Draft — build is blocked on the L1 property not yet being available in `@aws-cdk/aws-service-spec`; the CloudFormation schema is public but has not yet been ingested).
### Acknowledgements
- [x] I may be able to implement this feature request
- [ ] This feature might incur a breaking change
### AWS CDK Library version (aws-cdk-lib)
2.266.0
### AWS CDK CLI version
2.1131.0
### Environment details (OS name and version, etc.)
macOS 26.5.2 (arm64), Node.js v20.20.2
Contributor guide
Research direction
Review the Domain construct's DomainProps and the L1 SoftwareUpdateOptions definition, then inspect PR #38499 to understand the implementation already in progress and its service-spec dependency. Done means the optional property is exposed, the softwareUpdateOptions block is emitted for either setting, and existing behavior remains unchanged.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, typescript
- Domain
- cloud, infrastructure
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 25/100