awslabs / awslabs/aws-deployment-framework

[Feat]: Introduce an ADF pipeline region SSM Parameter store value in raw form

Open Beginner friendly
#620 0 comments 2 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
699
Forks
235
Avg merge
20h 53m
Merged PRs (30d)
7

Description

### Describe the feature

The current value for /deployment//regions SSM parameter is a "python string representation" of an array of strings, that looks something like: `['us-east-1','us-east-2','eu-west-1']`

There should be an alternate value that is in "raw" comma-separated form, like: `us-east-1,us-east-2,eu-west-1` to avoid having to parse the array characters or string quotes

### Use Case

I want to use the value as part of an adaption for CDK using ADF pipelines I'm building, where I need to find out all the regions a pipeline is targeting (in order to push assets (file or image assets) into all regions.

I could of course strip the current value already today (which I'm currently doing), but it would be nice if I didn't have to do that and use the value directly.

### Proposed Solution

I am open for providing a pull request to implement the feature if it's accepted.

I was thinking about something like this appended in this function: https://github.com/awslabs/aws-deployment-framework/blob/cb029ef5b8d00794f756b62086a5394f4e7f7879/src/lambda_codebase/initial_commit/bootstrap_repository/adf-bootstrap/deployment/lambda_codebase/pipeline_management/generate_pipeline_inputs.py#L35

```
parameter_store.put_parameter(
f"/deployment/{deployment_map_source}/{pipeline.name}/region_names",
",".join(pipeline.get_all_regions()),
)
```

### Acknowledgements

- [X] I may be able to implement this feature request

Contributor guide

Open the contributing guide

Research direction

Start in src/lambda_codebase/initial_commit/bootstrap_repository/adf-bootstrap/deployment/lambda_codebase/pipeline_management/generate_pipeline_inputs.py at the referenced function. Review how the existing regions SSM parameter is written, then implement the additional raw comma-separated region value described in the issue. Done means the pipeline exposes regions without array characters or quotes.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, python
Domain
cloud, devops
Issue type
Feature
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
65/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.