aboutsummaryrefslogtreecommitdiff
path: root/app/views/mini_environments/show.html.erb
blob: bfb9a5421b16d517a1c172a410bd56b330e563f9 (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
112
113
114
115
<%#

GOV.UK Mini Environment Admin
Copyright © 2018  Christopher Baines <mail@cbaines.net>

This file is part of the GOV.UK Mini Environment Admin.

The GOV.UK Mini Environment Admin is free software: you can
redistribute it and/or modify it under the terms of the GNU Affero
General Public License as published by the Free Software Foundation,
either version 3 of the License, or (at your option) any later
version.

The GOV.UK Mini Environment Admin is distributed in the hope that it
will be useful, but WITHOUT ANY WARRANTY; without even the implied
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public
License along with the GOV.UK Mini Environment Admin.  If not, see
<http://www.gnu.org/licenses/>.

%>

<a href="<%= mini_environments_path %>" class="btn btn-lg btn-default pull-right">
  Back to list
</a>

<h1>Name: <%= @mini_environment.name %></h1>
<br>

<div class="row">
  <div class="col-md-3">
    <% status = @mini_environment.status %>

    <% if status[:running] %>
      <a class="btn btn-primary btn-lg"
         href="<%= @mini_environment.backend.signon_url(@mini_environment) %>">
        View
      </a>

      <%= form_with(url: mini_environment_perform_action_path(@mini_environment),
                    local: true,
                    method: "post") do %>
        <%= submit_tag("Destroy",
                       role: 'button',
                       class: 'btn btn-lg btn-danger')
        %>
      <% end %>
    <% else %>
      <%= form_with(url: mini_environment_perform_action_path(@mini_environment),
                    local: true,
                    method: "post") do %>
        <%= submit_tag('Start the mini environment',
                       disabled: !@mini_environment.backend_data.present?,
                       role: 'button',
                       class: 'btn btn-lg btn-success')
        %>
      <% end %>
    <% end %>
  </div>
  <div class="col-md-9">
    <%= render(
      partial: 'shared/jobs',
      locals: {
        jobs: MiniEnvironmentJob.jobs(@mini_environment.id).order(id: :desc)
      }
    ) %>
  </div>
</div>

<h2>Services</h2>

<% customised_services = @mini_environment.services.select(&:customised?) %>
<% uncustomised_services = @mini_environment.services.reject(&:customised?) %>

<ul>
  <% customised_services.each do |service| %>
    <li><%= service.name %> (<%= service.revision %>)</li>
  <% end %>
</ul>

Plus <%= uncustomised_services.length %> other services at the revision specified in the revision of GOV.UK Guix
(<a
     href="<%= govuk_guix_revision_path @mini_environment.govuk_guix_revision %>"
 >show revision details</a>):

<% multi_column = (uncustomised_services.length > 6) %>
<ul <% if multi_column %>class="row"<% end %>>
  <% uncustomised_services.each do |service| %>
    <li <% if multi_column %>class="col-xs-12 col-sm-6 col-md-3"<% end %>><%= service.name %></li>
  <% end %>
</ul>

<h3>Initial Signon Users</h3>

<table class="table table-bordered table-hover">
  <thead>
    <tr class="table-header">
      <th>Name</th>
      <th>Email Address</th>
      <th>Role</th>
      <th>Passphrase</th>
    </tr>
  </thead>
  <tbody>
    <% @mini_environment.signon_users.each do |user| %>
      <tr>
        <% %w[name email role passphrase].each do |field| %>
          <td><%= user[field] %></td>
        <% end %>
      </tr>
    <% end %>
  </tbody>
</table>