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
{% extends "op_layout.html" %}
{% block title %}Organizations — {{ brand_name | default(value='Rustango Operator Console') }}{% endblock %}
{% block content %}
Organizations
{#- Where a decommission reports back: it removes the tenant, so there
is no tenant page left to return to. -#}
{% if error %}{{ error }}{% endif %}
{% if notice %}{{ notice }}{% endif %}
{#- A div, not a p: `` is not phrasing content, so the HTML parser
closes an open `` when it meets one — the actions row split in two
and left stray empty paragraphs on the page. -#}
{#- One row for every action this console can offer. Pre-warming is gated
on pools and the rest on the provisioner, so the two are separate
conditions — but they belong in the same row, not stacked with the
description between them. -#}
{% if provisioning_enabled or edit_enabled %}
{% if provisioning_enabled %}
+ New tenant
Runs
{{ csrf_input | default(value='') | safe }}
Migrate all tenants
{% endif %}
{% if edit_enabled %}
{{ csrf_input | default(value='') | safe }}
Pre-warm pools
{% endif %}
{% endif %}
{% if provisioning_enabled %}
Tenants the registry knows about. Create one here, or from the CLI
with cargo run -- create-tenant; removal is
cargo run -- drop-tenant.
{% else %}
Tenants the registry knows about. Mutations go through
cargo run -- create-tenant / cargo run -- drop-tenant
(or whatever your project binary is — runs through
rustango::manage::Cli). To create tenants from here, add
.with_tenant_provisioning("migrations") to the
Cli builder.
{% endif %}
{% if orgs | length == 0 %}
{% if provisioning_enabled %}
No tenants yet —
create the first one.
{% else %}
No tenants yet — provision one with
cargo run -- create-tenant <slug>.
{% endif %}
{% else %}
Slug
Display name
Mode
Host pattern
Active
Created
{% if edit_enabled %}Actions{% endif %}
{% for org in orgs %}
{{ org.slug }}
{{ org.display_name }}
{{ org.storage_mode }}
{% if org.host_pattern %}{{ org.host_pattern }}{% else %}—{% endif %}
{% if org.active %}✓{% else %}—{% endif %}
{{ org.created_at }}
{% if edit_enabled %}Edit{% endif %}
{% endfor %}
{% endif %}
{% include "_op_pager.html" %}
{% endblock %}