Skip to content

WebGrip Organisation Public PlatformΒΆ

Welcome to the complete documentation for the WebGrip Organisation Public Platform - the foundational infrastructure repository that powers our Kubernetes-based development and operations platform.

What is This Repository?ΒΆ

This repository serves as the single source of truth for:

  • πŸ—οΈ Infrastructure Configuration: Kubernetes cluster setup via Helm charts
  • πŸ“‹ Service Catalog: Backstage entity definitions for domains, systems, and components
  • βš™οΈ CI/CD Automation: GitHub Actions workflows for platform operations
  • πŸ” Secret Management: SOPS-encrypted configuration via Age
  • πŸ“Š Observability: Grafana dashboards and monitoring configuration
  • πŸ“š Architecture Decisions: ADRs documenting platform choices

Quick NavigationΒΆ

  • πŸ—οΈ Cluster Architecture

    Core infrastructure, networking, security model, and resource management

  • πŸ”§ Platform Components

    Ingress, certificates, monitoring, CI/CD infrastructure, and secrets

  • πŸ“‹ Service Catalog

    Backstage integration, domains, systems, and component registry

  • πŸ“– Operations Runbooks

    Deployment procedures, monitoring, incident response, and maintenance

  • πŸ‘¨β€πŸ’» Developer Workflows

    Onboarding guide, application templates, CI/CD patterns, and local development

Platform OverviewΒΆ

Key TechnologiesΒΆ

Technology Purpose Configuration
Kubernetes Container orchestration System definition
Helm Package management Charts directory
Traefik Ingress controller Traefik charts
cert-manager Certificate automation cert-manager chart
Prometheus Monitoring & metrics Monitoring stack
Grafana Observability dashboards Dashboard configs
GitHub Actions CI/CD automation Workflow definitions
Backstage Service catalog Entity definitions
SOPS Secret encryption Secret management

Repository StructureΒΆ

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
organisation-public/
β”œβ”€β”€ catalog/                    # Backstage entity definitions
β”‚   β”œβ”€β”€ domains/               # Business domains
β”‚   β”œβ”€β”€ systems/               # Technical systems  
β”‚   β”œβ”€β”€ components/            # Service components
β”‚   β”œβ”€β”€ groups/                # Team definitions
β”‚   └── resources/             # Infrastructure resources
β”œβ”€β”€ ops/                       # Operations configuration
β”‚   β”œβ”€β”€ helm/                  # Kubernetes Helm charts
β”‚   └── secrets/               # Encrypted secrets (SOPS)
β”œβ”€β”€ docs/                      # Documentation
β”‚   β”œβ”€β”€ techdocs/              # This documentation site
β”‚   └── adrs/                  # Architecture Decision Records
β”œβ”€β”€ .github/workflows/         # CI/CD automation
└── grafana-dashboards/        # Monitoring dashboards

Getting StartedΒΆ

New to the platform? Start here:

  1. πŸ“‹ Prerequisites - Required tools and access
  2. πŸ”§ Platform Setup - Connect to the cluster
  3. πŸš€ First Deployment - Deploy your first application
  4. πŸ“Š Monitoring - Access dashboards and metrics

Quick CommandsΒΆ

Essential commands for platform operations:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
# Connect to cluster
aws eks update-kubeconfig --name staging-eks-cluster --region eu-west-1

# View platform status
kubectl get pods -A

# Access Grafana dashboards
make view-grafana

# View Traefik dashboard  
make view-traefik

# Decrypt secrets for development
make decrypt-secrets SECRETS_DIR=./ops/secrets/[component-name]

πŸ’‘ Pro Tip: All Makefile targets are documented in the Maintenance Tasks section.

Support & ContributingΒΆ

Architecture DecisionsΒΆ

Recent architectural decisions that shape this platform:


πŸ“š Documentation Maintenance: This documentation is automatically generated and maintained. To update, see TechDocs maintenance guide.