Open bernard357 opened 1 year ago
As per feature file, we anticipate that a number of validations can be submitted to end users over time. The general architectural approach is that this will be powered by named documents. In addition, documents will be made out of Markdown with a YAML header (aka, frontmatter approach). The Markdown can easily be converted to HTML into mail messages sent to end users. The YAML header supports structured and meta-information, e.g., message title, document validity period, etc. During the deployment of the solution with CDK, each document is loaded and turned into one parameter in SSM. Documents are then exposed to Lambda functions via a new python module dedicated to documents, aka, lambdas/documents.py
issue has been heavily reworked to better plan foreseen work on the topic
Feb-19: this ticket should be split in several tickets, and a milestone should be created on user acceptance capability.
What is this?
When an account is assigned to a person, we want to share terms of service for the corporate resource that is provided.
Why is this important?
There is a need to align the management of personal AWS accounts with the management of other corporate resources such as computers or smart phones.
How to implement it?
cdk/documents.py
to handle templates with frontmattertests/test_cdk_documents.py
usingfixtures/documents/terms-of-use.md
make all-tests
make lint
fixtures/settings/settings-with-notifications.yaml
tests/test_cdk_configuration.py
cdk/parameters_construct.py
to load notifications in SSM parameter storetests/test_cdk_parameters_construct.py
with mocked SSMmake all-tests
make lint
cdk/on_notification_construct.py
to build DynamoDB table and related Lambdas functionstests/test_cdk_on_notification_construct.py
to ensure data encryption in DynamoDBcdk/serverless_stack.py
to integrate new constructtests/fixture_small_setup.py
get_notification_for_account
tolambdas/settings.py
make all-tests
make lint
lambdas/on_notification_handler.py
to handle events related to notificationstests/test_lambda_on_integration_handler.py
for integration testsmake all-tests
make lint