bss-oss-pcf-nextgen 0.3.2

Cloud-native 5G PCF: SBA-style policy edge, intent engine, closed-loop control, digital twin simulation, Policy-as-a-Service, and CHF-ready monetization
Documentation

bss-oss-pcf-nextgen

Crates.io Documentation

Cloud-native 5G PCF edge: SBA-style REST APIs on top of bss-oss-pcf, with intent translation, Policy-as-a-Service tenant overlays, monetization quotes, digital twin simulation, closed-loop suggestions, and a marketplace stub.

Full documentation: docs/bss-oss-pcf-nextgen.md (user guide, HTTP API, metrics, embedding, deployment, limitations).

Smoke tests (no Docker): cargo test -p bss-oss-pcf-nextgen --test http_smoke — or run the server and execute scripts/smoke-pcf-nextgen.ps1.

Install from crates.io

cargo install bss-oss-pcf-nextgen

Requires a published bss-oss-pcf compatible with the crate’s dependency version (see Cargo.toml).

Run locally (from this repository)

cargo run -p bss-oss-pcf-nextgen

Defaults:

  • Listen: 0.0.0.0:9080 (override with PCF_BIND)
  • Optional: KAFKA_BROKERS, REDIS_URL, DATABASE_URL, OTEL_EXPORTER_OTLP_ENDPOINT
  • Enforce Authorization: Bearer on API routes: PCF_REQUIRE_BEARER=true

Key endpoints

Path Purpose
POST /npcf-sba/v1/policy/decision Fast policy decision (+ optional tenant_id)
POST /npcf-sba/v1/policy/intent Intent → policy
POST /paas/v1/tenants/{tenant_id}/policy/decision Multi-tenant enterprise overlay
POST /npcf-sba/v1/simulation/run Digital twin (shadow)
POST /npcf-sba/v1/closed-loop/telemetry Telemetry → adjustment hint
POST /nchf-ready/v1/quote CHF-ready monetization quote
GET /marketplace/v1/listings Marketplace listings
GET /metrics Prometheus

OpenAPI & Swagger UI (no Docker)

With the server running, open in a browser:

http://127.0.0.1:9080/swagger-ui/

The UI loads the spec from http://127.0.0.1:9080/openapi/pcf-nextgen-sba.yaml (same origin, no CORS). The YAML is embedded at build time from crates/pcf-nextgen/openapi/pcf-nextgen-sba.yaml (so cargo publish includes it); keep that file in sync with openapi/pcf-nextgen-sba.yaml at the repository root.

Swagger assets are loaded from unpkg.com (needs network in the browser). Offline: use Postman with the YAML file, or cargo test -p bss-oss-pcf-nextgen --test http_smoke.

Kubernetes (Helm)

In helm/bss-oss-rust/values.yaml, set:

pcfNextgen:
  enabled: true

Then install/upgrade the chart as documented in helm/bss-oss-rust/README.md.

Build a container image that runs the bss-oss-pcf-nextgen binary and point pcfNextgen.image.repository / tag at your registry.

Further reading