Skip to content

Commit 898d6f1

Browse files
authored
Merge pull request #611 from aws-solutions/release/v2.3.6
update to v2.3.6
2 parents 96b4c34 + 6f920ca commit 898d6f1

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+1200
-298
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
**/dist
33
**/global-s3-assets
44
**/regional-s3-assets
5+
**/launch-wizard-assets
56
**/open-source
67
**/*.zip
78
**/.zip

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@ All notable changes to this project are documented in this file.
55
Based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [2.3.6] - 2025-11-10
9+
10+
### Removed
11+
12+
- Removed AppRegistry integration
13+
814
## [2.3.5] - 2025-10-28
915

1016
### Fixed

README.md

Lines changed: 35 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
# Workload Discovery on AWS (v2.3.5)
1+
# Workload Discovery on AWS (v2.3.6)
22

3-
Workload Discovery on AWS is a tool that quickly visualizes AWS Cloud workloads as architecture diagrams.
4-
You can use the solution to build, customize, and share detailed workload visualizations based on live data from AWS.
5-
This solution works by maintaining an inventory of the AWS resources across your accounts and Regions,
3+
Workload Discovery on AWS is a tool that quickly visualizes AWS Cloud workloads as architecture diagrams.
4+
You can use the solution to build, customize, and share detailed workload visualizations based on live data from AWS.
5+
This solution works by maintaining an inventory of the AWS resources across your accounts and Regions,
66
mapping relationships between them, and displaying them in a web user interface (web UI).
77

