Common Serverless Repo Infrastructure

The Infrastructure page lists and explains the Infra components which are required for the code to run properly.

Components

Component

Description

Activity

Ref

<<SSM Attribute>>

New SSM key specifically for Datadog API Key to protect the content

New

SSM Key

<<Config Service>>

Add BigQuery Dataset and Table names in existing configs as required

Existing

e.g. Configuration

<<AWS Role>>

AWS Role for the lambdas

Existing

AWS Role

<<AWS Lambda>>

New Lambdas for each task

New

AWS Lambda

SSM Key

The security credentials will be stored in the following security credentials in the digital Jenkins. These credentials are used to populate the SSM key below in the respective environments. This secure attribute is created from the common-infrastructure repository.

SSM Parameter Name

storepick_datadog_apikey

Value:

{
    "DD_KMS_API_KEY": "....",
    "DD_KMS_APPLICATION_KEY": "...."
}

Configuration

Config service is being used by the Bigquery Update Lambda to fetch the Dataset and Table Names. New Config is not required in this case, we can modify existing config used by respective repos to add atrributes related to BigQuery.

Each repo will use config which has been setup for it e.g. NHS Discount repo will use storepick-nhs-discount.json

Config used by NHSDiscount repo

storepick-nhs-discount.json

Value:

{
    ...
    "BIG_QUERY_DATASET": "store_pick_discount",
    "BIG_QUERY_TABLE": "nhs_discount",
    ...
}

AWS Role

Role Name

rol-glob-n-digital-lambda-001

AWS Lambda

Datadog Event Writer Lambda

Environment

Aws Lambda

dev

lmb-euw1-dev-strpck-event_writer-001

sit

lmb-euw1-sit-strpck-event_writer-001

uat

lmb-euw1-uat-strpck-event_writer-001

prd

lmb-euw1-prd-strpck-event_writer-001

BigQuery Update Lambda

Environment

Aws Lambda

dev

lmb-euw1-dev-strpck-bigquery_update_data-002

sit

lmb-euw1-sit-strpck-bigquery_update_data-002

uat

lmb-euw1-uat-strpck-bigquery_update_data-002

prd

lmb-euw1-prd-strpck-bigquery_update_data-002