{% extends "base.html" %}
|
|
{% load humanize static hc_extras %}
|
|
|
|
{% block title %}Add Slack - {% site_name %}{% endblock %}
|
|
|
|
|
|
{% block content %}
|
|
<div class="row">
|
|
<div class="col-sm-12">
|
|
|
|
{% if slack_client_id %}
|
|
<div class="jumbotron">
|
|
{% if request.user.is_authenticated %}
|
|
<p>If your team uses <a href="https://slack.com/">Slack</a>, you can set
|
|
up {% site_name %} to post status updates directly to an appropriate
|
|
Slack channel.</p>
|
|
|
|
<div class="text-center">
|
|
<a href="https://slack.com/oauth/authorize?scope=incoming-webhook&client_id={{ slack_client_id }}&state={{ state }}">
|
|
<img
|
|
alt="Add to Slack"
|
|
height="40"
|
|
width="139"
|
|
src="{% static 'img/integrations/add_to_slack.png' %}"
|
|
srcset="{% static 'img/integrations/add_to_slack.png' %} 1x, {% static 'img/integrations/[email protected]' %} 2x" />
|
|
</a>
|
|
</div>
|
|
|
|
{% else %}
|
|
<p>
|
|
{% site_name %} is a <strong>free</strong> and
|
|
<a href="https://github.com/healthchecks/healthchecks">open source</a>
|
|
service for monitoring your cron jobs, background processes and
|
|
scheduled tasks. Before adding Slack integration, please log into
|
|
{% site_name %}:</p>
|
|
|
|
<div class="text-center">
|
|
<a href="{% url 'hc-login' %}?next={% url 'hc-add-slack' %}"
|
|
class="btn btn-primary btn-lg">Sign In</a>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
|
|
<h2>Setup Guide</h2>
|
|
|
|
<div class="row ai-step">
|
|
<div class="col-sm-6">
|
|
<span class="step-no">1</span>
|
|
<p>
|
|
After {% if request.user.is_authenticated %}{% else %}signing in and{% endif %}
|
|
clicking on "Add to Slack", you should
|
|
be on a page that says "{% site_name %} would like access to
|
|
your Slack team". Select the team you want to add the
|
|
{% site_name %} integration app to.
|
|
</p>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<img
|
|
class="ai-guide-screenshot"
|
|
alt="Screenshot"
|
|
src="{% static 'img/integrations/setup_slack_btn_1.png' %}">
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row ai-step">
|
|
<div class="col-sm-6">
|
|
<span class="step-no">2</span>
|
|
<p>
|
|
You should now be on a page that says "{% site_name %} would
|
|
like access to <i>TEAM NAME</i>". Select the channel you want to
|
|
post {% site_name %} notifications to.
|
|
</p>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<img
|
|
class="ai-guide-screenshot"
|
|
alt="Screenshot"
|
|
src="{% static 'img/integrations/setup_slack_btn_2.png' %}">
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row ai-step">
|
|
<div class="col-sm-6">
|
|
<span class="step-no">3</span>
|
|
<p>
|
|
That is all! You will now be redirected back to
|
|
"Integrations" page on {% site_name %} and see
|
|
the new integration!
|
|
</p>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<img
|
|
class="ai-guide-screenshot"
|
|
alt="Screenshot"
|
|
src="{% static 'img/integrations/setup_slack_btn_3.png' %}">
|
|
</div>
|
|
</div>
|
|
{% else %}
|
|
<h1>Slack</h1>
|
|
|
|
<p>If your team uses <a href="https://slack.com/">Slack</a>, you can set
|
|
up {% site_name %} to post status updates directly to an appropriate
|
|
Slack channel.</p>
|
|
|
|
<h2>Setup Guide</h2>
|
|
|
|
<div class="row ai-step">
|
|
<div class="col-sm-6">
|
|
<span class="step-no">1</span>
|
|
Log into your Slack account and
|
|
pick an appropriate Slack channel. From the dropdown next to
|
|
channel's name, pick <strong>Add a service integration...</strong>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<img
|
|
class="ai-guide-screenshot"
|
|
alt="Screenshot"
|
|
src="{% static 'img/integrations/setup_slack_1.png' %}">
|
|
</div>
|
|
</div>
|
|
<div class="row ai-step">
|
|
<div class="col-sm-6">
|
|
<span class="step-no">2</span>
|
|
From the list of available integrations, select
|
|
<strong>Incoming WebHooks</strong>, and click on
|
|
<strong>Add Incoming WebHooks Integration</strong>.
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row ai-step">
|
|
<div class="col-sm-6">
|
|
<span class="step-no">3</span>
|
|
<p>Copy the displayed <strong>WebHook URL</strong> and paste it down below.</p>
|
|
<p>Save the integration, and it's done!</p>
|
|
</div>
|
|
<div class="col-sm-6">
|
|
<img
|
|
class="ai-guide-screenshot"
|
|
alt="Screenshot"
|
|
src="{% static 'img/integrations/setup_slack_2.png' %}">
|
|
</div>
|
|
</div>
|
|
|
|
<h2>Integration Settings</h2>
|
|
|
|
<form method="post" class="form-horizontal" action="{% url 'hc-add-slack' %}">
|
|
{% csrf_token %}
|
|
<div class="form-group {{ form.value.css_classes }}">
|
|
<label for="callback-url" class="col-sm-2 control-label">
|
|
Callback URL
|
|
</label>
|
|
<div class="col-sm-10">
|
|
<input
|
|
id="callback-url"
|
|
type="text"
|
|
class="form-control"
|
|
name="value"
|
|
placeholder="https://"
|
|
value="{{ form.value.value|default:"" }}">
|
|
|
|
{% if form.value.errors %}
|
|
<div class="help-block">
|
|
{{ form.value.errors|join:"" }}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
<div class="form-group">
|
|
<div class="col-sm-offset-2 col-sm-10">
|
|
<button type="submit" class="btn btn-primary">Save Integration</button>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
{% endif %}
|
|
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|