Skip to content

Latest commit

 

History

History
124 lines (89 loc) · 9.16 KB

File metadata and controls

124 lines (89 loc) · 9.16 KB

GCO Code Flowcharts

This directory holds auto-generated control-flow diagrams for the Python source files listed below. Each target produces an interactive flowchart.js HTML page and (if Playwright is available) a rendered PNG.

Interactive HTML is the primary artifact — open it in any browser to pan, zoom, and export SVG/PNG directly. The PNGs are included for embedding in READMEs and pull requests where JS can't run.

Table of Contents

Regeneration

# All targets
python diagrams/code_diagrams/generate.py

# A single target
python diagrams/code_diagrams/generate.py \
    --target lambda/analytics-presigned-url/handler.py:lambda_handler

# HTML only (skip the Playwright PNG step)
python diagrams/code_diagrams/generate.py --skip-png

# Don't insert/refresh the ``# Flowchart:`` markers in source files
python diagrams/code_diagrams/generate.py --skip-marker

# Remove every existing marker from the source tree and exit
# (useful when tearing the feature down or before a big refactor
# of placement rules)
python diagrams/code_diagrams/generate.py --strip-markers

See the Prerequisites section below for one-time browser install steps.

Prerequisites

Install the project's diagrams extra, which pins pyflowchart and playwright to known-good versions:

pip install -e '.[diagrams]'
playwright install chromium

Without Playwright's browser, the generator still writes HTML and skips the PNG step with a warning.

Flowchart index

Entries below are grouped by top-level directory and listed in source order. Each source file may contribute more than one flowchart if it has multiple charted entry points.

app.py/

  • ./
    • CDK app entry point (app.py::main) — app.py::mainHTML · PNG

cli/

  • cli/
    • gco jobs submit — direct kubectl apply path — cli/jobs.py::JobManager.submit_jobHTML · PNG
    • gco jobs submit-sqs — SQS-backed submission path — cli/jobs.py::JobManager.submit_job_sqsHTML · PNG
    • Cognito SRP authentication (gco analytics studio login) — cli/analytics_user_mgmt.py::srp_authenticateHTML · PNG
    • Studio presigned-URL fetch (gco analytics studio login) — cli/analytics_user_mgmt.py::fetch_studio_urlHTML · PNG
    • gco stacks deploy-all — orchestrated multi-stack deploy — cli/stacks.py::StackManager.deploy_orchestratedHTML · PNG
    • gco stacks destroy-all — orchestrated multi-stack destroy — cli/stacks.py::StackManager.destroy_orchestratedHTML · PNG
    • gco inference deploy — multi-region endpoint deploy — cli/inference.py::InferenceManager.deployHTML · PNG
    • gco inference canary — weighted canary rollout — cli/inference.py::InferenceManager.canary_deployHTML · PNG

gco/

  • gco/stacks/
    • Global stack constructor (Global Accelerator, SSM, DynamoDB) — gco/stacks/global_stack.py::GCOGlobalStack.__init__HTML · PNG
    • API Gateway stack constructor (REST API + IAM + WAF) — gco/stacks/api_gateway_global_stack.py::GCOApiGatewayGlobalStack.__init__HTML · PNG
    • Regional stack constructor (VPC, EKS, ALB, SQS, EFS) — gco/stacks/regional_stack.py::GCORegionalStack.__init__HTML · PNG
    • Regional API Gateway stack constructor (private access) — gco/stacks/regional_api_gateway_stack.py::GCORegionalApiGatewayStack.__init__HTML · PNG
    • Monitoring stack constructor (CloudWatch + alarms + SNS) — gco/stacks/monitoring_stack.py::GCOMonitoringStack.__init__HTML · PNG
    • Analytics stack constructor (KMS, VPC, EFS, Studio, EMR, Cognito) — gco/stacks/analytics_stack.py::GCOAnalyticsStack.__init__HTML · PNG
    • Analytics stack SageMaker execution role (hyperpod/canvas branches) — gco/stacks/analytics_stack.py::GCOAnalyticsStack._create_execution_role_and_grantsHTML · PNG
    • Analytics stack Studio domain (Canvas override branch) — gco/stacks/analytics_stack.py::GCOAnalyticsStack._create_studio_domainHTML · PNG

lambda/

  • lambda/alb-header-validator/

    • ALB Header Validator Lambda — lambda/alb-header-validator/handler.py::lambda_handlerHTML · PNG
  • lambda/analytics-cleanup/

    • Analytics Cleanup Lambda (stack-delete drain) — lambda/analytics-cleanup/handler.py::handlerHTML · PNG
  • lambda/analytics-presigned-url/

    • Analytics Presigned-URL Lambda (SageMaker Studio login) — lambda/analytics-presigned-url/handler.py::lambda_handlerHTML · PNG
  • lambda/api-gateway-proxy/

    • API Gateway Proxy Lambda — lambda/api-gateway-proxy/handler.py::lambda_handlerHTML · PNG
  • lambda/cross-region-aggregator/

    • Cross-Region Aggregator Lambda — lambda/cross-region-aggregator/handler.py::lambda_handlerHTML · PNG
  • lambda/drift-detection/

    • CloudFormation Drift Detection Lambda — lambda/drift-detection/handler.py::lambda_handlerHTML · PNG
  • lambda/ga-registration/

    • Global Accelerator Endpoint Registration Lambda — lambda/ga-registration/handler.py::lambda_handlerHTML · PNG
  • lambda/helm-installer/

    • Helm Installer Lambda (CFN custom resource) — lambda/helm-installer/handler.py::lambda_handlerHTML · PNG
  • lambda/kubectl-applier-simple/

    • Kubectl Applier Lambda (CFN custom resource) — lambda/kubectl-applier-simple/handler.py::lambda_handlerHTML · PNG
  • lambda/regional-api-proxy/

    • Regional API Gateway Proxy Lambda — lambda/regional-api-proxy/handler.py::lambda_handlerHTML · PNG
  • lambda/secret-rotation/

    • Secrets Manager Rotation Lambda — lambda/secret-rotation/handler.py::lambda_handlerHTML · PNG