Skip to content

Improve Ironic Horizon out of the box experience - #1808

Open
jovial wants to merge 5 commits into
stackhpc/2026.1from
bugfix/2025.1/ironic-ui
Open

Improve Ironic Horizon out of the box experience#1808
jovial wants to merge 5 commits into
stackhpc/2026.1from
bugfix/2025.1/ironic-ui

Conversation

@jovial

@jovial jovial commented Jul 29, 2025

Copy link
Copy Markdown
Contributor

Policy override was causing lots of error messages in the Ironic view of Horizon.

I've asked upstream if we can get this enabled by default:

https://bugs.launchpad.net/horizon/+bug/2102214

But are yet to see any traction.

Policy override was causing lots of error messages in the Ironic view of
Horizon.

I've asked upstream if we can get this enabled by default:

https://bugs.launchpad.net/horizon/+bug/2102214

But are yet to see any traction.
# Intended scope(s): system, project
# Overridden: added role:admin
"baremetal:node:list_all": "role:admin or (role:reader and system_scope:all) or (role:service and system_scope:all) or rule:service_role"
"baremetal:node:list_all": "role:baremetal_node_list_all or (role:reader and system_scope:all) or (role:service and system_scope:all) or rule:service_role"

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

does it mean that regular admin users now won't be able to list all baremetals from cli? - I think that was idea behind this policy override. also baremetal_node_list_all don't exist by default?

@jovial jovial Aug 18, 2025

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

baremetal_node_list_all don't exist by default?

Correct, you'd have to create that.

does it mean that regular admin users now won't be able to list all baremetals from cli?

Correct, unless they own all nodes (via setting the owner property on baremetal nodes). You can add the new role if you need that behaviour (but it will break your horizon).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will this break Horizon, even with SYSTEM_SCOPE_SERVICES = ['ironic'] set?

@jovial jovial Sep 12, 2025

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, as I think system scope appears in the project drop down. So if you have a project selected (rather than system scope) and you navigate to the baremetal provisioning section, you will get a bunch of errors. You would be able to select system scope and browse to the same page though.

@JohnGarbutt JohnGarbutt Sep 26, 2025

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bbezak what I think we should do is make sure the nodes are all added into a single project, e.g. admin project, so the regular project scoped admin user can still list them all, and do all the usual actions to the nodes that worked in yoga, etc.

In my head, this extra role here is only needed to help in the Slurm case, where some other member in some other project, needs to list all baremetal nodes, to convert the baremetal node name into a uuid, to pass into the scheduler hint.

@jovial jovial May 21, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think John is right. We don't break horizion for ordinary users (non-admin). It is is breaking change for users with the admin role though - so perhaps best to merge in 2026.1?

---
upgrade:
- |
Users with the admin role can can no longer list all baremetal nodes by

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: 'can' was written twice

default. This broke horizon as it tries to collect data for any nodes
that it can see. Please add the baremetal_node_list_all role
to any users to want this capability; it is not recommened since
Horizon will remain broken for them.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think that will break Horizon, right, as the member + baremetal_node_list_all user will not have the ironic tab appear in horizon, anyways.

The only remaining broken combination would be having the admin role, in a project other than the project that owns all the ironic nodes. I guess? Which I suppose you fix by adding the system scope thing?

jovial added 3 commits May 21, 2026 10:43
Updated release notes to clarify role permissions and fix details.
Clarified the restriction on admin role access to baremetal nodes and added role assignment instructions.
Updated role requirement for listing baremetal nodes and fixed Horizon Ironic integration.
@github-actions

Copy link
Copy Markdown
Contributor

Happy Friday @jovial, this is a friendly reminder that this PR is waiting for your changes or response. Please take a look when you have a moment!

Note: Once your changes are ready, remove the waiting-author-response label and add the waiting-review label.

9 similar comments
@github-actions

Copy link
Copy Markdown
Contributor

Happy Friday @jovial, this is a friendly reminder that this PR is waiting for your changes or response. Please take a look when you have a moment!

Note: Once your changes are ready, remove the waiting-author-response label and add the waiting-review label.

@github-actions

github-actions Bot commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Happy Friday @jovial, this is a friendly reminder that this PR is waiting for your changes or response. Please take a look when you have a moment!

Note: Once your changes are ready, remove the waiting-author-response label and add the waiting-review label.

@github-actions

Copy link
Copy Markdown
Contributor

Happy Friday @jovial, this is a friendly reminder that this PR is waiting for your changes or response. Please take a look when you have a moment!

Note: Once your changes are ready, remove the waiting-author-response label and add the waiting-review label.

@github-actions

Copy link
Copy Markdown
Contributor

Happy Friday @jovial, this is a friendly reminder that this PR is waiting for your changes or response. Please take a look when you have a moment!

Note: Once your changes are ready, remove the waiting-author-response label and add the waiting-review label.

@github-actions

Copy link
Copy Markdown
Contributor

Happy Friday @jovial, this is a friendly reminder that this PR is waiting for your changes or response. Please take a look when you have a moment!

Note: Once your changes are ready, remove the waiting-author-response label and add the waiting-review label.

@github-actions

Copy link
Copy Markdown
Contributor

Happy Friday @jovial, this is a friendly reminder that this PR is waiting for your changes or response. Please take a look when you have a moment!

Note: Once your changes are ready, remove the waiting-author-response label and add the waiting-review label.

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Happy Friday @jovial, this is a friendly reminder that this PR is waiting for your changes or response. Please take a look when you have a moment!

Note: Once your changes are ready, remove the waiting-author-response label and add the waiting-review label.

@github-actions

Copy link
Copy Markdown
Contributor

Happy Friday @jovial, this is a friendly reminder that this PR is waiting for your changes or response. Please take a look when you have a moment!

Note: Once your changes are ready, remove the waiting-author-response label and add the waiting-review label.

@github-actions

Copy link
Copy Markdown
Contributor

Happy Friday @jovial, this is a friendly reminder that this PR is waiting for your changes or response. Please take a look when you have a moment!

Note: Once your changes are ready, remove the waiting-author-response label and add the waiting-review label.

@jovial
jovial changed the base branch from stackhpc/2025.1 to stackhpc/2026.1 August 21, 2026 16:31
@jovial

jovial commented Aug 21, 2026

Copy link
Copy Markdown
Contributor Author

I think we should merge this in 2026.1

@coderabbitai

coderabbitai Bot commented Aug 21, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@jovial, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 44 minutes

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

Wait for the limit to reset, then comment @coderabbitai review or push new commits to the PR.

An organization admin can change what happens after included review limits in Billing.

How do review limits work?

CodeRabbit enforces per-developer PR review limits within each organization.

For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 9fbc5d1c-b982-49de-866f-1118b54803be

📥 Commits

Reviewing files that changed from the base of the PR and between e6c050b and 1d92b7a.

📒 Files selected for processing (3)
  • etc/kayobe/kolla/config/horizon/_9999-custom-settings.py
  • etc/kayobe/kolla/config/ironic/policy.yaml
  • releasenotes/notes/fix-ironic-horizon-integration-c844d19bd36ed014.yaml

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

waiting-author-response PR is waiting for the author to respond

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants