mirror of
https://github.com/ansible/awx.git
synced 2026-01-16 04:10:44 -03:30
Add generalized resource to job results view
This commit is contained in:
parent
41d3d29ae8
commit
07ff25a241
@ -3,7 +3,8 @@ import hasAnsi from 'has-ansi';
|
||||
|
||||
let vm;
|
||||
let ansi;
|
||||
let job;
|
||||
let resource;
|
||||
let related;
|
||||
let container;
|
||||
let $timeout;
|
||||
let $sce;
|
||||
@ -38,7 +39,7 @@ const TIME_EVENTS = [
|
||||
];
|
||||
|
||||
function JobsIndexController (
|
||||
_job_,
|
||||
_resource_,
|
||||
_$sce_,
|
||||
_$timeout_,
|
||||
_$scope_,
|
||||
@ -50,11 +51,12 @@ function JobsIndexController (
|
||||
$compile = _$compile_;
|
||||
$scope = _$scope_;
|
||||
$q = _$q_;
|
||||
job = _job_;
|
||||
resource = _resource_;
|
||||
|
||||
ansi = new Ansi();
|
||||
related = getRelated();
|
||||
|
||||
const events = job.get('related.job_events.results');
|
||||
const events = resource.get(`related.${related}.results`);
|
||||
const parsed = parseEvents(events);
|
||||
const html = $sce.trustAsHtml(parsed.html);
|
||||
|
||||
@ -98,9 +100,20 @@ function JobsIndexController (
|
||||
});
|
||||
}
|
||||
|
||||
function getRelated () {
|
||||
const name = resource.constructor.name;
|
||||
|
||||
switch (name) {
|
||||
case 'ProjectUpdateModel':
|
||||
return 'events';
|
||||
case 'JobModel':
|
||||
return 'job_events';
|
||||
}
|
||||
}
|
||||
|
||||
function next () {
|
||||
const config = {
|
||||
related: 'job_events',
|
||||
related,
|
||||
page: meta.page.cache[meta.page.cache.length - 1].page + 1,
|
||||
params: {
|
||||
order_by: 'start_line'
|
||||
@ -108,7 +121,7 @@ function next () {
|
||||
};
|
||||
|
||||
console.log('[2] getting next page', config.page, meta.page.cache);
|
||||
return job.goToPage(config)
|
||||
return resource.goToPage(config)
|
||||
.then(data => {
|
||||
if (!data || !data.results) {
|
||||
return $q.resolve();
|
||||
@ -125,7 +138,7 @@ function next () {
|
||||
|
||||
function prev () {
|
||||
const config = {
|
||||
related: 'job_events',
|
||||
related,
|
||||
page: meta.page.cache[0].page - 1,
|
||||
params: {
|
||||
order_by: 'start_line'
|
||||
@ -133,7 +146,7 @@ function prev () {
|
||||
};
|
||||
|
||||
console.log('[2] getting previous page', config.page, meta.page.cache);
|
||||
return job.goToPage(config)
|
||||
return resource.goToPage(config)
|
||||
.then(data => {
|
||||
if (!data || !data.results) {
|
||||
return $q.resolve();
|
||||
@ -569,7 +582,7 @@ function onScroll () {
|
||||
}
|
||||
|
||||
JobsIndexController.$inject = [
|
||||
'job',
|
||||
'resource',
|
||||
'$sce',
|
||||
'$timeout',
|
||||
'$scope',
|
||||
|
||||
@ -10,7 +10,7 @@ const indexTemplate = require('~features/output/index.view.html');
|
||||
|
||||
const MODULE_NAME = 'at.features.output';
|
||||
|
||||
function resolveJob (Job, ProjectUpdate, AdHocCommand, SystemJob, WorkflowJob, $stateParams) {
|
||||
function resolveResource (Job, ProjectUpdate, AdHocCommand, SystemJob, WorkflowJob, $stateParams) {
|
||||
const { id } = $stateParams;
|
||||
const { type } = $stateParams;
|
||||
|
||||
@ -73,14 +73,14 @@ function JobsRun ($stateExtender, strings) {
|
||||
}
|
||||
},
|
||||
resolve: {
|
||||
job: [
|
||||
resource: [
|
||||
'JobModel',
|
||||
'ProjectUpdateModel',
|
||||
'AdHocCommandModel',
|
||||
'SystemJobModel',
|
||||
'WorkflowJobModel',
|
||||
'$stateParams',
|
||||
resolveJob
|
||||
resolveResource
|
||||
]
|
||||
}
|
||||
});
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user