Federation Manager¶
| Version | 2.0.0 (tag v2.0.0-release, 2026-10-23) |
| Helm | subchart federation-manager of oop-platform-chart (needs login) |
| Artefact | labs.etsi.org:5050/oop/code/federation-manager:2.0.0 |
| Specs | fm/ |
| Changes | v1.0.0-release...v2.0.0-release |
The Federation Manager (FM) connects one OpenOP platform to the platforms of partner operators. It implements the GSMA OPG East/Westbound Interface (EWBI) in both roles: as the partner, it answers requests from other operators; as the originating platform, it sends our own requests out.
New in this release¶
FM is rewritten as a FastAPI service backed by PostgreSQL (with Alembic migrations) and NATS JetStream. It serves two surfaces on separate ports:
| Surface | Port | Called by | Authentication |
|---|---|---|---|
EWBI, GSMA OPG.04 v6.0 (API 1.4.0), at /operatorplatform/federation/v1 |
8082 | Partner operators | OAuth2 client credentials, Keycloak realm federation |
Internal API, at /internal/* |
8083 | OEG and SRM | None; reachable only inside the cluster |
- As the partner: create, read and delete a federation and report its health; offer zones and accept zone subscriptions; onboard applications (including Helm charts), install and remove them through SRM; answer QoD sessions and device location queries through SRM; receive partner status callbacks.
- As the originating platform (driven by operators through OEG and the Portal): the partner registry, one agreement per partner, the federation lifecycle, partner zone subscriptions, and federated deploy and terminate handed over by SRM.
- Topology hiding on every EWBI response.
- Partner secrets are stored encrypted (
FM_PARTNER_SECRET_KEY). - Federation at startup with every active partner, optional (
FM_BOOTSTRAP_FEDERATION).
Breaking changes¶
- OPG.04 v4.0 is replaced by OPG.04 v6.0 (EWBI API 1.4.0). The vendored GSMA spec and the OOP profile overlay are under
docs/in the repository. - API documentation moves from
/ui/and/openapi.yamlto/docsand/openapi.json. - Ports. The EWBI moves from 8990 to 8082. The internal API is served only on 8083.
- Separate internal API. The
X-InternalandX-Partner-API-Rootheaders are gone; operator calls go to/internal/*, normally through OEG. - PostgreSQL replaces MongoDB, and FM needs NATS JetStream.
- Configuration is
FM_*environment variables instead ofsrc/conf/config.cfg. They are listed in the README. - Health is the GSMA
GetFederationHealthoperation instead of the heartbeat route. - Partner tokens must be issued for this FM; tokens for another audience are refused.
Upgrade notes¶
- Install fresh with
oop-platform2.0.0; nothing is migrated from 1.0.0. - Register partners again, in the Portal's Federation page or through OEG's
/platform/v1/federation/partners. - Back up the
federation-manager-keysSecret (partner-secret-key) together with the database. A different key cannot read the stored partner secrets. - Give every deployment its own
FM_EVENT_CONSUMER_DURABLEname.
Known limitations¶
The full status is in the spec's Implementation & Delivery › Delivery Plan. The main ones:
RenewFederationandUpdateFederationare not implemented.- Partners authenticate with client credentials only. mTLS on the EWBI is deferred (ADR-0042).
- No per-partner rate limits, and no admin API for routing rules.
- Inbound deploys are not capacity-checked with SRM.
- Not built: inbound Device Status, federation usage records and the transaction query API.
- No metrics.