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

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-primary pull-right">
  Back to list
</a>

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

<div class="row">
  <div class="col-md-9">
    <a class="btn btn-primary btn-lg"
       href="<%= @mini_environment.backend.signon_url(@mini_environment) %>">
      View
    </a>

    <div class="list-group" style="margin-top: 20px;">
      <%= form_with(url: mini_environment_perform_action_path(@mini_environment),
                    local: true,
                    method: "post") do %>
        <%= submit_tag('Start',
                       disabled: !@mini_environment.backend_data.present?,
                       role: 'button',
                       class: 'list-group-item btn btn-lg btn-success btn-block')
        %>
      <% end %>
      <%= form_with(url: mini_environment_perform_action_path(@mini_environment),
                    local: true,
                    method: "post") do %>
        <%= submit_tag("Destroy",
                       disabled: @mini_environment.backend_data.present?,
                       role: 'button',
                       class: 'list-group-item btn btn-lg btn-danger btn-block',
                       style: 'margin-top: 5px;')
        %>
      <% end %>
    </div>
  </div>
</div>

<h2>Finished jobs</h2>

<% @mini_environment.finished_terraform_jobs.each do |job| %>
  <%= job.job_class %>
  <%= job.created_at %>
<% end %>

<h2>Enqueued jobs</h2>

<div class="panel-group"
     id="accordion"
     role="tablist"
     aria-multiselectable="true">

  <% @mini_environment.enqueued_terraform_jobs.each do |job| %>

    <div class="panel panel-default">
      <div class="panel-heading" role="tab" id="headingOne">
        <h4 class="panel-title">
          <a role="button"
             data-toggle="collapse"
             data-parent="#accordion"
             href="#collapseOne"
             aria-expanded="true"
             aria-controls="collapseOne">
            <%= job['job_class'] %>
          </a>
          <span class="pull-right">
            Retrying next in <%= distance_of_time_in_words_to_now(job['run_at'], include_seconds: true) %>
          </span>
        </h4>
      </div>
      <div id="collapseOne" class="panel-collapse collapse in" role="tabpanel" aria-labelledby="headingOne">
        <div class="panel-body">
          This job has failed <%= job['error_count'] %> times.

          <div class="pull-right">
            <%= form_with(url: retry_now_que_job_path(job['job_id'])) do %>
              <%= submit_tag('Retry now', class: 'btn btn-default')
              %>
            <% end %>
            <%= form_with(url: cancel_que_job_path(job['job_id'])) do %>
              <%= submit_tag('Cancel', class: 'btn btn-default')
              %>
            <% end %>
          </div>

          <pre><%= job['last_error'] %></pre>
        </div>
      </div>
    </div>
  <% end %>
</div>