forked from GithubBackups/healthchecks
Project code in URL for the "Add Pagertree" page. cc: #336
This commit is contained in:
parent
1f950feee1
commit
5fb5b05f2e
@ -3,7 +3,9 @@ from hc.test import BaseTestCase
|
||||
|
||||
|
||||
class AddPagerTreeTestCase(BaseTestCase):
|
||||
url = "/integrations/add_pagertree/"
|
||||
def setUp(self):
|
||||
super(AddPagerTreeTestCase, self).setUp()
|
||||
self.url = "/projects/%s/add_pagertree/" % self.project.code
|
||||
|
||||
def test_instructions_work(self):
|
||||
self.client.login(username="alice@example.org", password="password")
|
||||
@ -15,7 +17,7 @@ class AddPagerTreeTestCase(BaseTestCase):
|
||||
|
||||
self.client.login(username="alice@example.org", password="password")
|
||||
r = self.client.post(self.url, form)
|
||||
self.assertRedirects(r, "/integrations/")
|
||||
self.assertRedirects(r, self.channels_url)
|
||||
|
||||
c = Channel.objects.get()
|
||||
self.assertEqual(c.kind, "pagertree")
|
||||
|
@ -28,7 +28,6 @@ channel_urls = [
|
||||
path("add_pd/", views.add_pd, name="hc-add-pd"),
|
||||
path("add_pdc/", views.add_pdc, name="hc-add-pdc"),
|
||||
path("add_pdc/<str:state>/", views.add_pdc, name="hc-add-pdc-state"),
|
||||
path("add_pagertree/", views.add_pagertree, name="hc-add-pagertree"),
|
||||
path("add_slack/", views.add_slack, name="hc-add-slack"),
|
||||
path("add_slack_btn/", views.add_slack_btn, name="hc-add-slack-btn"),
|
||||
path("add_pushbullet/", views.add_pushbullet, name="hc-add-pushbullet"),
|
||||
@ -64,6 +63,7 @@ project_urls = [
|
||||
path("add_msteams/", views.add_msteams, name="hc-add-msteams"),
|
||||
path("add_opsgenie/", views.add_opsgenie, name="hc-add-opsgenie"),
|
||||
path("add_pagerteam/", views.add_pagerteam, name="hc-add-pagerteam"),
|
||||
path("add_pagertree/", views.add_pagertree, name="hc-add-pagertree"),
|
||||
path("add_webhook/", views.add_webhook, name="hc-add-webhook"),
|
||||
path("badges/", views.badges, name="hc-badges"),
|
||||
path("checks/", views.my_checks, name="hc-checks"),
|
||||
|
@ -977,20 +977,22 @@ def add_pdc(request, state=None):
|
||||
|
||||
|
||||
@login_required
|
||||
def add_pagertree(request):
|
||||
def add_pagertree(request, code):
|
||||
project = _get_project_for_user(request, code)
|
||||
|
||||
if request.method == "POST":
|
||||
form = AddUrlForm(request.POST)
|
||||
if form.is_valid():
|
||||
channel = Channel(project=request.project, kind="pagertree")
|
||||
channel = Channel(project=project, kind="pagertree")
|
||||
channel.value = form.cleaned_data["value"]
|
||||
channel.save()
|
||||
|
||||
channel.assign_all_checks()
|
||||
return redirect("hc-channels")
|
||||
return redirect("hc-p-channels", project.code)
|
||||
else:
|
||||
form = AddUrlForm()
|
||||
|
||||
ctx = {"page": "channels", "project": request.project, "form": form}
|
||||
ctx = {"page": "channels", "project": project, "form": form}
|
||||
return render(request, "integrations/add_pagertree.html", ctx)
|
||||
|
||||
|
||||
|
@ -288,7 +288,7 @@
|
||||
<h2>PagerTree</h2>
|
||||
<p>DevOps Incident Management - On-Call Schedules, Alerts, & Notifications</p>
|
||||
|
||||
<a href="{% url 'hc-add-pagertree' %}" class="btn btn-primary">Add Integration</a>
|
||||
<a href="{% url 'hc-add-pagertree' project.code %}" class="btn btn-primary">Add Integration</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
|
@ -72,7 +72,7 @@
|
||||
|
||||
<h2>Integration Settings</h2>
|
||||
|
||||
<form method="post" class="form-horizontal" action="{% url 'hc-add-pagertree' %}">
|
||||
<form method="post" class="form-horizontal">
|
||||
{% csrf_token %}
|
||||
<div class="form-group {{ form.value.css_classes }}">
|
||||
<label for="post-url" class="col-sm-2 control-label">Endpoint</label>
|
||||
|
Loading…
x
Reference in New Issue
Block a user