Skip to content

Commit

Permalink
Add infrastructure diagram for web site
Browse files Browse the repository at this point in the history
MCP asked for this.
  • Loading branch information
lpsinger committed May 24, 2024
1 parent 8a7ad20 commit 16084da
Show file tree
Hide file tree
Showing 3 changed files with 59 additions and 0 deletions.
6 changes: 6 additions & 0 deletions app/routes/docs.contributing.deployment/route.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import { Link } from '@remix-run/react'
import { Alert } from '@trussworks/react-uswds'

import deploymentScreenshot from './screenshot.png'
import websiteArchitectureImg from './website.svg'

# Deployment

Expand All @@ -20,6 +21,11 @@ We provision all AWS resources using **[infrastructure as code](https://en.wikip

We perform code and infrastructure changes automatically using **[continuous deployment](https://en.wikipedia.org/wiki/Continuous_deployment)** on [GitHub Actions](https://github.com/features/actions) (see our [deployment workflow](https://github.com/nasa-gcn/gcn.nasa.gov/blob/main/.github/workflows/deploy.yml)).

<img
src={websiteArchitectureImg}
alt="Flow chart of GCN web site architecture"
/>

## Stages

There are three full deployments of GCN. Each **deployment stage** is in a separate AWS account and on a separate subdomain:
Expand Down
50 changes: 50 additions & 0 deletions app/routes/docs.contributing.deployment/website.drawio
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
<mxfile modified="2024-05-24T18:11:02.736Z" host="Electron" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/24.4.8 Chrome/124.0.6367.207 Electron/30.0.6 Safari/537.36" etag="QmK7SSiUryGS4jbT5zuB" version="24.4.8" type="device">
<diagram id="Ht1M8jgEwFfnCIfOTk4-" name="Page-1">
<mxGraphModel dx="1114" dy="999" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="UEzPUAAOIrF-is8g5C7q-74" value="AWS Cloud" style="points=[[0,0],[0.25,0],[0.5,0],[0.75,0],[1,0],[1,0.25],[1,0.5],[1,0.75],[1,1],[0.75,1],[0.5,1],[0.25,1],[0,1],[0,0.75],[0,0.5],[0,0.25]];outlineConnect=0;gradientColor=none;html=1;whiteSpace=wrap;fontSize=12;fontStyle=0;shape=mxgraph.aws4.group;grIcon=mxgraph.aws4.group_aws_cloud_alt;strokeColor=#232F3E;fillColor=none;verticalAlign=top;align=left;spacingLeft=30;fontColor=#232F3E;dashed=0;labelBackgroundColor=#ffffff;container=1;pointerEvents=0;collapsible=0;recursiveResize=0;" parent="1" vertex="1">
<mxGeometry x="130" y="80" width="430" height="280" as="geometry" />
</mxCell>
<mxCell id="Ba9Siq_X2cwzwzmQdv5s-13" value="CloudFront&amp;nbsp;&lt;span style=&quot;background-color: initial;&quot;&gt;(content&lt;/span&gt;&lt;div&gt;&lt;span style=&quot;background-color: initial;&quot;&gt;delivery network)&lt;/span&gt;&lt;/div&gt;" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#8C4FFF;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.cloudfront;" vertex="1" parent="UEzPUAAOIrF-is8g5C7q-74">
<mxGeometry x="310" y="40" width="78" height="78" as="geometry" />
</mxCell>
<mxCell id="Ba9Siq_X2cwzwzmQdv5s-14" value="API Gateway&lt;div&gt;(URL routing)&lt;/div&gt;" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#8C4FFF;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.api_gateway;" vertex="1" parent="UEzPUAAOIrF-is8g5C7q-74">
<mxGeometry x="190" y="40" width="78" height="78" as="geometry" />
</mxCell>
<mxCell id="Ba9Siq_X2cwzwzmQdv5s-15" value="Lambda" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#ED7100;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.lambda;" vertex="1" parent="UEzPUAAOIrF-is8g5C7q-74">
<mxGeometry x="30" y="40" width="78" height="78" as="geometry" />
</mxCell>
<mxCell id="Ba9Siq_X2cwzwzmQdv5s-16" value="S3 (static assets)" style="sketch=0;points=[[0,0,0],[0.25,0,0],[0.5,0,0],[0.75,0,0],[1,0,0],[0,1,0],[0.25,1,0],[0.5,1,0],[0.75,1,0],[1,1,0],[0,0.25,0],[0,0.5,0],[0,0.75,0],[1,0.25,0],[1,0.5,0],[1,0.75,0]];outlineConnect=0;fontColor=#232F3E;fillColor=#7AA116;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.s3;" vertex="1" parent="UEzPUAAOIrF-is8g5C7q-74">
<mxGeometry x="30" y="160" width="78" height="78" as="geometry" />
</mxCell>
<mxCell id="Ba9Siq_X2cwzwzmQdv5s-19" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="UEzPUAAOIrF-is8g5C7q-74" source="Ba9Siq_X2cwzwzmQdv5s-14" target="Ba9Siq_X2cwzwzmQdv5s-13">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="Ba9Siq_X2cwzwzmQdv5s-23" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="UEzPUAAOIrF-is8g5C7q-74" source="Ba9Siq_X2cwzwzmQdv5s-15" target="Ba9Siq_X2cwzwzmQdv5s-14">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="Ba9Siq_X2cwzwzmQdv5s-29" value="/*" style="edgeLabel;html=1;align=center;verticalAlign=bottom;resizable=0;points=[];" vertex="1" connectable="0" parent="Ba9Siq_X2cwzwzmQdv5s-23">
<mxGeometry x="-0.0732" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="Ba9Siq_X2cwzwzmQdv5s-24" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.75;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="UEzPUAAOIrF-is8g5C7q-74" source="Ba9Siq_X2cwzwzmQdv5s-16" target="Ba9Siq_X2cwzwzmQdv5s-14">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="Ba9Siq_X2cwzwzmQdv5s-31" value="/_static/*" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="Ba9Siq_X2cwzwzmQdv5s-24">
<mxGeometry x="0.0521" y="-1" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="Ba9Siq_X2cwzwzmQdv5s-10" value="End Users" style="sketch=0;outlineConnect=0;gradientColor=none;fontColor=#545B64;strokeColor=none;fillColor=#879196;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.illustration_users;pointerEvents=1" vertex="1" parent="1">
<mxGeometry x="610" y="109" width="100" height="100" as="geometry" />
</mxCell>
<mxCell id="Ba9Siq_X2cwzwzmQdv5s-20" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;" edge="1" parent="1" source="Ba9Siq_X2cwzwzmQdv5s-13" target="Ba9Siq_X2cwzwzmQdv5s-10">
<mxGeometry relative="1" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
3 changes: 3 additions & 0 deletions app/routes/docs.contributing.deployment/website.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 16084da

Please sign in to comment.