{% extends "layout.html" %} {% from "_partials/page_description.html" import page_description %} {% block title %}Dashboard - pixie{% endblock %} {% block subnav %} {% endblock %} {% block content %} {{ page_description('speedometer2', 'Live counts across pixie: machines the operator manages, catalog images pixie can serve, NBD exports pixie is running right now. All tiles refresh every 5 s from the same endpoints the pages below use.') }}

Machines

{{ stats.machines_total }}
Bound
{{ stats.machines_bound }}
Inventoried
{{ stats.machines_with_inventory }}

Catalog

{{ stats.catalog_total }}
Disk images
{{ stats.catalog_images_fetched }} / {{ stats.catalog_images_total }}
Netboot bundles
{{ stats.catalog_bundles_fetched }} / {{ stats.catalog_bundles_total }}

NBD serving

{{ stats.exports_total }}
Running
{{ stats.exports_running }}
Error
{{ stats.exports_error }}
{# Events card: total row count + errors-since-ack (red pill on non-zero) + newest ts. Ack POSTs /ui/events/ack which advances the settings.events_ack_ts cursor so error_count zeros until the next error-shaped event fires. #}

Events

{{ stats.events_total }}
Errors {% if stats.events_error_count > 0 %}
{% endif %}
{% if stats.events_error_count > 0 %} {{ stats.events_error_count }} {% else %} 0 {% endif %}
Last
{% if stats.events_last_ts %} {{ stats.events_last_ts | fmt_ts }} {% else %} - {% endif %}
{# Live-env media state. The pixie live env (netboot-pc bake) has to be staged under PIXIE_LIVE_ENV_DIR before any pixie-* boot mode works; without it the plan renderer emits an "unavailable" iPXE chain and a bound target sits at a legible "media not staged" screen. Surface the readiness signal + per-file bytes so an operator can tell at a glance whether the boot modes are live. #}

Live-env media

{% if stats.live_env_ready %} ready {% else %} not staged {% endif %}
{% if stats.live_env_ready %}

The three files below are staged at {{ stats.live_env_dir }} and pixie-tui, pixie-inventory, and pixie-flash-* can serve the live env from /boot/pixie-live-env/.

{% else %}

Live-env media is missing under {{ stats.live_env_dir or '(unset)' }}. Every pixie-* boot_mode falls back to the "unavailable" iPXE plan until the three files below are present. Copy vmlinuz + initrd + live.squashfs from the latest pixie-netboot-pc-x86_64 bake into that directory. Restart the container is NOT required (the renderer checks the files each render).

{% endif %}
{% for name, size in stats.live_env_files.items() %}
{{ name }}
{% if size is not none %} {{ (size / 1024 / 1024) | round(1) }} MiB {% else %} missing {% endif %}
{% endfor %}

Recent events

All events
{% if events %}
{# ``Related to`` reads as ``: ``: the subject_kind badge is the category, subject_id the specific name / MAC / export name. #} {% for e in events %} {% endfor %}
When Kind Related to Summary
{{ e.ts | fmt_ts }} {{ e.kind }} {% if e.subject_kind %} {{ e.subject_kind }} {{ e.subject_id or '' }} {% else %} - {% endif %} {{ e.summary or "" }}
{% else %}

No events yet.

{% endif %}
{% endblock %}