Commit Graph

71851 Commits

Author SHA1 Message Date
Patrik Oldsberg d806b0cc9f Add automatic discovery of CLI modules from project dependencies
The CLI now scans the project root's dependencies and devDependencies
for packages with the cli-module role, loading them automatically.
Falls back to the built-in set with a deprecation warning when no
modules are found. Updated create-app templates and the monorepo root
to include all CLI modules as explicit devDependencies.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:43 +01:00
Patrik Oldsberg 64a96d9d9f Add bin entry points for standalone CLI module execution
Each CLI module package now includes a bin script and cli.ts entry
point, allowing modules to be executed directly via npx without
being wired into the main @backstage/cli package.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:43 +01:00
Patrik Oldsberg 401c1f7e24 Resolve CLI version dynamically in info module
The info command now tries to resolve the @backstage/cli version at
runtime instead of using a hardcoded relative path. This allows the
module to work standalone when the CLI package is not present. The
module's own version is always reported as infoModuleVersion.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:43 +01:00
Patrik Oldsberg c95a130f52 Add runCliModule helper for standalone module execution
Add a public `runCliModule` function to `@backstage/cli-node` that
allows CLI module packages to be executed directly as standalone
programs, without needing to be wired into a larger CLI host.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:43 +01:00
Patrik Oldsberg a151ad0814 Split CLI modules into separate packages
Extract each CLI module from packages/cli/src/modules/ into its own
package under packages/cli-module-*. This enables independent versioning
and clearer dependency boundaries for each CLI capability.

