blob: 1b1006ff8b43b2e539c773beefab18f21afacbd9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
{% load i18n sizeformat %}
{% load url from future %}
<h3>{% trans "Instance Overview" %}</h3>
<div class="status row-fluid detail">
<h4>{% trans "Info" %}</h4>
<hr class="header_rule">
<dl>
<dt>{% trans "Name" %}</dt>
<dd>{{ instance.name }}</dd>
<dt>{% trans "ID" %}</dt>
<dd>{{ instance.id }}</dd>
<dt>{% trans "Status" %}</dt>
<dd>{{ instance.status|title }}</dd>
<dt>{% trans "Created" %}</dt>
<dd>{{ instance.created|parse_isotime }}</dd>
<dt>{% trans "Uptime" %}</dt>
<dd>{{ instance.created|parse_isotime|timesince }}</dd>
</dl>
</div>
<div class="specs row-fluid detail">
<h4>{% trans "Specs" %}</h4>
<hr class="header_rule">
<dl>
<dt>{% trans "Flavor" %}</dt>
<dd>{{ instance.full_flavor.name }}</dd>
<dt>{% trans "RAM" %}</dt>
<dd>{{ instance.full_flavor.ram|mbformat }}</dd>
<dt>{% trans "VCPUs" %}</dt>
<dd>{{ instance.full_flavor.vcpus }} {% trans "VCPU" %}</dd>
<dt>{% trans "Disk" %}</dt>
<dd>{{ instance.full_flavor.disk }}{% trans "GB" %}</dd>
{% if instance.full_flavor.ephemeral %}
<dt>{% trans "Ephemeral Disk" %}</dt>
<dd>{{ instance.full_flavor.ephemeral }}{% trans "GB" %}</dd>
{% endif %}
</dl>
</div>
<div class="addresses row-fluid detail">
<h4>{% trans "IP Addresses" %}</h4>
<hr class="header_rule">
<dl>
{% for network, ip_list in instance.addresses.items %}
<dt>{{ network|title }}</dt>
<dd>
{% for ip in ip_list %}
{% if not forloop.last %}{{ ip.addr}}, {% else %}{{ip.addr}}{% endif %}
{% endfor %}
</dd>
{% endfor %}
</dl>
</div>
<div class="security_groups row-fluid detail">
<h4>{% trans "Security Groups" %}</h4>
<hr class="header_rule">
<dl>
{% for group in instance.security_groups %}
<dt>{{ group.name }}</dt>
<dd>
<ul>
{% for rule in group.rules %}
<li>{{ rule }}</li>
{% empty %}
<li><em>{% trans "No rules defined." %}</em></li>
{% endfor %}
</ul>
</dd>
{% endfor %}
</dl>
</div>
<div class="meta row-fluid detail">
<h4>{% trans "Meta" %}</h4>
<hr class="header_rule">
<dl>
<dt>{% trans "Key Name" %}</dt>
{% with default_key_name="<em>"|add:_("None")|add:"</em>" %}
<dd>{{ instance.key_name|default:default_key_name }}</dd>
{% endwith %}
{% url 'horizon:project:images_and_snapshots:images:detail' instance.image.id as image_url %}
<dt>{% trans "Image Name" %}</dt>
<dd><a href="{{ image_url }}">{{ instance.image_name }}</a></dd>
{% with default_item_value="<em>"|add:_("N/A")|add:"</em>" %}
{% for key, value in instance.metadata.items %}
<dt>{{ key|force_escape }}</dt>
<dd>{{ value|force_escape|default:default_item_value }}</dd>
{% endfor%}
{% endwith %}
</dl>
</div>
<div class="volumes row-fluid detail">
<h4>{% trans "Volumes Attached" %}</h4>
<hr class="header_rule">
<dl>
{% for volume in instance.volumes %}
<dt>{% trans "Attached To" %}</dt>
<dd>
<a href="{% url 'horizon:project:volumes:detail' volume.volumeId %}">{{ volume.name }}</a><span> {% trans "on" %} {{ volume.device }}</span>
</dd>
{% empty %}
<dt>{% trans "Volume" %}</dt>
<dd><em>{% trans "No volumes attached." %}</em></dd>
{% endfor %}
</dl>
</dl>
</div>
|