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>
Closes#32861
Triggering or cancelling a scheduled task from the DevTools Scheduled
Tasks page previously left the table showing the pre-action state, so
users had to refresh the browser (which also reset the plugin selector)
to see the new status.
Switch `useScheduledTasks` to `useAsyncRetry` so it exposes a `refresh`
function, and call it after each trigger/cancel action in
`ScheduledTasksContent`. The refresh happens in a `finally` block so the
table also updates when the action itself fails, reflecting whatever the
backend ended up recording.
Signed-off-by: Asish Kumar <officialasishkumar@gmail.com>
Update the generated API reports to match the NFS header page migration and the new subpage-based public surface in the affected plugins.
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Restore page theming and header metadata for the migrated NFS pages so the new BUI headers preserve the same context and navigation as before. This also makes the DevTools landing tab deterministic and adds focused regression coverage for the scaffolder and TechDocs fixes.
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Update migrated NFS pages to use the existing HeaderPage contract instead of extending Backstage UI, and move DevTools to real subpages with the legacy DevTools content blueprint removed.
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Always render the plugin header for page blueprints and move page-level actions into the Backstage UI header pattern for affected NFS pages.
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
- Apply freben's suggested wording for old frontend system sections to
clarify they can be skipped on the new frontend system
- Fix scaffolder README: add missing imports (AnyApiFactory,
scmIntegrationsApiRef), closing bracket, and update link text
- Fix devtools README: correct closing tag from `</ FlatRoutes>` to
`</FlatRoutes>`
- Fix kubernetes README: reword "must be explicitly added" to avoid
conflicting with feature discovery paragraph
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Renames useTriggerScheduledTask to useScheduledTasksOperations and adds
cancelTask alongside triggerTask, with shared isLoading/error state. Adds
CancelScheduledTask type to devtools-common and cancelScheduledTask to the
DevToolsApi interface and client, hitting the existing scheduler cancel
endpoint. The ScheduledTasksContent UI now shows both trigger and cancel
buttons per task row.
Signed-off-by: Fredrik Adelöw <freben@spotify.com>
Made-with: Cursor
The `defaultPath` param was a compile-time migration artifact typed to
produce an error, guiding users to use `path` instead. The migration
period is over, so this removes it from the public API surface.
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Rename "package discovery" to "feature discovery" across all plugin
READMEs and docs to match the established terminology. Slim down the
Feature Discovery section in the architecture docs to avoid duplicating
the configuration details now covered in the installing plugins page.
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Move old frontend system wiring instructions to an "Old Frontend
System" section. The default installation path now uses package
discovery with no manual wiring needed.
Signed-off-by: Patrik Oldsberg <poldsberg@gmail.com>
Made-with: Cursor
Updated the `ScheduledTasksContent` component to provide better visual
feedback when a user lacks permission to run a task. A new
`CreateNotAllowed` component displays a disabled block icon with a
tooltip instead of the default error behavior.
Signed-off-by: Yash Oswal <yoswal@redhat.com>