Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
4dbdd47
docs(infra): add aws-infra folder with initial pipeline documentation
bhagyashreewagh Nov 13, 2025
e91ea76
docs(infra): add Elastic Beanstalk PassRole policy under aws-infra/po…
bhagyashreewagh Nov 13, 2025
176badd
Delete aws-infra/aws-infra/policies directory
bhagyashreewagh Nov 13, 2025
daebb37
Create iam_elastic_beanstalk_policy.json
bhagyashreewagh Nov 13, 2025
1fa6843
docs(readme): add complete AWS deployment and infrastructure document…
bhagyashreewagh Nov 13, 2025
e449df2
docs: add full AWS deployment and infrastructure guide to README
bhagyashreewagh Nov 14, 2025
68fdadb
Update README.md
bhagyashreewagh Nov 21, 2025
9cd267c
Update README.md
bhagyashreewagh Nov 21, 2025
31fc8b4
Update README.md
bhagyashreewagh Nov 21, 2025
217e619
docs(readme): update deployment guide with clearer examples and confi…
bhagyashreewagh Dec 5, 2025
87c8b92
Correct grammatical error in README.md
bhagyashreewagh Dec 7, 2025
2e41a6d
Update README.md
bhagyashreewagh Dec 8, 2025
4c02615
Update README.md
bhagyashreewagh Dec 8, 2025
68b8002
Create aws-architecture.png
bhagyashreewagh Dec 8, 2025
44c10a2
Add files via upload
bhagyashreewagh Dec 8, 2025
cf6c84f
Rename White Beige Minimal Flowchart Diagram Graph (1).png to aws_arc…
bhagyashreewagh Dec 8, 2025
e546840
Delete aws-infra/images/aws-architecture.png
bhagyashreewagh Dec 8, 2025
366a7dd
Update README.md
bhagyashreewagh Dec 8, 2025
7e75828
Add files via upload
bhagyashreewagh Dec 8, 2025
b754870
Delete aws-infra/images/aws_architecture.png
bhagyashreewagh Dec 8, 2025
eac6e24
Rename White Beige Minimal Flowchart Diagram Graph (2).png to aws_arc…
bhagyashreewagh Dec 8, 2025
a0cbebe
Update README.md
bhagyashreewagh Dec 8, 2025
c30fe43
Add files via upload
bhagyashreewagh Dec 8, 2025
c5dd9fc
Rename White Beige Minimal Flowchart Diagram Graph.svg to aws_archite…
bhagyashreewagh Dec 8, 2025
1b0e8eb
Delete aws-infra/images/aws_architecture.png
bhagyashreewagh Dec 8, 2025
68003e4
Update README.md
bhagyashreewagh Dec 8, 2025
20afc50
Rename aws_architecture.svg to aws_architecture_backend.svg
bhagyashreewagh Dec 8, 2025
cb7947c
Add files via upload
bhagyashreewagh Dec 8, 2025
ea75cf1
Delete aws-infra/images/2.svg
bhagyashreewagh Dec 8, 2025
46bfdbd
Add files via upload
bhagyashreewagh Dec 8, 2025
c2fe428
Add Antenna UI deployment guide to README
bhagyashreewagh Dec 8, 2025
91494df
Revise Antenna deployment documentation
bhagyashreewagh Dec 8, 2025
e67b5b4
Fix header formatting in README.md
bhagyashreewagh Dec 8, 2025
d606342
Revise README for backend services and security notes
bhagyashreewagh Dec 9, 2025
03a3ba3
Add Elastic Beanstalk configuration template
bhagyashreewagh Dec 10, 2025
9b6bd3a
Add Dockerrun.aws.json_template for AWS deployment
bhagyashreewagh Dec 10, 2025
f9fab02
Create storage.py
bhagyashreewagh Dec 10, 2025
9803c04
Merge branch 'RolnickLab:main' into feat/aws-pipeline
bhagyashreewagh Dec 10, 2025
35fb523
Refactor AWS S3 and MinIO configuration logic
bhagyashreewagh Dec 11, 2025
fca0e89
Add experimental warning to AWS deployment README
bhagyashreewagh Dec 26, 2025
6658ea1
Update storage.py
bhagyashreewagh Dec 26, 2025
ade4e95
Update storage.py
bhagyashreewagh Dec 26, 2025
c3bfea5
Add secrets manager implementation for AWS
bhagyashreewagh Jan 30, 2026
1fbe45a
Add dependencies to requirements.txt for AWS infra
bhagyashreewagh Jan 30, 2026
2d4a3e2
Add Redis ElastiCache configuration with Pulumi
bhagyashreewagh Jan 30, 2026
f1fc02d
Add RDS instance configuration with monitoring
bhagyashreewagh Jan 30, 2026
70cc82c
Add Docker image build and push logic for AWS ECR
bhagyashreewagh Jan 30, 2026
bc3aaa9
Add IAM roles and policies for ECS and EB
bhagyashreewagh Jan 30, 2026
3f2e14f
Add script to create AWS ECR repositories
bhagyashreewagh Jan 30, 2026
7c89e94
Add AWS Elastic Beanstalk infrastructure setup
bhagyashreewagh Jan 30, 2026
31c6e6d
Add CloudFront configuration and S3 bucket setup
bhagyashreewagh Jan 30, 2026
791f493
Initialize AWS infrastructure deployment script
bhagyashreewagh Jan 30, 2026
efe3363
Delete aws-infra/policies directory
bhagyashreewagh Jan 30, 2026
ba59265
Add S3 bucket configuration with ownership and encryption
bhagyashreewagh Jan 30, 2026
9f5a568
Import S3 modules in storage init file
bhagyashreewagh Jan 30, 2026
7b341ff
Add S3 bucket policies and public access settings
bhagyashreewagh Jan 30, 2026
b756454
Add installation guide for Pulumi on AWS
bhagyashreewagh Jan 30, 2026
639b482
Add VPC configuration using AWS default VPC
bhagyashreewagh Jan 30, 2026
880066a
Implement AWS subnets for Redis and RDS
bhagyashreewagh Jan 30, 2026
a7ebde5
Add security groups for EB, RDS, and Redis
bhagyashreewagh Jan 30, 2026
7f89036
Remove specific IPs from security group rules
bhagyashreewagh Jan 30, 2026
69d260c
Create private route table for RDS subnets
bhagyashreewagh Jan 30, 2026
671d254
Update installation.md
bhagyashreewagh Jan 30, 2026
bc3de5e
Update eb.py
bhagyashreewagh Jan 30, 2026
22aa1cc
Update s3.py
bhagyashreewagh Jan 30, 2026
d5930d4
Rename security_groups.py to security_group.py
bhagyashreewagh Feb 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
637 changes: 637 additions & 0 deletions aws-infra/README.md

