Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
[2.0.0] (2024-6-14)
This major version represents an overhaul to the CDK constructs to support more scalable deployment configurations with many additional CDK deployment features. It adds a new VAMS permission system with new Attribute-Based Access Control (ABAC) and Role-Based Access Control (RBAC) systems. Lastly, the overhaul has added business logic features to support new data structures around asset storage.
Recommended Upgrade Path: A/B Stack Deployment with data migration using staging bucket configuration and upgrade migration scripts for DynamoDB tables in
./infra/upgradeMigrationScripts
Highlights
config.json
andcdk.json
files. Many previously implemented features, such as OpenSearch or Location Services, can now be turned on or off../infra/config/config.json
file. Some backwards compatibility with existing CDK deployment commands.vams
in the function name by default. If you have external pipeline lambdas, please add invoke permissions for them to the appropriate workflow execution role or update your lambda function name to containvams
./assets/all
(PUT) API call is deprecated in favor of using the existing/assets
(PUT) and the newer/ingestAsset
(POST) API.wait_for_callback
need to be re-created/re-saved from the VAMS UI or modified in the AWS Console to removeTaskToken.$
from node tasks parameters if there is no callback on that node.responseBody: {message: {Items, NextToken}}
.Features
./infra/config/config.json
file../infra/config/docker/Dockerfile-customDependencyBuildConfig
(such as in cases of HTTPS SSL proxy certificate support)../infra/cdk.json
file../infra/deploymentDataMigration
.useSaml
configuration flag is observed (moved fromsaml-config.ts
file), other auth types will cause an unimplemented error.^[a-zA-Z0-9\-._\s]{1,256}$
.^[\w\-\.\+]+@([\w-]+\.)+[\w-]{2,4}$
.useUserPasswordAuthFlow
for organizations who cannot perform SRP calculations on some of their VAMS integrations. By default, this configuration option is set to false.Bug Fixes
/aws/vendedlogs
prefix to fix the issue of reaching the maximum CloudWatch policy character count on AWS accounts with many current/past resource deployments.wait_for_callback
flag in a lambda pipeline. This bug fix requires the re-creation/re-saving of all applicable workflows from the VAMS UI or manual adjustment in the AWS Console of created state machines to removeTaskToken.$
from tasks parameters if there is no callback. This error was due to an AWS Step Functions service logic change.#deleted
assets during the OpenSearch query and not just as a post-processing step. This should help prevent inconsistent results when wanting to limit search results to a single or a handful of total records.Chores
#
link prefixesvams
in the function name by defaultresponseBody: {message: {Items, NextToken}}
. This should allow VAMS to grow into a larger system that can support more than 1500 assets/records.Deprecation / Feature Removal
/assets/all
(PUT) API call is deprecated in favor of using the existing/assets
(PUT) and the newer/ingestAsset
(POST) API. Backend business logic code for generating lambda components remains for use in the workflow API currently.bucket
field is no longer a needed input or response field for working with asset APIs. The bucket will now be fetched from environment variables instead, based on solution permissions.Known Outstanding Issues
ingestAsset
API used to test the core of this new method.