8-
To find out more about Workload Discovery visit our [AWS Solutions](https://aws.amazon.com/solutions/implementations/workload-discovery-on-aws)
8+
To find out more about Workload Discovery visit our [AWS Solutions](https://aws.amazon.com/solutions/implementations/workload-discovery-on-aws)
99
page.
1010

1111
## Launch Workload Discovery
@@ -30,14 +30,14 @@ page.
3030

3131
## Installation
3232

33-
Workload Discovery is deployed to your account using an AWS CloudFormation template and should take approximately 30
34-
minutes to deploy. See the [deployment guide](https://docs.aws.amazon.com/solutions/latest/workload-discovery-on-aws/automated-deployment.html)
35-
for instructions, and [the cost overview](https://docs.aws.amazon.com/solutions/latest/workload-discovery-on-aws/overview.html#cost)
33+
Workload Discovery is deployed to your account using an AWS CloudFormation template and should take approximately 30
34+
minutes to deploy. See the [deployment guide](https://docs.aws.amazon.com/solutions/latest/workload-discovery-on-aws/automated-deployment.html)
35+
for instructions, and [the cost overview](https://docs.aws.amazon.com/solutions/latest/workload-discovery-on-aws/overview.html#cost)
3636
to learn about costs.
3737

3838
## Usage
3939

40-
A web interface is included with Workload Discovery. Refer to the [documentation](https://github.com/aws-solutions/workload-discovery-on-aws)
40+
A web interface is included with Workload Discovery. Refer to the [documentation](https://github.com/aws-solutions/workload-discovery-on-aws)
4141
to learn how to use the application.
4242

4343
## Feature requests
@@ -48,30 +48,30 @@ To submit an idea for a feature you would like to see implemented, please [creat
4848

4949
![Architecture diagram showing full set of deployment resources](arch-diagram.png "Full architecture diagram")
5050

51-
Workload Discovery is deployed to your account using an AWS CloudFormation template consisting of six components.
52-
The following is a high level overview of the components. For additional details about each component, refer to
51+
Workload Discovery is deployed to your account using an AWS CloudFormation template consisting of six components.
52+
The following is a high level overview of the components. For additional details about each component, refer to
5353
the [Solution components guide](https://docs.aws.amazon.com/solutions/latest/workload-discovery-on-aws/solution-components.html).
5454

55-
The web user interface (UI) interacts with the data component via [AWS AppSync](http://aws.amazon.com/appsync/). The
56-
web UI requests resource relationship data from the data component. The data component queries and returns data
55+
The web user interface (UI) interacts with the data component via [AWS AppSync](http://aws.amazon.com/appsync/). The
56+
web UI requests resource relationship data from the data component. The data component queries and returns data
5757
from an [Amazon Neptune](http://aws.amazon.com/neptune/) database.
5858

59-
The storage management component stores user preferences and saved architecture diagrams. This is implemented using
60-
[AWS Amplify](http://aws.amazon.com/amplify/) and an [Amazon Simple Storage Service](http://aws.amazon.com/s3/)
59+
The storage management component stores user preferences and saved architecture diagrams. This is implemented using
60+
[AWS Amplify](http://aws.amazon.com/amplify/) and an [Amazon Simple Storage Service](http://aws.amazon.com/s3/)
6161
(Amazon S3) bucket.
6262

63-
The discovery component uses [AWS Config](http://aws.amazon.com/config) and AWS API calls to maintain an inventory of
64-
resource data from imported accounts and Regions, then stores its findings in the data component. This runs every 15
65-
minutes as a container task on [Amazon Elastic Container Service (Amazon ECS)](https://aws.amazon.com/ecs/) using the
66-
[AWS Fargate](http://aws.amazon.com/fargate/) launch type. The discovery component container image is built in the
63+
The discovery component uses [AWS Config](http://aws.amazon.com/config) and AWS API calls to maintain an inventory of
64+
resource data from imported accounts and Regions, then stores its findings in the data component. This runs every 15
65+
minutes as a container task on [Amazon Elastic Container Service (Amazon ECS)](https://aws.amazon.com/ecs/) using the
66+
[AWS Fargate](http://aws.amazon.com/fargate/) launch type. The discovery component container image is built in the
6767
image deployment component using [AWS CodePipeline](http://aws.amazon.com/codepipeline/) and [AWS CodeBuild](http://aws.amazon.com/codebuild/).
6868

69-
The cost component processes [AWS Cost and Usage Reports](https://docs.aws.amazon.com/cur/latest/userguide/what-is-cur.html)
70-
(AWS CUR) to make cost data available in Workload Discovery. To use this feature, you must [create a report in AWS CUR](https://docs.aws.amazon.com/cur/latest/userguide/cur-create.html)
71-
to deliver the reports to the ```CostAndUsageReportBucket``` Amazon S3 bucket. When an AWS CUR is delivered, it
72-
triggers an [AWS Lambda](http://aws.amazon.com/lambda) function to trigger a AWS Glue Crawler that will update a
73-
table ready for Amazon Athena to query. You can query these AWS CURs via the Workload Discovery UI. You can bring in cost
74-
data from other accounts discoverable to Workload Discovery by setting up a AWS CUR and setting up replication between
69+
The cost component processes [AWS Cost and Usage Reports](https://docs.aws.amazon.com/cur/latest/userguide/what-is-cur.html)
70+
(AWS CUR) to make cost data available in Workload Discovery. To use this feature, you must [create a report in AWS CUR](https://docs.aws.amazon.com/cur/latest/userguide/cur-create.html)
71+
to deliver the reports to the ```CostAndUsageReportBucket``` Amazon S3 bucket. When an AWS CUR is delivered, it
72+
triggers an [AWS Lambda](http://aws.amazon.com/lambda) function to trigger a AWS Glue Crawler that will update a
73+
table ready for Amazon Athena to query. You can query these AWS CURs via the Workload Discovery UI. You can bring in cost
74+
data from other accounts discoverable to Workload Discovery by setting up a AWS CUR and setting up replication between
7575
the S3 bucket in the discoverable account and the ```CostAndUsageReportBucket```
7676

7777

@@ -117,7 +117,7 @@ cd ./deployment
117117

118118
### Deploying a local build
119119

120-
When you have made changes to the code, you can build it locally and upload the deployment artefacts to Amazon S3 by
120+
When you have made changes to the code, you can build it locally and upload the deployment artefacts to Amazon S3 by
121121
editing and running the bash script referenced below.
122122

123123
#### Prerequistes
@@ -126,15 +126,15 @@ editing and running the bash script referenced below.
126126
2. [Node.js](https://nodejs.org/en/) installed
127127
3. [Python 3](https://www.python.org/downloads/) installed
128128
4. The CLI [configured](https://docs.aws.amazon.com/cli/latest/reference/configure/) with credentials/profile that will allow:
129-
* S3 Bucket creation
130-
* S3 Object creation
129+
* S3 Bucket creation
130+
* S3 Object creation
131131

132132
#### Create deployment script
133133

134134
1. Copy the `deployment/local-deploy-script.sh.example` script to the root project directory.
135-
```cp deployment/local-deploy-script.sh.example local-deploy-script.sh```
135+
```cp deployment/local-deploy-script.sh.example local-deploy-script.sh```
136136
2. Edit the `local-deploy-script.sh` copy made in step 1. Substitute the value placeholders (marked with angle brackets)
137-
with your own values, then save the script.
137+
with your own values, then save the script.
138138
3. Make the script executable
139139
```chmod +x ./local-deploy-script.sh```
140140
4. Run the script
@@ -148,7 +148,7 @@ This will:
148148

149149
#### Deploying the CloudFormation template
150150

151-
Once you have the deployment artefacts in S3, you can deploy the **workload-discovery-on-aws.template** in the CloudFormation
151+
Once you have the deployment artefacts in S3, you can deploy the **workload-discovery-on-aws.template** in the CloudFormation
152152
console. Just pass the link to the template in S3 to CloudFormation and it will do the rest.
153153

154154
Parameters required by the template:
@@ -162,21 +162,20 @@ Parameters required by the template:
162162
* **OpensearchInstanceType** - Select the instance type that will be provisioned for the Amazon ElasticSearch Domain.
163163
* **AthenaWorkgroup** - The Workgroup that will be used to issue the Athena query when the Cost feature is enabled.
164164
* **OpensearchMultiAz** - Choose whether to create an Opensearch cluster that spans multiple Availability Zone. Choosing Yes improves resilience; however, increases the cost of this solution.
165-
165+
166166
**Note** - You will need to deploy in the same account and region as the S3 bucket that the deployment artefacts are uploaded to.
167167

168168
## Troubleshooting
169-
If you encounter problems during or after the deployment of Workload Discovery, consult the [debugging flow](./debugging-flowchart.mmd) chart to help
169+
If you encounter problems during or after the deployment of Workload Discovery, consult the [debugging flow](./debugging-flowchart.mmd) chart to help
170170
diagnose and rectify common issues.
171171

172172
## License
173173

174174
See license [here](./LICENSE).
175175

176-
## Anonymized data collection
176+
## Data collection
177177

178-
This solution collects anonymized operational metrics to help AWS improve the quality and features of the solution.
179-
For more information, including how to disable this capability, please see the [Implementation Guide](https://docs.aws.amazon.com/solutions/latest/workload-discovery-on-aws/anonymized-data-collection.html).
178+
This solution sends operational metrics to AWS (the “Data”) about the use of this solution. We use this Data to better understand how customers use this solution and related services and products. AWS’s collection of this Data is subject to the [AWS Privacy Notice](https://aws.amazon.com/privacy/).
180179

181180
## Acknowledgements
182181

deployment/build-open-source-dist.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,5 +48,7 @@ gitzip -d $dist_dir/$1.zip \
4848
-x "sonar-project.properties" \
4949
-x "solution-manifest.yaml" \
5050
-x "docs" \
51+
-x "launch-wizard-config.json" \
52+
-x "source/launch-wizard" \
5153
-x ".nightswatch" \
5254
-x "Config"

deployment/build-s3-dist.sh

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ fi
2727
template_dir="$PWD"
2828
template_dist_dir="$template_dir/global-s3-assets"
2929
build_dist_dir="$template_dir/regional-s3-assets"
30+
launch_wizard_dist_dir="$template_dir/launch-wizard-assets"
3031
source_dir="$template_dir/../source"
3132
nested_stack_template_dir="$source_dir/cfn/templates"
3233

@@ -41,6 +42,7 @@ echo "--------------------------------------------------------------------------
4142

4243
rm -rf "$template_dist_dir" && mkdir -p "$template_dist_dir"
4344
rm -rf "$build_dist_dir" && mkdir -p "$build_dist_dir"
45+
rm -rf "$launch_wizard_dist_dir" && mkdir -p "$launch_wizard_dist_dir"
4446

4547
echo "------------------------------------------------------------------------------"
4648
echo "[Packing] Nested Stack Templates"
@@ -57,6 +59,16 @@ echo "--------------------------------------------------------------------------
5759

5860
cp "${build_dist_dir}/main.template" "${template_dist_dir}/workload-discovery-on-aws.template"
5961

62+
echo "------------------------------------------------------------------------------"
63+
echo "[Packing] Launch Wizard Assets"
64+
echo "------------------------------------------------------------------------------"
65+
66+
cp "${template_dir}/../launch-wizard-config.json" "${launch_wizard_dist_dir}/launch-wizard-config.json"
67+
cp "${source_dir}/launch-wizard/launch-wizard-metadata.json" "${launch_wizard_dist_dir}/launch-wizard-metadata.json"
68+
cd "${source_dir}/launch-wizard/helpPanels"
69+
zip -q -r9 "${launch_wizard_dist_dir}/helpPanels.zip" .
70+
cd "${template_dir}"
71+
6072
echo "------------------------------------------------------------------------------"
6173
echo "[Rebuild] Upload GraphQL Schema"
6274
echo "------------------------------------------------------------------------------"
@@ -185,7 +197,6 @@ cd "${source_dir}/backend/functions/cur-setup"
185197
npm run build
186198
cp ./dist/cur-setup.zip "${build_dist_dir}/cur-setup.zip"
187199

188-
189200
echo "------------------------------------------------------------------------------"
190201
echo "[Rebuild] Metrics Uuid Custom Resource"
191202
echo "------------------------------------------------------------------------------"
@@ -194,6 +205,14 @@ rm -rf dist && mkdir dist
194205
zip -q -r9 dist/metrics_uuid.zip metrics_uuid.py
195206
cp ./dist/metrics_uuid.zip "${build_dist_dir}/metrics_uuid.zip"
196207

208+
echo "------------------------------------------------------------------------------"
209+
echo "[Rebuild] Remove AppInsights Custom Resource"
210+
echo "------------------------------------------------------------------------------"
211+
cd "${source_dir}/backend/functions/remove-appinsights"
212+
rm -rf dist && mkdir dist
213+
zip -q -r9 dist/remove_appinsights.zip remove_appinsights.py
214+
cp ./dist/remove_appinsights.zip "${build_dist_dir}/remove_appinsights.zip"
215+
197216
echo "------------------------------------------------------------------------------"
198217
echo "[Rebuild] Metrics"
199218
echo "------------------------------------------------------------------------------"

deployment/run-unit-tests.sh

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,14 @@ pipenv install -q --dev
8080
pipenv run pytest --cov-report xml --cov .
8181
echo "$(awk '{gsub(/<source>.*\/source\//, "<source>source/")}1' coverage.xml)" > coverage.xml
8282

83+
echo "------------------------------------------------------------------------------"
84+
echo "[Test] Remove AppInsights Custom Resource"
85+
echo "------------------------------------------------------------------------------"
86+
cd $source_dir/backend/functions/remove-appinsights
87+
pipenv install -q --dev
88+
pipenv run pytest --cov-report xml --cov .
89+
echo "$(awk '{gsub(/<source>.*\/source\//, "<source>source/")}1' coverage.xml)" > coverage.xml
90+
8391
echo "------------------------------------------------------------------------------"
8492
echo "[Test] Metrics Subscription Filter"
8593
echo "------------------------------------------------------------------------------"

source/backend/discovery/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

source/backend/discovery/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "wd-discovery",
3-
"version": "v2.3.5",
3+
"version": "v2.3.6",
44
"description": "This contains the code that forms the discovery process for AWS Perspective.",
55
"main": "index.mjs",
66
"type": "module",

source/backend/functions/account-import-templates-api/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

source/backend/functions/account-import-templates-api/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "wd-import-templates",
3-
"version": "v2.3.5",
3+
"version": "v2.3.6",
44
"description": "Lambda function that serves cfn templates for account and region importing",
55
"main": "index.mjs",
66
"type": "module",

0 commit comments

Comments
 (0)