New host detail page feedback (Foreman 3.0+)

I think it would be extremely helpful to have something like:

for the new UI. It could add either a completely new tab, or cards to the “Details” tab. This would allow users to add interesting facts or host parameters of their own choice for hosts.

For example, we use it to add a link to the BMC web page (if available), planned reboot times, RTC wake times for machines, machine location data (room, network switch etc.) and much more. This can probably not be captured in a generic way, so it would be best to have something configurable e.g. via YAML.

Is this on the roadmap?

I’d recommend to have a look at Foreman 3.5. From there it would be interesting to see what you still miss.

It sounds like a lot of that information comes from custom facts. Perhaps you can describe how you determine this information and how you’d like to see it presented.

1 Like

Indeed, I’m looking forward to the release :smiley:

Exactly, the source are both host parameters (manually maintained) and custom facts. To give an idea, here’s the list of :content: rows of the foreman_column_view configuration:

    :content: facts_hash['uptime']
    :content: params['location']
    :content: params['room']
    :content: params['rack']
    :content: params['bay']
    :content: params['comment']
    :content: params['commissioning_date']
    :content: facts_hash['rtcwake_alarm']
    :content: facts_hash['rtcwake_alarm_time_human']
    :content: facts_hash['rtcwake_wish_time_human']
    :content: facts_hash['dmi::product::serial_number']
    :content: link_to(_("Console"), "https://#{host.interfaces.first.name}", { :class => "btn btn-info" } )
    :eval_content: true
    :content: facts_hash['reboot_required']
    :content: facts_hash['reboot_required_pkgs']
    :content: facts_hash['reboot_required_since']

Since “custom” is by design “custom”, what I’d love would be the possibility to add custom cards with custom rows, with simple “label” => “value” pairs, similar as to what foreman_column_view was doing, but with the possibility to add cards to group this information.

For example, I’d then create a location card, which contains the location, room, rack and bay host parameters we maintain manually, maybe extended with network facts like to which switch-port a machine is attached (via custom facts).

I’d similarly create a card with reboot information and rtcwake information, for example. To give an idea, the rtcwake data is populated by calling rtcwake -m show, and we manage RTC wakeup times with Puppet to conserve energy for machines and wake them up at specific times (with a very large variety of desktops, this works more reliably than Wake on LAN).

We show the boot time as a relative value, so I think this is already covered.

This is a built in fact we could easily store. We already extract the BIOS information and this would be similar. Since it doesn’t rely on custom facts, it’s something I could see added by default.

The foreman_datacenter plugin isn’t well maintained, but this had an idea like that. There is also foreman_netbox which aims to integrate with netbox. I have used neither, but perhaps that could be a good place for some of that information.

1 Like

Thanks! I don’t see this in 3.4 yet, but a lot seems to be queued for 3.5.

That would be very helpful (for most users, I presume). Many manufacturers store numbers in there which are used to get hardware support, so it’s quite useful to have this readily available.

Thanks for the pointers! Indeed, these look like good solutions, while barely maintained of course is an issue. Since we currently keep this information in Foreman (and extract it via hammer-cli to display it externally), we basically go the opposite way, but it’s an interesting thought to reconsider this.

Still, it would be useful (especially for “special” stuff like rtcwake which likely is not really of any use to others) to have a way to add custom cards / key-value-pairs displayed in the new UI. It would of course be lovely to see this as a core feature, or maybe as a plugin to the new UI?
I think it could help not only with special cases such as this one, but would also allow users to add additional information locally and suggest upstreaming it after determining that it is really useful to have and that it may be of common interest. What do you think?

It should be noted that in 3.5 there is parameters tab. In https://github.com/theforeman/foreman/pull/9368#issuecomment-1303699125 there’s a screenshot. It doesn’t fully address your concern, but it’s a step.

Oh yes. I didn’t respond to that part, but I’ll be explicit: I think a generic way to display facts and perhaps even some favorite parameters on custom cards could certainly make sense.

@MariaAga and @MariSvirik may have more thoughts on it.

IMHO this is something that could live in core if the configuration is generic enough, but it could certainly be prototyped in a plugin.

1 Like

Running Foreman 3.41 and seems SCAP is still missing from the “Host Overview” page. Is this something planned to be added? Would be nice to be able to see what SCAP policy(s) has been assigned to the host and perhaps compliance status. Bonus points to be able to change SCAP policy.

These are good suggestions. We didn’t have anything specific in mind for this plugin, the old page didn’t show anything either, which is why we probably missed it. @MariSvirik do you think you could create a card for the Overview or Detail page? One host can belong to multiple policies but I’d dare to say, mostly it’s a single policy for host. 3.5 is out already, but perhaps we could add something in 3.6 or 3.7. @tedevil (or anyone else), would you be interested in contributing this functionality? Currently we don’t have many active developers on the foreman_openscap plugin.

I should correct myself here - it was too late for 3.5 and is a 3.6 feature.

First of all, I really like the new design, it is clear and modern and works very well. There are only a few exceptional cases when I need to switch to the original page, like template preview.

There is one small thing I have noticed, though. When an ansible job has run and involved the host I am looking at, even though the host processed the job successfully, but another host had an issue, the status of that job shows “failed”. I think it would be better to show the host status here, which would be green and “success” and leave the ob status the job page, to avoid confusion.

3 Likes

I miss being able to view the templates generated for the system without having to go to the old page.

1 Like

Even if I have basic programming skills, I an not really a developer, more a “power user”, but I can for sure provide SCAP “input/feedback” if needed.
Hosts can for sure have multiple SCAP policies applied like when you want to roll out a new policy and see how it works on old hosts before switching.

1 Like

Great feedback, this is already possible in Foreman 3.5, introduced by Bug #35176: Hosts "New UI" no way to review templates - Foreman

If I get that correctly, the last remote execution status is determined by the overall job status, not the status for a particular host from that job. If that’s the case, I agree that’s not a great behavior. @aruzicka when you’re back, could you please confirm? :christmas_tree:

This I think is the same thing I replied to in the first paragraph. See how it looks at Foreman Community Demo #118 - YouTube, it should be in 3.5 already. We’ll be happy to hear feedback on this too :slight_smile:

Gotcha, let’s see if we can find someone to work on that. We should start first with the design, I’ll talk with our UXD.

Thanks everyone for wonderful feedback so far. I’ve renamed the thread so it better represents the topic. Please keep it coming.

Thank you Marek :slight_smile: It looks great and works, however, I wasn’t aware we need to turn on “experimental tabs” in the config in order to see the “Details” tab at all in the new host UI. Has this been officially included in 3.5 or is it still in preview?

It’s moving outside of experimental labs in Foreman 3.6: Refactor #35839: New host details - Move Details tab out of experimental labs - Foreman

But at this point it’s pretty full-featured; I wouldn’t hesitate to use it in 3.5 if you want to. :slight_smile:

2 Likes

Should we consider cherrypicking this change to 3.5.z? I think it was the intention to have it fully supported with 3.5 :slight_smile:

+1

cc @MariaAga @ekohl

I suggested it, but @MariaAga was against it:

That’s correct.

Thanks!

Since foreman_column_view has been sunset now, let me come back to this idea: Would one of the UI/UX devs be interested to add a way to add a custom card, showing custom facts?

With this, I think we’d have full feature parity to the old host details page (and of course more features in addition). As it is now, there is no replacement for foreman_column_view for the new host detail page, i.e. no way to add custom facts which may be site-specific (such as the programmed rtcwake time which is of interest for us, but not of general interest).

1 Like