Status: not yet released — Phase E in progress. Neither
template.yamlnor@plinth-dev/scaffolder-actionsis published yet. The example below describes the target integration shape; copy it as a reference, not a recipe. Track progress on the roadmap.
A Backstage software template plus the supporting custom actions that scaffold a new Plinth module from inside the developer portal.
template.yaml— the Backstage software template with a guided form (module name, web/API toggles, owner team, data class).- A custom action —
plinth:open-platform-mrs— that opens MRs against the GitOps repo (Argo Application) and the policies repo (default Cerbos policy). - The
register-componentstep that adds the new module to the Backstage catalog.
# app-config.yaml
catalog:
locations:
- type: url
target: https://github.com/plinth-dev/scaffolder/blob/main/template.yaml
rules:
- allow: [Template]Then drop the custom action into your Backstage backend:
yarn add @plinth-dev/scaffolder-actions// packages/backend/src/plugins/scaffolder.ts
import { plinthOpenPlatformMrsAction } from "@plinth-dev/scaffolder-actions";
export const actions = [
...createBuiltinActions({ /* ... */ }),
plinthOpenPlatformMrsAction({ /* ... */ }),
];The Backstage template and the plinth CLI will produce identical output for the same inputs. CI will verify this on every change against a checked-in golden tree.
cli— the matching CLI flow.starter-web/starter-api— what the template clones.platform— the substrate this scaffolder targets.
MIT — see LICENSE.