mirror of
https://github.com/ansible/awx.git
synced 2026-01-21 14:38:00 -03:30
Adding socket object to route definitions
for stdout routes, as well as removing some old code
This commit is contained in:
parent
aa4a8f6089
commit
0fb4a1a62a
@ -15,8 +15,8 @@ export default {
|
||||
},
|
||||
socket: {
|
||||
"groups":{
|
||||
"jobs": ["status_changed", "summary"]
|
||||
// "job_events": `[${stateParams.id}]`
|
||||
"jobs": ["status_changed", "summary"],
|
||||
"job_events": []
|
||||
}
|
||||
},
|
||||
templateUrl: templateUrl('job-detail/job-detail'),
|
||||
|
||||
@ -9,6 +9,11 @@ export default {
|
||||
url: '/portal',
|
||||
ncyBreadcrumb: {
|
||||
label: "MY VIEW"
|
||||
},
|
||||
socket: {
|
||||
"groups":{
|
||||
"jobs": ["status_changed"]
|
||||
}
|
||||
},
|
||||
views: {
|
||||
// the empty parent ui-view
|
||||
|
||||
@ -10,36 +10,31 @@ export default
|
||||
return {
|
||||
init: function() {
|
||||
var self = this,
|
||||
// token = Authorization.getToken(),
|
||||
host = window.location.host,
|
||||
url = "ws://" + host + "/websocket/";
|
||||
if (!$rootScope.sessionTimer || ($rootScope.sessionTimer && !$rootScope.sessionTimer.isExpired())) {
|
||||
// We have a valid session token, so attempt socket connection
|
||||
$log.debug('Socket connecting to: ' + url);
|
||||
|
||||
self.socket = new ReconnectingWebSocket(url, null, {
|
||||
debug: true,
|
||||
// debug: true,
|
||||
timeoutInterval: 3000,
|
||||
maxReconnectAttempts: 10
|
||||
});
|
||||
|
||||
self.socket.onopen = function () {
|
||||
console.log('websocket connected'); //log errors
|
||||
$log.debug("Websocket connection opened");
|
||||
$rootScope.socketPromise.resolve();
|
||||
};
|
||||
//
|
||||
// self.socket.onerror = function (error) {
|
||||
// console.log('Error Logged: ' + error); //log errors
|
||||
// };
|
||||
|
||||
self.socket.onerror = function (error) {
|
||||
$log.debug('Error Logged: ' + error); //log errors
|
||||
};
|
||||
|
||||
self.socket.onmessage = function (e) {
|
||||
console.log('Received From Server: ' + e.data);
|
||||
$log.debug('Received From Server: ' + e.data);
|
||||
var data = JSON.parse(e.data);
|
||||
// {'groups':
|
||||
// {'jobs': ['status_changed', 'summary'],
|
||||
// 'schedules': ['changed'],
|
||||
// 'ad_hoc_command_events': [ids,],
|
||||
// 'job_events': [ids,],
|
||||
// 'control': ['limit_reached'],
|
||||
// }
|
||||
// }
|
||||
|
||||
if(data.group_name==="jobs"){
|
||||
|
||||
if (!('status' in data)){
|
||||
@ -107,40 +102,6 @@ export default
|
||||
console.log(state.name);
|
||||
this.emit(JSON.stringify(state.socket));
|
||||
},
|
||||
// subscribe: function(toState, toParams){
|
||||
// if(toState.name === 'dashboard'){
|
||||
// this.emit('{"groups":{"jobs": ["status_changed"]}}');
|
||||
// console.log(toState.name);
|
||||
// }
|
||||
// if(toState.name === 'jobDetail'){
|
||||
// this.emit(`{"groups":{"jobs": ["status_changed", "summary"] , "job_events":[${toParams.id}]}}`);
|
||||
// console.log(toState.name);
|
||||
// }
|
||||
// if(toState.name === 'jobStdout'){
|
||||
// this.emit('{"groups":{"jobs": ["status_changed"]}}');
|
||||
// console.log(toState.name);
|
||||
// }
|
||||
// if(toState.name === 'jobs'){
|
||||
// this.emit('{"groups":{"jobs": ["status_changed"] , "schedules": ["changed"]}}');
|
||||
// console.log(toState.name);
|
||||
// }
|
||||
// if(toState.name === 'portalMode'){
|
||||
// this.emit('{"groups":{"jobs": ["status_changed"]}}');
|
||||
// console.log(toState.name);
|
||||
// }
|
||||
// if(toState.name === 'projects'){
|
||||
// this.emit('{"groups":{"jobs": ["status_changed"]}}');
|
||||
// console.log(toState.name);
|
||||
// }
|
||||
// if(toState.name === 'inventoryManage'){
|
||||
// this.emit('{"groups":{"jobs": ["status_changed"]}}');
|
||||
// console.log(toState.name);
|
||||
// }
|
||||
// if(toState.name === 'adHocJobStdout'){
|
||||
// this.emit(`{"groups":{"jobs": ["status_changed"] , "ad_hoc_command_events": [${toParams.id}]}}`);
|
||||
// console.log(toState.name);
|
||||
// }
|
||||
// },
|
||||
checkStatus: function() {
|
||||
|
||||
function getSocketTip(status) {
|
||||
@ -176,22 +137,9 @@ export default
|
||||
}
|
||||
|
||||
},
|
||||
// on: function (eventName, callback) {
|
||||
// var self = this;
|
||||
// if(self){
|
||||
// if(self.socket){
|
||||
// // self.socket.onmessage(function (e) {
|
||||
// // var args = arguments;
|
||||
// // self.scope.$apply(function () {
|
||||
// // callback.apply(self.socket, args);
|
||||
// // });
|
||||
// // });
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// },
|
||||
emit: function (eventName, data, callback) {
|
||||
var self = this;
|
||||
$log.debug('Sent to Server: ' + data);
|
||||
$rootScope.socketPromise.promise.then(function(){
|
||||
self.socket.send(eventName, data, function () {
|
||||
var args = arguments;
|
||||
|
||||
@ -6,14 +6,19 @@ export default function($stateProvider) {
|
||||
if(!state.resolve){
|
||||
state.resolve = {};
|
||||
}
|
||||
state.resolve.socket = ['SocketService', '$rootScope',
|
||||
function(SocketService, $rootScope) {
|
||||
// var self = this;
|
||||
state.resolve.socket = ['SocketService', '$rootScope', '$stateParams',
|
||||
function(SocketService, $rootScope, $stateParams) {
|
||||
$rootScope.socketPromise.promise.then(function(){
|
||||
if(state.socket.groups.hasOwnProperty( "job_events")){
|
||||
state.socket.groups.job_events = [$stateParams.id];
|
||||
}
|
||||
if(state.socket.groups.hasOwnProperty( "ad_hoc_command_events")){
|
||||
state.socket.groups.job_events = [$stateParams.id];
|
||||
}
|
||||
SocketService.subscribe2(state);
|
||||
return true;
|
||||
});
|
||||
}]
|
||||
}];
|
||||
},
|
||||
|
||||
addState: function(state) {
|
||||
|
||||
@ -11,6 +11,12 @@ export default {
|
||||
route: '/ad_hoc_commands/:id',
|
||||
templateUrl: templateUrl('standard-out/adhoc/standard-out-adhoc'),
|
||||
controller: 'JobStdoutController',
|
||||
socket: {
|
||||
"groups":{
|
||||
"jobs": ["status_changed"],
|
||||
"ad_hoc_command_events": []
|
||||
}
|
||||
},
|
||||
ncyBreadcrumb: {
|
||||
parent: "jobs",
|
||||
label: "{{ job.module_name }}"
|
||||
|
||||
@ -13,17 +13,16 @@ export default {
|
||||
route: '/inventory_sync/:id',
|
||||
templateUrl: templateUrl('standard-out/inventory-sync/standard-out-inventory-sync'),
|
||||
controller: 'JobStdoutController',
|
||||
socket: {
|
||||
"groups":{
|
||||
"jobs": ["status_changed"]
|
||||
}
|
||||
},
|
||||
ncyBreadcrumb: {
|
||||
parent: "jobs",
|
||||
label: "{{ inventory_source_name }}"
|
||||
},
|
||||
data: {
|
||||
jobType: 'inventory_updates'
|
||||
},
|
||||
resolve: {
|
||||
inventorySyncSocket: [function() {
|
||||
// TODO: determine whether or not we have socket support for inventory sync standard out
|
||||
return true;
|
||||
}]
|
||||
}
|
||||
};
|
||||
|
||||
@ -11,17 +11,16 @@ export default {
|
||||
route: '/management_jobs/:id',
|
||||
templateUrl: templateUrl('standard-out/management-jobs/standard-out-management-jobs'),
|
||||
controller: 'JobStdoutController',
|
||||
socket: {
|
||||
"groups":{
|
||||
"jobs": ["status_changed"]
|
||||
}
|
||||
},
|
||||
ncyBreadcrumb: {
|
||||
parent: "jobs",
|
||||
label: "{{ job.name }}"
|
||||
},
|
||||
data: {
|
||||
jobType: 'system_jobs'
|
||||
},
|
||||
resolve: {
|
||||
managementJobSocket: [function() {
|
||||
// TODO: determine whether or not we have socket support for management job standard out
|
||||
return true;
|
||||
}]
|
||||
}
|
||||
};
|
||||
|
||||
@ -17,13 +17,12 @@ export default {
|
||||
parent: "jobs",
|
||||
label: "{{ project_name }}"
|
||||
},
|
||||
socket: {
|
||||
"groups":{
|
||||
"jobs": ["status_changed"]
|
||||
}
|
||||
},
|
||||
data: {
|
||||
jobType: 'project_updates'
|
||||
},
|
||||
resolve: {
|
||||
scmUpdateSocket: [function() {
|
||||
// TODO: determine whether or not we have socket support for scm update standard out
|
||||
return true;
|
||||
}]
|
||||
}
|
||||
};
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user