Files
backstage/plugins/gateway-backend
dependabot[bot] de96a60f7a chore(deps): bump express from 4.21.2 to 4.22.0
Bumps [express](https://github.com/expressjs/express) from 4.21.2 to 4.22.0.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/4.22.0/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.21.2...4.22.0)

---
updated-dependencies:
- dependency-name: express
  dependency-version: 4.22.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-02 20:33:46 +01:00
..
2025-11-25 16:21:32 +00:00
2025-08-07 11:20:29 +02:00

Gateway Backend Plugin

A plugin for managing request routing in distributed Backstage deployments.

Overview

This plugin is designed for organizations that have split their backend plugins across multiple Backstage deployments and implemented a custom Discovery service to resolve backend plugin URLs.

While a custom discovery service handles routing between backend plugins, it doesn't address frontend-to-backend routing without either:

  • Hardcoding URLs in the frontend
  • Implementing a custom reverse proxy

The Gateway Backend Plugin solves this by providing a centralized routing solution in a dedicated "gateway" Backstage deployment. It routes frontend requests to the appropriate backend plugins using the Discovery service, while prioritizing local plugins when available.

Installation

  1. Install the plugin package:
# From your root directory
yarn --cwd packages/backend add @backstage/plugin-gateway-backend
  1. Add the plugin to your backend in packages/backend/src/index.ts:
  const backend = createBackend();
  // ...
+ backend.add(import('@backstage/plugin-gateway-backend'));
  1. Configure the baseUrl in your app-config.yaml to point to your gateway deployment:
backend:
  # The baseUrl of your gateway Backstage deployment
  baseUrl: http://gateway-backstage-backend.example.com