{# SPDX-License-Identifier: Apache-2.0 #} {# Copyright (C) 2025 Marcin Zieba #} {# Per-device versions of one globally-deduped named object + pick-which-to-own. #} {% extends 'base/layout.html' %} {% block title %}Versions — {{ family }} {{ object_name }}{% endblock %} {% block content %}
Device versions of {{ family }} {{ object_name }} {% if mode == "local" %} Per-device (LOCAL) {% else %} Shared (MASTER) {% endif %}
{% if mode == "local" %} {% elif suggest_local %} {% endif %}

{% if mode == "local" %} Per-device versions — netbox-routing mirrors none of them; each is shown from its device's own on-box content. {% else %} This object is shared by name across devices, but each device has its own on-box content. NetBox mirrors one device's version (shown as the NetBox source below). Pick a different device's version to make NetBox mirror it instead — that writes into NetBox only; pushing it to other devices is a separate Accept. {% endif %}

{% for it in items %} {% if it.route_map %} {% endif %} {% endfor %}
DeviceStatusEntriesNetBox mirrors
{% if it.device %}{{ it.device }}{% else %}—{% endif %} {% include "netbox_nso_plugin/categories/_state_badge.html" with status=it.row.status %} {% if it.has_capture %} {% if it.route_map %} {% else %}{{ it.entry_count }}{% endif %} {% else %}{% endif %} {% if it.is_owner %} NetBox source {% elif not it.comparable %} {% elif it.matches_owner %} matches {% else %} diverges {% endif %} {% if mode != "local" and not it.is_owner %}
{% if it.comparable %} Diff {% endif %}
{% csrf_token %}
{% endif %}
{% include "netbox_nso_plugin/categories/_route_map_version_detail.html" with rm=it.route_map %}
{% if device %} Back to {{ device }} {% endif %}
{% endblock %}