> ## Documentation Index
> Fetch the complete documentation index at: https://playbook.smedleygroup.com/llms.txt
> Use this file to discover all available pages before exploring further.

# TalentIdPipeline-Infra-CDK Overview

> Foundational infrastructure layer for the SG Advanced Tech estate. Defines the VPC and shared MongoDB instance used by all cloud-hosted systems.

Active

## Overview

TalentIdPipeline-Infra-CDK is the foundational infrastructure layer for the entire SG Advanced Tech software estate. It defines the VPC that all cloud-hosted systems operate within, and the primary MongoDB EC2 instance used by the core estate. Without this infrastructure, no cloud-hosted system in the estate can run.

> [!WARNING]
>
> Changes to this repo have the potential to affect all cloud-hosted systems simultaneously. Coordinate with the full team before making any modifications.

## Architecture

![TalentIdPipeline-Infra-CDK deployed infrastructure. Box colour shows the deploying CloudFormation stack.](https://mintcdn.com/smedley_group/J4Qb1kGrTQEJOjVR/images/software/developer/estate/infra/talentidpipeline-infra-cdk/architecture.png?fit=max\&auto=format\&n=J4Qb1kGrTQEJOjVR\&q=85\&s=84f1b45ec0c2abdebf35d794aa8479f7)

> [!NOTE]
>
> The diagram source is the draw\.io file at `images/software/developer/estate/infra/talentidpipeline-infra-cdk/architecture.drawio`. To change the diagram, edit that source in draw\.io, re-export it as PNG to `architecture.png` in the same folder, and commit both.

## Key Facts

| Setting | Value |
| - | - |
| AWS account | `338232497876` |
| Region | `eu-west-2` (London) |
| VPC CIDR | `172.17.0.0/22` |
| Source | CodeCommit `TalentIdPipeline-Infra-CDK` (`main`) |
| CI/CD | CodePipeline `TalentId-CDKPipeline-Infra` (self-mutating) |
| IaC | Python AWS CDK (`aws-cdk-lib` 2.127.0) |
| Database | Self-managed MongoDB 7.0 on a single EC2 instance |

## What It Provisions

TalentIdPipeline-Infra-CDK is an AWS CDK project (written in Python) that provisions:

* A VPC used by all cloud-hosted systems in the estate, including SG-Infra
* A shared MongoDB EC2 instance used by TalentID:Coaching, TalentID:Global, GKL Platform and Telemetry
* Other complementary AWS infrastructure

> [!NOTE]
>
> This repo is defined in Python CDK rather than the preferred TypeScript stack. It was originally created for the TalentID platform by Nick from AWS and has since been adapted into the shared infrastructure layer for all systems.

## Repositories

| Repository | Description |
| - | - |
| [TalentIdPipeline-Infra-CDK](https://eu-west-2.console.aws.amazon.com/codesuite/codecommit/repositories/TalentIdPipeline-Infra-CDK/browse?region=eu-west-2) | AWS CDK infrastructure definition |

## Systems That Depend On This

Every cloud-hosted system in the estate depends on this repo for the VPC:

| System | Dependency |
| - | - |
| TalentID: Coaching | VPC + shared MongoDB + SNS topics |
| TalentID: Global | VPC + shared MongoDB |
| GKL Platform (GKL API, OD, Booking Website) | VPC + shared MongoDB |
| Telemetry | VPC + shared MongoDB |
| SG-Infra | VPC only (SG-Infra has its own MongoDB instance) |
| Fleet Management Platform | VPC (indirect, via SG-Infra) |

Kart Programming is the only system with no dependency on this repo.

## Detailed Documentation

> **[Architecture and Deployment Pipeline](/software/developer/estate/infra/talentidpipeline-infra-cdk/architecture)**
>
> The CDK app, the self-mutating pipeline, the three stacks, and how a change reaches production.

> **[Networking and Connectivity](/software/developer/estate/infra/talentidpipeline-infra-cdk/networking)**
>
> The shared VPC, subnets, security groups and the private API Gateway endpoint.

> **[Shared MongoDB Instance](/software/developer/estate/infra/talentidpipeline-infra-cdk/mongodb)**
>
> The EC2-hosted MongoDB, its provisioning, TLS and credentials.

> **[Backups and Disaster Recovery](/software/developer/estate/infra/talentidpipeline-infra-cdk/backups)**
>
> Nightly backups, retention and the recovery picture.

> **[Integration Surface and Configuration Contract](/software/developer/estate/infra/talentidpipeline-infra-cdk/integration)**
>
> Buckets, IAM users, SNS topics and the SSM parameters other systems consume.

> **[Security, Risks and Technical Debt](/software/developer/estate/infra/talentidpipeline-infra-cdk/security)**
>
> IAM posture, known risks and the SG-Infra migration direction.

## Notes

* This is a legacy infrastructure pattern. [SG-Infra](/software/developer/estate/infra/sg-infra) is the target pattern for new and migrated systems going forward.
* Despite being legacy, this repo is not going away in the short term. It remains a hard dependency for the VPC across all systems, including SG-Infra itself.
* The shared MongoDB instance has no data isolation between TalentID:Coaching, TalentID:Global, GKL Platform and Telemetry at the infrastructure level.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.