Commit Graph

351 Commits

Author SHA1 Message Date
1337 9929df3d8c Merge branch 'backstage:master' into feature/catalog-export 2026-05-20 20:32:27 +02:00
Ben Lambert 484c073be9 Merge pull request #34261 from backstage/session/scheming-finch-ks70 2026-05-19 16:00:41 +02:00
Patrik Oldsberg 10e5d6f8aa Remove NavItemBlueprint in favor of page-based nav discovery
Drop the deprecated NavItemBlueprint from the public API and migrate core
plugins to set title and icon on PageBlueprint instead. AppNav keeps
backward compatibility for legacy nav-item extensions via an internal
core.nav-item.target data ref.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-19 11:00:46 +02:00
benjdlambert cf29736923 refactor: rename AIResource to AiResource for PascalCase consistency
Signed-off-by: benjdlambert <ben@blam.sh>
2026-05-19 10:42:48 +02:00
benjdlambert 07a2ece671 feat: install AIResource module in example backend with test entities
Signed-off-by: benjdlambert <ben@blam.sh>
2026-05-19 10:42:48 +02:00
Ben Lambert 29d398b57c fix(auth-backend): harden default allowed patterns for CIMD and DCR (#34260)
* fix(auth-backend): harden default allowed patterns for CIMD and DCR

Signed-off-by: benjdlambert <ben@blam.sh>

* address PR review feedback for OIDC defaults

- narrow CLI client ID pattern to exact cli.json path
- add BREAKING prefix to changeset
- add IPv6 [::1] to docs examples
- add loopback redirect URI tests for IPv6 and 127.0.0.1

Signed-off-by: benjdlambert <ben@blam.sh>

* remove dead ['*'] fallback when features are disabled

The restrictive defaults are now always used regardless of the enabled
flag, since the patterns are only consulted on code paths that require
the feature to be enabled.

Signed-off-by: benjdlambert <ben@blam.sh>

* add default pattern tests and fix docs cli example

Signed-off-by: benjdlambert <ben@blam.sh>

* use URL constructor for CLI client ID

Signed-off-by: benjdlambert <ben@blam.sh>

* use string templating for cliClientId to match OidcRouter

Signed-off-by: benjdlambert <ben@blam.sh>

* fix docs: remove misleading CLI client_id URL example

Signed-off-by: benjdlambert <ben@blam.sh>

---------

Signed-off-by: benjdlambert <ben@blam.sh>
2026-05-19 09:45:31 +02:00
Ben Lambert d09c21cb84 feat(scaffolder): config-driven template groups and swappable TemplateCard (#34147)
* feat(scaffolder): config-driven template groups and swappable TemplateCard

Signed-off-by: benjdlambert <ben@blam.sh>

* refactor(scaffolder): keep createGroupsWithOther internal

Signed-off-by: benjdlambert <ben@blam.sh>

* docs(scaffolder): fix sub-page extension ID in changeset

Signed-off-by: benjdlambert <ben@blam.sh>

* address PR review feedback

Signed-off-by: benjdlambert <ben@blam.sh>

* split TemplateCard swappable contract from legacy props

Signed-off-by: benjdlambert <ben@blam.sh>

* address review feedback: dedupe tags, defensive groups copy, doc clarifications

Signed-off-by: benjdlambert <ben@blam.sh>

* regenerate api reports

Signed-off-by: benjdlambert <ben@blam.sh>

* align docs and changeset with actual default group titles

Signed-off-by: benjdlambert <ben@blam.sh>

* regen api reports after rebase

Signed-off-by: benjdlambert <ben@blam.sh>

---------

Signed-off-by: benjdlambert <ben@blam.sh>
2026-05-12 12:29:44 +02:00
Ben Lambert dbeb7aab3e feat(scaffolder): add BUI theme for scaffolder forms (#33053)
* feat(scaffolder): add BUI theme for scaffolder forms

Add a Backstage UI (BUI) form theme as an alternative to the Material
UI theme. Toggled via formProps.theme or enableBackstageUi page config.

Includes BUI widgets, templates, field extension variants, and a ported
React Aria Autocomplete component.

Signed-off-by: benjdlambert <ben@blam.sh>

* refactor(scaffolder): use BUI Combobox and CheckboxGroup for form widgets

Signed-off-by: benjdlambert <ben@blam.sh>

* chore(scaffolder): enable BUI form flag and add kitchen sink demo template

Signed-off-by: benjdlambert <ben@blam.sh>

* fix(scaffolder): use outlined input style for BUI form widgets

Signed-off-by: benjdlambert <ben@blam.sh>

* fix(scaffolder): address BUI form PR feedback

Signed-off-by: benjdlambert <ben@blam.sh>

* fix(scaffolder): format CSS and regen API reports

Signed-off-by: benjdlambert <ben@blam.sh>

---------

Signed-off-by: benjdlambert <ben@blam.sh>
2026-05-12 10:35:21 +02:00
the-serious-programmer 82cf16f63c feat: catalog export feature
Signed-off-by: the-serious-programmer <19777147+the-serious-programmer@users.noreply.github.com>
2026-04-18 14:29:30 +02:00
Hellgren Heikki 303954b154 feat(search): add actions to query search engine
the authorized search engine initialization had to be moved to plugin
from router as it should also be used in the query action if permissions
are enabled.

Signed-off-by: Hellgren Heikki <heikki.hellgren@op.fi>
2026-04-13 10:55:27 +03:00
Patrik Oldsberg f8b320a988 app-config: remove unnecessary config
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2026-03-17 20:46:01 +01:00
Patrik Oldsberg fa260da6e7 fix: update devtools sub-page config key
Point the example app config at the new catalog-unprocessed-entities sub-page key so app startup no longer references the removed devtools content extension.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-17 17:22:47 +01:00
Patrik Oldsberg 3b67b7ce6d Move app-specific config from packages/app into root app-config.yaml
The example app (packages/app) had a separate app-config.yaml that was
loaded via --config flags in the start script. This moves the NFS
configuration (routes, pluginOverrides, extensions) into the root
app-config.yaml and removes the --config flags so the app uses the
default config resolution.

Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
2026-03-16 21:52:13 +01:00
Stephanie Cao 7695dd23d0 feat(scaffolder): Create scaffolder mcp action to list all installed template actions (#32765)
* add scaffolder mcp action to list all installed template actions

Signed-off-by: Stephanie <yangcao@redhat.com>

* add changeset

Signed-off-by: Stephanie <yangcao@redhat.com>

* resolve review comments

Signed-off-by: Stephanie <yangcao@redhat.com>

* cleanup code

Signed-off-by: Stephanie <yangcao@redhat.com>

* resolve pr review comments

Signed-off-by: Stephanie <yangcao@redhat.com>

* remove actionService param in options, as templateActionsRegistry has already been passed in

Signed-off-by: Stephanie <yangcao@redhat.com>

* remove unnecessary required param check

Signed-off-by: Stephanie <yangcao@redhat.com>

* type the mcp action output better

Signed-off-by: Stephanie <yangcao@redhat.com>

* use scaffolderService instead

Signed-off-by: Stephanie <yangcao@redhat.com>

* revert templateActionRegistry rename, keep actionRegistry as-is

Signed-off-by: benjdlambert <ben@blam.sh>

* clean up list-scaffolder-actions: fix tests, changeset, and description

Signed-off-by: benjdlambert <ben@blam.sh>

---------

Signed-off-by: Stephanie <yangcao@redhat.com>
Signed-off-by: benjdlambert <ben@blam.sh>
Co-authored-by: benjdlambert <ben@blam.sh>
2026-03-03 07:30:06 +00:00
Ben Lambert 31de2c9b3a feat(auth-backend): add experimental CIMD support (#32307)
Signed-off-by: benjdlambert <ben@blam.sh>
2026-02-17 17:00:49 +01:00
Adam Harvey 30e8e61f2b chore: Remove missing plugin references
Signed-off-by: Adam Harvey <33203301+adamdmharvey@users.noreply.github.com>
2026-01-10 16:24:05 -05:00
Jake Smith 37fba1d8ec Add config example, changeset and API reports
Signed-off-by: Jake Smith <jakemgsmith@gmail.com>
2025-12-16 10:20:57 +01:00
williamwu-mongodb 291bf9df13 feat: add scheduled tasks UI to devtools plugin
Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

remove circular dependency

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

remove another unused backend defaults dependency

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

revert package.json

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

revert the other package.json

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

modify yarn lock file

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

fix api report for type

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

fix bulid api reports

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback and fixes

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback and fixes

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

add changeset

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

rebase yarn.lock

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

fix import for task response type

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

fix lint

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

fix debounce import

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

add lodash

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

remove debounce logic

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

remove unused auth

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

readd back changeset

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

remove example app from changeset

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

Update plugins/devtools/src/components/Content/ScheduledTasksContent/ScheduledTasksContent.tsx

Co-authored-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com>
Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

Update .changeset/short-lizards-find.md

Co-authored-by: Andre Wanlin <67169551+awanlin@users.noreply.github.com>
Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>

address feedback

Signed-off-by: williamwu-mongodb <william.t.wu@mongodb.com>
2025-12-06 13:13:33 -08:00
Ben Lambert 41f5876e75 Merge pull request #30974 from angeliski/add-default-enviroment
feat(scaffolder-backend): add defaultEnvironment config to scaffolder
2025-11-25 10:26:51 +01:00
Andre Wanlin fa255f530a Bitbucket Cloud - API Token Support
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2025-11-17 12:49:43 -06:00
Rogerio Angeliski 42ea7c2707 Merge branch 'master' into add-default-enviroment 2025-11-13 09:00:13 -03:00
Hellgren Heikki f222a2eab9 fix: distributed actions visibility in scaffolder
depending on the plugin startup order, some distributed actions might not be available when the scaffolder backend starts.
this was mentioned in the comment that is now removed. while this might change in the future, this would patch the current way the distributed actions are fetched.

related #31213 and #31207

closes #31187

Signed-off-by: Hellgren Heikki <heikki.hellgren@op.fi>
2025-10-09 13:44:02 +03:00
Rogerio Angeliski a4cd4051f2 feat(scaffolder-backend): add defaultEnvironment config to scaffolder
Signed-off-by: Rogerio Angeliski <angeliski@hotmail.com>
2025-09-24 18:00:01 -03:00
benjdlambert c9f1fb203a chore: cleanup
Signed-off-by: benjdlambert <ben@blam.sh>
2025-09-09 10:46:45 +02:00
benjdlambert 225cdf5bdf chore: wrap up things in a feature flag
Signed-off-by: benjdlambert <ben@blam.sh>
2025-09-08 14:27:05 +02:00
Patrik Oldsberg 7d441f9313 Merge pull request #30396 from veenarm/fix-auditor-length
fix: Scaffolder Auditor length issue with file uploads or very long task parameters
2025-08-12 17:28:22 +02:00
Fredrik Adelöw 8b1bf6e069 elevate app.packages to no longer be experimental
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2025-08-07 17:02:05 +02:00
John Redwood b90047cfec chore: resolve raised changes
Signed-off-by: John Redwood <john.r.k.redwood@gmail.com>
2025-07-16 21:05:03 +10:00
John Redwood 11dc90faa2 fix: full contrib for report and length of audit
Signed-off-by: John Redwood <john.r.k.redwood@gmail.com>
2025-06-26 17:44:41 +10:00
Fredrik Adelöw 6d9a4dd220 Merge pull request #29788 from leboncoin/feat-remove-useurlreaderssearch
feat(catalog)!: remove catalog.useUrlReadersSearch and always use search
2025-06-19 16:46:53 +02:00
Hellgren Heikki c05a6982ea feat: support postgres store for rate limiting
Signed-off-by: Hellgren Heikki <heikki.hellgren@op.fi>
2025-06-11 14:34:19 +03:00
Heikki Hellgren d6bd7a540d fix: review findings
Signed-off-by: Heikki Hellgren <heikki.hellgren@op.fi>
2025-06-11 14:34:18 +03:00
Andre Wanlin 2c3d82eafc Ran prettier
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2025-05-20 08:31:40 -05:00
Andre Wanlin 2a5540e3c3 Cleaning up the app-config.yaml
Signed-off-by: Andre Wanlin <awanlin@spotify.com>
2025-05-20 08:16:49 -05:00
Thomas Cardonne 233936366b feat(catalog)!: remove catalog.useUrlReadersSearch and always use search
Signed-off-by: Thomas Cardonne <thomas.cardonne@adevinta.com>
2025-04-29 18:59:54 +02:00
Thomas Cardonne 564170b765 feat: add config flag
Signed-off-by: Thomas Cardonne <thomas.cardonne@adevinta.com>
2025-01-22 23:22:25 +01:00
Fredrik Adelöw da37e42653 remove the azure blob storage config
Signed-off-by: Fredrik Adelöw <freben@gmail.com>
2024-11-25 14:23:32 +01:00
Nikunj Hudka c105e55582 added handling logic for multiple integrations and added docs on how to configure the plugin; added api report
Signed-off-by: Nikunj Hudka <nikunjhudka123@gmail.com>
2024-11-13 00:55:46 -04:00
NIKUNJ LALITKUMAR HUDKA 634f6b72ca prettier app-config.yaml file changes
Signed-off-by: NIKUNJ LALITKUMAR HUDKA <nk856850@dal.ca>
2024-10-20 22:58:08 -03:00
NIKUNJ LALITKUMAR HUDKA 277092a876 feat: azure blob storage entity provider for catalog implemented
Signed-off-by: NIKUNJ LALITKUMAR HUDKA <nk856850@dal.ca>
2024-10-18 18:27:58 -03:00
secustor d4a3b10f02 feat: expose DD RUM sessionSampleRate and sessionReplaySampleRate
Signed-off-by: secustor <sebastian@poxhofer.at>
2024-04-30 14:00:43 +02:00
Patrik Oldsberg 5d7b8fa5db app-config: removed todo plugin from OpenApi provider config
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2024-04-21 12:31:44 +02:00
Spencer Post 7a7e103882 support scope and scopes in config
Signed-off-by: Spencer Post <spencer.post@guildeducation.com>
2024-03-29 14:53:48 -06:00
Patrik Oldsberg 6f5388b4f6 docs,config: fix proxy provider config wonk
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
2024-03-01 10:46:30 +01:00
aramissennyeydd d622690f8c code review updates
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2024-02-26 10:27:00 -05:00
Aramis 4f4fce91cb small fixes
Signed-off-by: Aramis <sennyeyaramis@gmail.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2024-02-26 10:27:00 -05:00
Aramis 1c64b2af45 update to a proxied sign in identity instead of a separate guest provider
Signed-off-by: Aramis <sennyeyaramis@gmail.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2024-02-26 10:26:59 -05:00
Aramis a83eb21b89 add object instead of empty
Signed-off-by: Aramis <sennyeyaramis@gmail.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2024-02-26 10:23:18 -05:00
Aramis 1aedf6c524 update app config to remove unnecessary keys
Signed-off-by: Aramis <sennyeyaramis@gmail.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2024-02-26 10:23:18 -05:00
Aramis a8d046319e create a new guest auth provider. running into an issue on reload of an active state
Signed-off-by: Aramis <sennyeyaramis@gmail.com>
Signed-off-by: aramissennyeydd <aramis.sennyey@doordash.com>
2024-02-26 10:23:18 -05:00