You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .github/prompts/architecture.06-infrastructure-diagram.prompt.md
+19-19Lines changed: 19 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,22 +1,22 @@
1
1
---
2
2
agent: agent
3
-
description: Produce AWS infrastructure diagram from Terraform (evidence-first, consistent with C4 container naming)
3
+
description: Produce AWS/Azure infrastructure diagram from Terraform (evidence-first, consistent with C4 container naming)
4
4
---
5
5
6
6
**Mandatory preparation:** read [architecture overview](../instructions/includes/architecture-baseline.include.md) instructions in full and follow strictly its rules before executing any step below.
7
7
8
8
## Goal 🎯
9
9
10
-
Create (or update) the [AWS infrastructure page](../../docs/architecture/aws-infrastructure.md) and [AWS infrastructure diagram](../../docs/architecture/aws-infrastructure.drawio), then export the diagram to PNG once complete.
10
+
Create (or update) the [AWS/Azure infrastructure page](../../docs/architecture/cloud-infrastructure.md) and [AWS/Azure infrastructure diagram](../../docs/architecture/cloud-infrastructure.drawio), then export the diagram to PNG once complete.
11
11
12
12
Also ensure this work is linked from: [architecture overview](../../docs/architecture/README.md) output.
13
13
14
14
Constraints:
15
15
16
16
- Derive every element from Terraform/IaC code (no speculation)
17
-
- Use AWS architecture styling, icons, and colour palette as provided by the official AWS icon set packaged in Draw.io
17
+
- Use AWS/Azure architecture styling, icons, and colour palette as provided by the official AWS/Azure icon sets packaged in Draw.io
18
18
- Keep diagram layers/groups consistent (e.g. networking, compute, data stores)
19
-
- Label AWS accounts/regions when known
19
+
- Label AWS/Azure accounts/regions when known
20
20
- Keep names consistent with the C4 Container diagram where possible (service/container names), without inventing mappings
21
21
22
22
---
@@ -33,7 +33,7 @@ Constraints:
33
33
34
34
For each Terraform root/module:
35
35
36
-
1. List AWS providers and aliases in use.
36
+
1. List AWS/Azure providers and aliases in use.
37
37
2. Capture declared resources/data sources grouped by capability:
@@ -79,33 +79,33 @@ For each Terraform root/module:
79
79
80
80
### 3) Create or update draw.io diagram
81
81
82
-
1. Open `aws-infrastructure.drawio`.
82
+
1. Open `cloud-infrastructure.drawio`.
83
83
2. Reproduce the infrastructure based on Terraform evidence:
84
-
- Place AWS icons for each major resource (ALB, ECS Service, RDS, etc.)
84
+
- Place AWS/Azure icons for each major resource (ALB, ECS Service, RDS, etc.)
85
85
- Connect components to show traffic/data direction (ingress → compute → data)
86
86
- Annotate connections with protocols/ports if Terraform security groups or listeners provide that info
87
87
3. Use Draw.io layers or groups to represent environments if multiple share the same page; otherwise create duplicate pages per environment.
88
88
4. Record unresolved items in a dedicated **Unknown from code** sticky note inside the diagram (non-exporting layer) to maintain transparency.
89
-
5. Where you can map an AWS "compute" resource to a deployable unit in the repo (from `repository-map.md` / C4 container diagram), label it accordingly and include a short evidence pointer. If you cannot map it, keep the label Terraform-derived and record **Unknown from code – map resource to deployable**.
89
+
5. Where you can map an AWS/Azure "compute" resource to a deployable unit in the repo (from `repository-map.md` / C4 container diagram), label it accordingly and include a short evidence pointer. If you cannot map it, keep the label Terraform-derived and record **Unknown from code – map resource to deployable**.
- Link to the draw.io file (and PNG/SVG if exported)
95
95
- Short summary of what the diagram covers (environments, date of last refresh)
96
-
- Instructions to regenerate (e.g. "Open in draw.io desktop/web and refresh AWS icons from Terraform module XYZ")
97
-
2. Add an **Evidence** section to `aws-infrastructure.md`, referencing Terraform files for each major diagram element.
96
+
- Instructions to regenerate (e.g. "Open in draw.io desktop/web and refresh AWS/Azure icons from Terraform module XYZ")
97
+
2. Add an **Evidence** section to `cloud-infrastructure.md`, referencing Terraform files for each major diagram element.
98
98
3. If automation or scripts exist for exporting diagrams, document usage (command, output path) or record **Unknown from code – locate diagram export tooling**.
99
99
100
100
---
101
101
102
102
## Diagram style requirements
103
103
104
-
- Use the official AWS 2024 icon set within Draw.io (available via _Arrange → Insert → Advanced → AWS Architecture_ if not already loaded).
104
+
- Use the official AWS/Azure 2024 icon set within Draw.io (available via _Arrange → Insert → Advanced → AWS/Azure Architecture_ if not already loaded).
105
105
- Maintain consistent sizing and spacing; align elements using Draw.io guides.
106
106
- Label subnets, route tables, and security zones directly on the canvas.
107
107
- Use muted background colours for groups (VPC, AZ) to keep icons readable.
108
-
- For external systems or SaaS providers not in AWS, use generic grey boxes with clear labels.
108
+
- For external systems or SaaS providers not in AWS/Azure, use generic grey boxes with clear labels.
109
109
110
110
### Mandatory naming and labelling conventions
111
111
@@ -114,7 +114,7 @@ Every infrastructure diagram must follow these naming rules verbatim (update exi
114
114
1.**Resource nodes:** Use lowercase kebab-case `{service}-{role}-{scope}`, e.g. `alb-public-edge`, `ecs-task-api`, `rds-primary-app`. Names must map to Terraform modules, resource blocks, or tags so reviewers can trace them back.
115
115
2.**Environment overlays:** Prefix or suffix with the environment name when multiple environments appear on the same page, e.g. `vpc-app-prod`, `ecs-service-orders-stg`.
116
116
3.**Subnet and security groups:** Name subnets and zones as `{visibility}-subnet-{az}` (`public-subnet-a`, `private-subnet-b`) and security zones as `{zone}-security-zone`.
117
-
4.**Accounts and regions:** Label AWS accounts with friendly name plus account ID (`acct-core (123456789012)`) and regions as `region-<code>` (`region-eu-west-2`). Place these labels on grouping containers.
117
+
4.**Accounts and regions:** Label AWS/Azure accounts with friendly name plus account ID (`acct-core (123456789012)`) and regions as `region-<code>` (`region-eu-west-2`). Place these labels on grouping containers.
118
118
5.**Arrow titles:** Label every arrow with `{protocol}/{port}` or `{action}` (e.g. `HTTPS/443`, `Publish events`, `Read replicas`). If both apply, prefer `HTTPS/443 – public ingress`.
119
119
6.**Legend:** Include a small legend per diagram page describing arrow colours, border styles, and environment colouring (e.g. "orange arrows = ingress traffic", "blue arrows = data writes").
120
120
7.**Unknowns:** Any placeholder or dotted element must be suffixed with `-pending` and accompanied by an **Unknown from code** sticky note referencing the missing evidence.
@@ -123,7 +123,7 @@ Every infrastructure diagram must follow these naming rules verbatim (update exi
123
123
124
124
## Quality gates
125
125
126
-
1. Validate the Draw.io file opens without errors (use the Draw.io desktop/web validator) and retains AWS icon library references.
126
+
1. Validate the Draw.io file opens without errors (use the Draw.io desktop/web validator) and retains AWS/Azure icon library references.
127
127
2. If a PNG/SVG export is stored, ensure it updates after modifications.
128
128
3. Confirm Terraform formatting via `terraform fmt -check` in any touched directories when the prompt automation makes code changes (if part of its workflow).
129
129
4. Ensure README links render correctly in Markdown (relative paths).
@@ -144,7 +144,7 @@ For every logical cluster (networking, compute, data, integration):
0 commit comments