Skip to content

Phase 7: Internal Developer Portals (IDP)

πŸ“– Deep-Dive Index

1. Platform Engineering & DevEx

  • The Goal: Abstracting all previous phases (Terraform, K8s, GitOps) behind a self-service GUI for application developers.
  • Backstage Architecture: Frontend (React), Backend (Node.js), PostgreSQL database.

2. Core Components

  • Software Catalog: catalog-info.yaml entity definitions (Components, APIs, Resources, Systems, Domains).
  • TechDocs: Markdown docs living alongside code, rendered centrally.
  • Software Templates (Scaffolder): Nunjucks templating, triggering custom actions (GitHub Actions, Jenkins).

πŸ› οΈ Job-Essential Exercises

  1. Scaffolding the Portal:
  2. Use npx @backstage/create-app to launch a local IDP. Register an existing GitHub repository to the Backstage Software Catalog.
  3. The Golden Path Template:
  4. Write a template.yaml for Backstage. The UI should ask the developer for a Project Name. When submitted, Backstage should automatically create a new GitHub repository, inject a boilerplate Python application into it, and inject the GitHub Actions DevSecOps pipeline you built in Phase 3.