Andrew Bogott has submitted this change and it was merged.

Change subject: puppettable:  Eliminate most uses of instance_id
......................................................................


puppettable:  Eliminate most uses of instance_id

We were passing this all over just so we would have
the right URL to return to from our modals.  Returning
to the referrer works ok and lets us simplify
and generalize the code quite a bit.

Change-Id: If7493dbe0617cea612446f6b3c037fc14f02eecf
---
M modules/openstack/files/liberty/horizon/puppettab/puppet_tables.py
M modules/openstack/files/liberty/horizon/puppettab/tab.py
M modules/openstack/files/liberty/horizon/puppettab/urls.py
M modules/openstack/files/liberty/horizon/puppettab/views.py
4 files changed, 12 insertions(+), 24 deletions(-)

Approvals:
  Andrew Bogott: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/modules/openstack/files/liberty/horizon/puppettab/puppet_tables.py 
b/modules/openstack/files/liberty/horizon/puppettab/puppet_tables.py
index ad5f99c..d2e2a51 100644
--- a/modules/openstack/files/liberty/horizon/puppettab/puppet_tables.py
+++ b/modules/openstack/files/liberty/horizon/puppettab/puppet_tables.py
@@ -71,7 +71,6 @@
         kwargs = {
             'fqdn': datum.fqdn,
             'tenantid': datum.tenant_id,
-            'instanceid': datum.instance_id,
             'roleid': datum.name,
         }
         return urlresolvers.reverse(url, kwargs=kwargs)
@@ -92,7 +91,6 @@
         kwargs = {
             'fqdn': datum.fqdn,
             'tenantid': datum.tenant_id,
-            'instanceid': datum.instance_id,
             'roleid': datum.name,
         }
         return urlresolvers.reverse(url, kwargs=kwargs)
diff --git a/modules/openstack/files/liberty/horizon/puppettab/tab.py 
b/modules/openstack/files/liberty/horizon/puppettab/tab.py
index 2cab719..8278d13 100644
--- a/modules/openstack/files/liberty/horizon/puppettab/tab.py
+++ b/modules/openstack/files/liberty/horizon/puppettab/tab.py
@@ -64,7 +64,6 @@
         kwargs = {
             'fqdn': fqdn,
             'tenantid': instance.tenant_id,
-            'instanceid': instance.id,
         }
         context['edithieraurl'] = urlresolvers.reverse(url, kwargs=kwargs)
 
diff --git a/modules/openstack/files/liberty/horizon/puppettab/urls.py 
b/modules/openstack/files/liberty/horizon/puppettab/urls.py
index 936a5a7..d1e5b8f 100644
--- a/modules/openstack/files/liberty/horizon/puppettab/urls.py
+++ b/modules/openstack/files/liberty/horizon/puppettab/urls.py
@@ -21,12 +21,12 @@
     '',
     url(r'^$', panel.IndexView.as_view(), name='index'),
     url(r'^(?P<fqdn>[^/]+)/(?P<tenantid>[^/]+)/'
-        '(?P<instanceid>[^/]+)/(?P<roleid>[^/]+)/applypuppetrole$',
+        '(?P<roleid>[^/]+)/applypuppetrole$',
         views.ApplyRoleView.as_view(), name='applypuppetrole'),
     url(r'^(?P<fqdn>[^/]+)/(?P<tenantid>[^/]+)/'
-        '(?P<instanceid>[^/]+)/(?P<roleid>[^/]+)/removepuppetrole$',
+        '(?P<roleid>[^/]+)/removepuppetrole$',
         views.RemoveRoleView.as_view(), name='removepuppetrole'),
     url(r'^(?P<fqdn>[^/]+)/(?P<tenantid>[^/]+)/'
-        '(?P<instanceid>[^/]+)/edithiera$',
+        'edithiera$',
         views.EditHieraView.as_view(), name='edithiera'),
 )
diff --git a/modules/openstack/files/liberty/horizon/puppettab/views.py 
b/modules/openstack/files/liberty/horizon/puppettab/views.py
index b1d0f1e..47b1e79 100644
--- a/modules/openstack/files/liberty/horizon/puppettab/views.py
+++ b/modules/openstack/files/liberty/horizon/puppettab/views.py
@@ -16,6 +16,7 @@
 import logging
 
 from django.core import urlresolvers
+from django.core.validators import URLValidator
 from django.utils.safestring import mark_safe
 from django.utils.translation import ugettext_lazy as _
 
@@ -62,15 +63,16 @@
         urlkwargs = {
             'fqdn': self.fqdn,
             'tenantid': self.tenant_id,
-            'instanceid': self.instance_id,
         }
         context['submit_url'] = urlresolvers.reverse(self.submit_url,
                                                      kwargs=urlkwargs)
         return context
 
     def get_success_url(self):
-        success_url = "horizon:project:instances:detail"
-        return urlresolvers.reverse(success_url, args=[self.instance_id])
+        validate = URLValidator()
+        refer = self.request.META.get('HTTP_REFERER', '/')
+        validate(refer)
+        return refer
 
     def get_fqdn(self):
         return self.kwargs['fqdn']
@@ -78,14 +80,10 @@
     def get_tenant_id(self):
         return self.kwargs['tenantid']
 
-    def get_instance_id(self):
-        return self.kwargs['instanceid']
-
     def get_initial(self):
         initial = {}
         self.fqdn = self.get_fqdn()
         self.tenant_id = self.get_tenant_id()
-        self.instance_id = self.get_instance_id()
         self.hieradata = puppet_config(self.fqdn, self.tenant_id)
         initial['hieradata'] = self.hieradata.hiera
         initial['fqdn'] = self.fqdn
@@ -105,7 +103,6 @@
         urlkwargs = {
             'fqdn': self.fqdn,
             'tenantid': self.tenant_id,
-            'instanceid': self.instance_id,
             'roleid': self.role_id,
         }
         context['fqdn'] = self.fqdn
@@ -122,8 +119,10 @@
         return context
 
     def get_success_url(self):
-        success_url = "horizon:project:instances:detail"
-        return urlresolvers.reverse(success_url, args=[self.instance_id])
+        validate = URLValidator()
+        refer = self.request.META.get('HTTP_REFERER', '/')
+        validate(refer)
+        return refer
 
     def get_puppet_role(self):
         rolename = self.kwargs['roleid']
@@ -136,19 +135,13 @@
     def get_tenant_id(self):
         return self.kwargs['tenantid']
 
-    def get_instance_id(self):
-        return self.kwargs['instanceid']
-
     def get_initial(self):
         initial = {}
         self.fqdn = self.get_fqdn()
         self.tenant_id = self.get_tenant_id()
-        self.instance_id = self.get_instance_id()
         self.role_id = self.kwargs['roleid']
         self.puppet_role = self.get_puppet_role()
-        self.instance_id = self.get_instance_id()
         initial['puppet_role'] = self.puppet_role
-        initial['instance_id'] = self.instance_id
         initial['tenant_id'] = self.tenant_id
         initial['fqdn'] = self.fqdn
         return initial
@@ -158,7 +151,6 @@
     def __init__(self, request, *args, **kwargs):
         super(ApplyRoleForm, self).__init__(request, *args, **kwargs)
         initial = kwargs.get('initial', {})
-        self.instance_id = initial['instance_id']
         self.tenant_id = initial['tenant_id']
         self.fqdn = initial['fqdn']
         self.role = initial['puppet_role']
@@ -193,7 +185,6 @@
     def __init__(self, request, *args, **kwargs):
         super(RemoveRoleForm, self).__init__(request, *args, **kwargs)
         initial = kwargs.get('initial', {})
-        self.instance_id = initial['instance_id']
         self.tenant_id = initial['tenant_id']
         self.fqdn = initial['fqdn']
         self.role = initial['puppet_role']

-- 
To view, visit https://gerrit.wikimedia.org/r/310148
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: If7493dbe0617cea612446f6b3c037fc14f02eecf
Gerrit-PatchSet: 2
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Andrew Bogott <abog...@wikimedia.org>
Gerrit-Reviewer: Alex Monk <a...@wikimedia.org>
Gerrit-Reviewer: Andrew Bogott <abog...@wikimedia.org>
Gerrit-Reviewer: Volans <rcocci...@wikimedia.org>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to