1
0
Fork 0
mirror of https://github.com/mperham/sidekiq.git synced 2022-11-09 13:52:34 -05:00
mperham--sidekiq/web/views/retry.erb
Amadeus Folego 9ea167db16 Migrate Sidekiq::Web to a pure Rack application
Migrate Sidekiq::Web a pure Rack application to avoid sinatra as
dependency. rack-protection is still needed.

The application is mounted on top of Rack::Builder, mantaining all of
the previous http interface.

Rack apps being used:

- Rack::File to serve assets
- Rack::Session::Cookie, the secret can be configured via
  Sidekiq::Web.session_secret
- Rack::Protection, same as before when using sinatra
- Sidekiq::WebApplication, described below.

Sidekiq::WebApplication is a very simple rack application composed of a
Sidekiq::WebRouter and a Sidekiq::WebAction dispatcher. This terminology
was adopted to be able to mantain Sidekiq::Web as a Rack app.

The Router is heavily inspired on Rack::Router[0] (and in many parts
identical), however not being retrocompatible.

The Action is a wrapper to provide convenience, DRY code and maintain
the old interface.

I tried to mantain most of the old application structures so that
customizations and monkey-patches are easily adjustable or even
further work be done to enforce retrocompatibility.

Testing welcome!

0: https://github.com/pjb3/rack-router
2016-07-26 11:43:32 -03:00

34 lines
1.1 KiB
Text

<%= partial :job_info, job: @retry, type: :retry %>
<h3><%= t('Error') %></h3>
<div class="table_container">
<table class="error table table-bordered table-striped">
<tbody>
<tr>
<th><%= t('ErrorClass') %></th>
<td>
<code><%= h @retry.display_class %></code>
</td>
</tr>
<tr>
<th><%= t('ErrorMessage') %></th>
<td><%= h(@retry['error_message']) %></td>
</tr>
<% if !@retry['error_backtrace'].nil? %>
<tr>
<th><%= t('ErrorBacktrace') %></th>
<td>
<code><%= @retry['error_backtrace'].join("<br/>") %></code>
</td>
</tr>
<% end %>
</tbody>
</table>
</div>
<form class="form-horizontal" action="<%= root_path %>retries/<%= job_params(@retry, @retry.score) %>" method="post">
<%= csrf_tag %>
<a class="btn btn-default" href="<%= root_path %>retries"><%= t('GoBack') %></a>
<input class="btn btn-primary" type="submit" name="retry" value="<%= t('RetryNow') %>" />
<input class="btn btn-danger" type="submit" name="delete" value="<%= t('Delete') %>" />
</form>