Module mapping:
- auth → @backstage/cli-module-auth
- build → @backstage/cli-module-build
- config → @backstage/cli-module-config
- create-github-app → @backstage/cli-module-create-github-app
- info → @backstage/cli-module-info
- lint → @backstage/cli-module-lint
- maintenance → @backstage/cli-module-maintenance
- migrate → @backstage/cli-module-migrate
- new → @backstage/cli-module-new
- test → @backstage/cli-module-test-jest
- translations → @backstage/cli-module-translations

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:43 +01:00
Patrik Oldsberg 18012b5802 Rename CliPlugin to CliModule and cli-plugin role to cli-module
Rename createCliPlugin to createCliModule, CliPlugin to CliModule, and
the cli-plugin package role to cli-module to better distinguish CLI
modules from other plugin types.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:43 +01:00
Patrik Oldsberg 1929a95b97 Rename BackstageCommand to CliCommand and CommandContext to CliCommandContext
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:43 +01:00
Patrik Oldsberg 7d055ef0c4 Merge cli-plugin-api into cli-node
Move createCliPlugin and related types from the standalone
@backstage/cli-plugin-api package into @backstage/cli-node and
remove the now-empty package.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:43 +01:00
Patrik Oldsberg a90939e138 Use opaque types for command graph nodes
Switch CommandGraph and CliInitializer to use OpaqueCommandTreeNode and
OpaqueCommandLeafNode from @internal/cli instead of raw $$type markers.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:42 +01:00
Patrik Oldsberg 28a438a9f2 Add documentation to cli-plugin-api and remove CliFeature type
Add thorough TSDoc comments to createCliPlugin, BackstageCommand,
CommandContext, and CliPlugin. Remove the CliFeature type alias in
favor of using CliPlugin directly.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:42 +01:00
Patrik Oldsberg 7e6ad01a21 Refine cli-plugin-api: use packageJson, inline types, rename context fields
Replace pluginId with packageJson input for createCliPlugin, remove
CommandExecuteFn type alias by inlining it, and rename
CommandContext.info.description to info.name.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:42 +01:00
Patrik Oldsberg 2e5f189cfa Add @internal/cli package for opaque CLI types
Move OpaqueCliPlugin to a new @internal/cli inline package, following the
same pattern as @internal/frontend. Both cli-plugin-api and cli import it
directly, and it gets bundled into their dists at build time.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:42 +01:00
Patrik Oldsberg d6caf7f13b Slim cli-plugin-api to only export createCliPlugin
Move error handling and lazy utilities back to @backstage/cli since they
are host-only concerns. The cli-plugin-api internals subpath provides
isCliPlugin and initializeCliPlugin for the CLI host.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:42 +01:00
Patrik Oldsberg 0be3eab18b cli: initial cli-plugin-api
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-14 12:40:42 +01:00
Patrik Oldsberg 94a885a2ef Add cli-plugin package role
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-14 12:39:21 +01:00
backstage-goalie[bot] 6f01c33a0e Merge pull request #33350 from backstage/renovate/npm-yauzl-vulnerability
chore(deps): update dependency yauzl to v3.2.1 [security]
2026-03-14 02:03:38 +00:00
renovate[bot] 527d055a78 chore(deps): update dependency yauzl to v3.2.1 [security]
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-14 00:58:20 +00:00
backstage-goalie[bot] 2a7ea8e79e Merge pull request #33348 from backstage/renovate/npm-undici-vulnerability
chore(deps): update dependency undici to v7.24.0 [security]
2026-03-14 00:45:26 +00:00
renovate[bot] 7e1f0f0a09 chore(deps): update dependency undici to v7.24.0 [security]
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-13 23:32:28 +00:00
Andre Wanlin cc11d289de Merge pull request #33345 from awanlin/docs/ai
[Docs] Added new AI section
2026-03-13 18:27:13 -05:00
Andre Wanlin 52fba1c57e Review feedback
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-03-13 17:59:21 -05:00
Andre Wanlin e4cd6aad70 Update docs/ai/index.md
Co-authored-by: Aramis Sennyey <159921952+aramissennyeydd@users.noreply.github.com>
Signed-off-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com>
2026-03-13 17:57:09 -05:00
Andre Wanlin a148a319df Update docs/ai/index.md
Co-authored-by: Aramis Sennyey <159921952+aramissennyeydd@users.noreply.github.com>
Signed-off-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com>
2026-03-13 17:56:43 -05:00
Andre Wanlin 34d5315991 Update docs/ai/index.md
Co-authored-by: Aramis Sennyey <159921952+aramissennyeydd@users.noreply.github.com>
Signed-off-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com>
2026-03-13 17:56:30 -05:00
Andre Wanlin 8c19ddbadf Update docs/ai/index.md
Co-authored-by: Aramis Sennyey <159921952+aramissennyeydd@users.noreply.github.com>
Signed-off-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com>
2026-03-13 17:56:04 -05:00
Andre Wanlin 8aebd31e34 Minor adjustments
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-03-13 17:02:42 -05:00
Andre Wanlin f3a9100932 Feedback corrections
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-03-13 16:47:40 -05:00
Andre Wanlin 5abb339d57 Fixed typo
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-03-13 16:42:16 -05:00
Andre Wanlin 9b48446864 Added new AI section
Co-authored-by: Nawaraj <mbk36900@gmail.com>
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2026-03-13 16:38:16 -05:00
chanchalkhatri 434b0284a3 fix(microsite): correct blog typos and malformed punctuation (#33289)
Signed-off-by: chanchalkhatri19 <chanchal.khatri01@infosys.com>
2026-03-13 16:31:33 -04:00
Andre Wanlin 86f9affed8 Merge pull request #33218 from SanderDelden/feat/plugin-scaffolder-node-add-githelper-removal-function
plugin-scaffolder-node: Add function to gitHelpers to stage files for removal
2026-03-13 14:34:12 -05:00
Andre Wanlin b33e0498fd Merge pull request #33132 from abdellahhn/scaffolder-add-run-id-return-value-to-github-actions-dispatch-v2
feat(scaffolder): add returnWorkflowRunDetails to github:actions:dispatch action
2026-03-13 13:58:16 -05:00
Andre Wanlin d187a8b087 Merge pull request #32840 from iurylenonalves/docs-backstage-openapi
docs(catalog): add mention of backstage-openapi backend module to configuration
2026-03-13 13:35:09 -05:00
Charles de Dreuille b951b629d1 Merge pull request #33343 from backstage/fix-card-press
Fix Card onPress event
2026-03-13 17:31:44 +00:00
Charles de Dreuille fcaac3b8bd Fix Card onPress event
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-13 17:07:52 +00:00
chanchalkhatri 7f84d53161 docs: fix malformed HTML href in documentation landing page (#33338)
Signed-off-by: chanchalkhatri19 <chanchal.khatri01@infosys.com>
2026-03-13 09:29:20 -04:00
chanchalkhatri aaafc3def2 docs: fix broken link in git catalog module README. (#33336)
Signed-off-by: chanchalkhatri19 <chanchal.khatri01@infosys.com>
2026-03-13 09:14:50 -04:00
Ben Lambert 06294aafba feat(auth): migrate auth plugin from Material-UI to Backstage UI (#33282)
Signed-off-by: benjdlambert <ben@blam.sh>
2026-03-13 09:51:53 +01:00
Fredrik Adelöw 50c2aee83d Merge pull request #33200 from divyamagrawal06/fix/homepage-seo-meta 2026-03-13 08:19:14 +01:00
abdellahhanane ad0adafaea Add check on workflowRunHtmlUrl is not undefined
Signed-off-by: abdellahhanane <abdellahhanane44@gmail.com>
2026-03-12 13:41:43 -04:00
Charles de Dreuille 0345b56076 Merge pull request #33323 from backstage/bui-checkbox-fixes
Update styles and types for Checkbox component
2026-03-12 16:56:34 +00:00
Charles de Dreuille 27c2c24a1a Add migration notes
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-12 16:27:40 +00:00
backstage-goalie[bot] 9199c3207e Merge pull request #33319 from backstage/renovate/express-rate-limit-8.x-lockfile
chore(deps): update dependency express-rate-limit to v8.3.1
2026-03-12 16:15:37 +00:00
Charles de Dreuille 9d5f3baf1e Update styles and types on Checkbox
Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
2026-03-12 16:11:56 +00:00
renovate[bot] c3547fdec3 chore(deps): update dependency express-rate-limit to v8.3.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-12 15:16:24 +00:00
Aramis Sennyey 269b85ef0d feat: use branch name instead of tag for stable docs (#32614)
* feat: use branch name instead of tag for stable docs

Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>

* test

Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>

* paginate everything

Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>

* different return value

Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>

* update both flows

Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>

* add docs

Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>

* Change checkout ref from tags to heads

Signed-off-by: Aramis Sennyey <159921952+aramissennyeydd@users.noreply.github.com>

---------

Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
Signed-off-by: Aramis Sennyey <159921952+aramissennyeydd@users.noreply.github.com>
2026-03-12 11:03:13 -04:00
Fredrik Adelöw a9d338d1a3 Merge pull request #33168 from dev404ai/add-rulehub-policy-catalog
Add RuleHub Policy Catalog plugin to the Backstage plugin directory
2026-03-12 13:04:22 +01:00
Fredrik Adelöw 154c52d6ed Merge pull request #33313 from chanchalkhatri19/fix-doc-typos
docs: fix typos and grammar errors across documentation
2026-03-12 13:03:32 +01:00
Fredrik Adelöw b46669d743 Merge pull request #33309 from zeshanziya/document-qntity-full-text-filter
docs: document full text filtering section of entity api
2026-03-12 13:02:43 +01:00
backstage-goalie[bot] ad4941dccd Merge pull request #33310 from backstage/renovate/flatted-3.x-lockfile
chore(deps): update dependency flatted to v3.4.1
2026-03-12 11:45:59 +00:00