Large diffs are not rendered by default.

74 changes: 74 additions & 0 deletions aws-infra/__main__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
import pulumi

# ---------------------------------------------------------
# Optional deploy flags
# ---------------------------------------------------------
config = pulumi.Config()
DEPLOY_EB = config.get_bool("deployEb") or False
BUILD_IMAGES = config.get_bool("buildImages") or False
DEPLOY_FRONTEND = config.get_bool("deployFrontend") or False


# =========================================================
# CREATE BASE INFRA
# (networking, storage, IAM, ECR, Redis, RDS)
# =========================================================

# --- Networking ---
from networking.vpc import default_vpc
from networking import subnets
from networking import routes
from networking.security_group import *

# --- Storage (S3 + policies) ---
from storage import *

# --- IAM Roles ---
import iam_roles

# --- ECR repos (needed by images build + EB dockerrun) ---
import ecr

# --- Redis + RDS ---
import redis
import rds


# =========================================================
# 1) BUILD DOCKER IMAGES (ONLY IF REQUESTED)
# =========================================================
if BUILD_IMAGES:
import images


# =========================================================
# 2) DEPLOY EB (ONLY IF REQUESTED)
# =========================================================
if DEPLOY_EB:
# EB requires Dockerrun/zip generation code,
# so always import images when deploying EB
if not BUILD_IMAGES:
import images

# Secrets Manager:
# - creates manual secrets (django key, sendgrid, sentry)
# - exports AWS-generated RDS master secret arn
# - constructs EB_ENV map
import secrets_manager

# Elastic Beanstalk environment
import eb

# =========================================================
# 3) DEPLOY FRONTEND (ONLY IF REQUESTED)
# IMPORTANT: must come AFTER EB import, because cloudfront.py
# imports env_pulumi from eb.py for backend origin.
# =========================================================
if DEPLOY_FRONTEND:
import cloudfront

else:
# If EB is not deployed in this run, we cannot deploy frontend proxying to EB
# because cloudfront.py expects env_pulumi from eb.py.
if DEPLOY_FRONTEND:
raise Exception("deployFrontend=true requires deployEb=true in the same run (CloudFront backend origin uses EB env URL).")
Loading