{% extends "base.html" %} {% load i18n %} {% load operations %} {% load static %} {% load bootstrap_icons %} {% block title %}{{ compute }} - {% trans "Storage" %}: {{ pool }}{% endblock %} {% block page_heading %}{{ compute }} - {% trans "Storage" %}: {{ pool }}{% endblock page_heading %} {% block page_heading_extra %}
{% include 'create_stg_vol_block.html' %} {# the pool's own actions: starting or stopping it, the others in a menu #}
{% if state %}
{% csrf_token %}
{% else %}
{% csrf_token %}
{% endif %}
{% endblock page_heading_extra %} {% block content %}
{% include "computes/host_nav.html" with section="storages" detail=True %}
{% trans "Space" %}
{% if not state %}
{% trans "Unavailable while the pool is stopped." %}
{% elif size is None %}
{% trans "The pool's space could not be read." %}
{% elif not size %}
{% trans "The pool has no size." %}
{% else %}
{{ percent }} %
{% blocktrans with used=used|filesizeformat size=size|filesizeformat %}{{ used }} used of {{ size }}{% endblocktrans %} {# what the space is the space of: other pools may share it #} {% if type == "dir" or type == "fs" or type == "netfs" %}· {% trans "the filesystem of its path" %} {% elif type == "logical" %}· {% trans "its volume group" %} {% elif type == "rbd" %}· {% trans "the Ceph cluster" %}{% endif %}
{% blocktrans with free=free|filesizeformat %}{{ free }} free{% endblocktrans %}
{% endif %}
{% trans "Pool" %}
  • {% trans "State" %} {% if state %}{% trans "Active" %}{% else %}{% trans "Stopped" %}{% endif %} {% if status == "Running degraded" %}{% trans "Degraded" %}{% endif %} {% if autostart %}{% trans "Autostart" %}{% endif %}
  • {% trans "Type" %}{{ type|default:"—" }}
  • {% trans "Path" %} {{ path|default:"—" }}
{% if not state %}
{% bs_icon 'info-circle' %} {% trans "This pool is stopped: its volumes cannot be listed or managed until it is started. Their files stay." %}
{% elif volumes %}
{% trans "Volumes" %}
{% for volume in volumes %} {# capacity: what the guest sees; allocated: what it takes on the storage now #} {% endfor %}
{% trans "Name" %} {% trans "Format" %} {% trans "Capacity" %} {% trans "Actions" %}
{{ volume.name }} {{ volume.type }}
{{ volume.size|filesizeformat }}
{% blocktrans with allocated=volume.allocation|filesizeformat %}{{ allocated }} allocated{% endblocktrans %}
{# an ISO image is uploaded, not cloned (storages.jobs.is_iso) #}
{# fixed: the menu would be cut off by the table's scrolling box #}
{# a live region from the start: screen readers hear the message when the search empties the table #}
{# one dialog for every volume: the button that opens it names the volume #} {% else %}
{% trans "This pool has no volumes." %}
{% endif %} {% endblock %} {% block script %} {% job_panel_script job_resource %} {% if volumes %}{% endif %} {% endblock %}