Skip to content

Instantly share code, notes, and snippets.

@excavador
Last active June 29, 2023 11:10
Show Gist options
  • Save excavador/dab94906931717703016df51415d424a to your computer and use it in GitHub Desktop.
Save excavador/dab94906931717703016df51415d424a to your computer and use it in GitHub Desktop.
resources:
- name: "k8s"
id: k8s
subtitle: Kubernetes Cluster
children:
- name: "blueprint-system"
id: blueprint-k8s
abstract: true
children:
- name: deploy
subtitle: Kubernetes Deployment
- name: svc
subtitle: Kubernetes Service
- name: sa
subtitle: Kubernetes Service Account
- name: iam
subtitle: AWS IAM ROLE
- name: pod
subtitle: Kubernetes Pod
- name: namespace "admin"
id: admin
subtitle: Kubernetes Namespace
children:
- name: "class=web host=(admin)"
id: ingress
subtitle: Kubernetes Inress
- name: "admin/backend"
id: backend
instanceOf: blueprint-k8s
children:
- name: "admin/backend"
id: primary
subtitle: "Admin - Backend"
- name: "admin/dynamodb"
id: dynamodb
subtitle: DynamoDB Table
- name: "admin/frontend"
id: frontend
instanceOf: blueprint-k8s
children:
- name: "admin/frontend"
id: primary
subtitle: "Admin - Frontend"
perspectives:
- name: Dependency
relations:
# manual part
- from: k8s/admin/ingress
to: k8s/admin/frontend/svc
label: host=(admin) path=/
- from: k8s/admin/ingress
to: k8s/admin/backend/svc
label: host=(admin) path=/api/admin
- from: k8s/admin/frontend/primary
to: k8s/admin/backend/svc
label: "cross-service connection"
- from: k8s/admin/backend/primary
to: k8s/admin/dynamodb
label: Read/Write
- from: k8s/admin/backend/iam
to: k8s/admin/dynamodb
label: "Grant: Read/Write"
# backend (I would like to see it generated or abstract)
- from: k8s/admin/backend/svc, k8s/admin/backend/deploy
to: k8s/admin/backend/pod
label: Label Selector
- from: k8s/admin/backend/pod
to: k8s/admin/backend/primary
label: primary container
- from: k8s/admin/backend/deploy
to: k8s/admin/backend/sa
label: Associated
- from: k8s/admin/backend/primary
to: k8s/admin/backend/iam
label: AWS STS Assume Role
- from: k8s/admin/backend/sa
to: k8s/admin/backend/iam
arrowDirection: backward
label: AWS EKS IRSA
# backend (I would like to see it generated or abstract)
- from: k8s/admin/frontend/svc, k8s/admin/frontend/deploy
to: k8s/admin/frontend/pod
label: Label Selector
- from: k8s/admin/frontend/pod
to: k8s/admin/frontend/primary
label: primary container
- from: k8s/admin/frontend/deploy
to: k8s/admin/frontend/sa
label: Associated
- from: k8s/admin/frontend/primary
to: k8s/admin/frontend/iam
label: AWS STS Assume Role
- from: k8s/admin/frontend/sa
to: k8s/admin/frontend/iam
arrowDirection: backward
label: AWS EKS IRSA
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment