mirror of
https://github.com/ansible/awx.git
synced 2026-03-16 00:17:29 -02:30
# Add a postfix to the UI URL patterns for UI URL generated by the API # example if set to '' UI URL generated by the API for jobs would be $TOWER_URL/jobs # example if set to 'execution' UI URL generated by the API for jobs would be $TOWER_URL/execution/jobs Co-authored-by: Hao Liu <44379968+TheRealHaoLiu@users.noreply.github.com>
This commit is contained in:
@@ -161,7 +161,7 @@ class AdHocCommand(UnifiedJob, JobNotificationMixin):
|
|||||||
return reverse('api:ad_hoc_command_detail', kwargs={'pk': self.pk}, request=request)
|
return reverse('api:ad_hoc_command_detail', kwargs={'pk': self.pk}, request=request)
|
||||||
|
|
||||||
def get_ui_url(self):
|
def get_ui_url(self):
|
||||||
return urljoin(settings.TOWER_URL_BASE, "/#/jobs/command/{}".format(self.pk))
|
return urljoin(settings.TOWER_URL_BASE, "{}/jobs/command/{}".format(settings.OPTIONAL_UI_URL_PREFIX, self.pk))
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def notification_templates(self):
|
def notification_templates(self):
|
||||||
|
|||||||
@@ -1353,7 +1353,7 @@ class InventoryUpdate(UnifiedJob, InventorySourceOptions, JobNotificationMixin,
|
|||||||
return reverse('api:inventory_update_detail', kwargs={'pk': self.pk}, request=request)
|
return reverse('api:inventory_update_detail', kwargs={'pk': self.pk}, request=request)
|
||||||
|
|
||||||
def get_ui_url(self):
|
def get_ui_url(self):
|
||||||
return urljoin(settings.TOWER_URL_BASE, "/#/jobs/inventory/{}".format(self.pk))
|
return urljoin(settings.TOWER_URL_BASE, "{}/jobs/inventory/{}".format(settings.OPTIONAL_UI_URL_PREFIX, self.pk))
|
||||||
|
|
||||||
def get_actual_source_path(self):
|
def get_actual_source_path(self):
|
||||||
'''Alias to source_path that combines with project path for for SCM file based sources'''
|
'''Alias to source_path that combines with project path for for SCM file based sources'''
|
||||||
|
|||||||
@@ -628,7 +628,7 @@ class Job(UnifiedJob, JobOptions, SurveyJobMixin, JobNotificationMixin, TaskMana
|
|||||||
return reverse('api:job_detail', kwargs={'pk': self.pk}, request=request)
|
return reverse('api:job_detail', kwargs={'pk': self.pk}, request=request)
|
||||||
|
|
||||||
def get_ui_url(self):
|
def get_ui_url(self):
|
||||||
return urljoin(settings.TOWER_URL_BASE, "/#/jobs/playbook/{}".format(self.pk))
|
return urljoin(settings.TOWER_URL_BASE, "{}/jobs/playbook/{}".format(settings.OPTIONAL_UI_URL_PREFIX, self.pk))
|
||||||
|
|
||||||
def _set_default_dependencies_processed(self):
|
def _set_default_dependencies_processed(self):
|
||||||
"""
|
"""
|
||||||
@@ -1275,7 +1275,7 @@ class SystemJob(UnifiedJob, SystemJobOptions, JobNotificationMixin):
|
|||||||
return reverse('api:system_job_detail', kwargs={'pk': self.pk}, request=request)
|
return reverse('api:system_job_detail', kwargs={'pk': self.pk}, request=request)
|
||||||
|
|
||||||
def get_ui_url(self):
|
def get_ui_url(self):
|
||||||
return urljoin(settings.TOWER_URL_BASE, "/#/jobs/system/{}".format(self.pk))
|
return urljoin(settings.TOWER_URL_BASE, "{}/jobs/system/{}".format(settings.OPTIONAL_UI_URL_PREFIX, self.pk))
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def event_class(self):
|
def event_class(self):
|
||||||
|
|||||||
@@ -631,7 +631,7 @@ class ProjectUpdate(UnifiedJob, ProjectOptions, JobNotificationMixin, TaskManage
|
|||||||
return reverse('api:project_update_detail', kwargs={'pk': self.pk}, request=request)
|
return reverse('api:project_update_detail', kwargs={'pk': self.pk}, request=request)
|
||||||
|
|
||||||
def get_ui_url(self):
|
def get_ui_url(self):
|
||||||
return urlparse.urljoin(settings.TOWER_URL_BASE, "/#/jobs/project/{}".format(self.pk))
|
return urlparse.urljoin(settings.TOWER_URL_BASE, "{}/jobs/project/{}".format(settings.OPTIONAL_UI_URL_PREFIX, self.pk))
|
||||||
|
|
||||||
def cancel(self, job_explanation=None, is_chain=False):
|
def cancel(self, job_explanation=None, is_chain=False):
|
||||||
res = super(ProjectUpdate, self).cancel(job_explanation=job_explanation, is_chain=is_chain)
|
res = super(ProjectUpdate, self).cancel(job_explanation=job_explanation, is_chain=is_chain)
|
||||||
|
|||||||
@@ -1160,6 +1160,11 @@ include(os.path.join(os.path.dirname(dynamic_config.__file__), 'dynamic_settings
|
|||||||
# example if set to 'controller' API pattern will be /api AND /api/controller
|
# example if set to 'controller' API pattern will be /api AND /api/controller
|
||||||
OPTIONAL_API_URLPATTERN_PREFIX = ''
|
OPTIONAL_API_URLPATTERN_PREFIX = ''
|
||||||
|
|
||||||
|
# Add a postfix to the UI URL patterns for UI URL generated by the API
|
||||||
|
# example if set to '' UI URL generated by the API for jobs would be $TOWER_URL/jobs
|
||||||
|
# example if set to 'execution' UI URL generated by the API for jobs would be $TOWER_URL/execution/jobs
|
||||||
|
OPTIONAL_UI_URL_PREFIX = ''
|
||||||
|
|
||||||
# Use AWX base view, to give 401 on unauthenticated requests
|
# Use AWX base view, to give 401 on unauthenticated requests
|
||||||
ANSIBLE_BASE_CUSTOM_VIEW_PARENT = 'awx.api.generics.APIView'
|
ANSIBLE_BASE_CUSTOM_VIEW_PARENT = 'awx.api.generics.APIView'
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user