mirror of
https://github.com/outbackdingo/sysadm.git
synced 2026-03-21 12:45:00 +00:00
Two new actions for the sysadm/update class: "listlogs" and "readlogs";
REST Request (example):
-------------------------------
PUT /sysadm/update
{
"action" : "listlogs"
}
WebSocket Request:
-------------------------------
{
"namespace" : "sysadm",
"name" : "update",
"args" : {
"action" : "listlogs"
},
"id" : "fooid"
}
Response:
-------------------------------
{
"args": {
"listlogs": {
"pc-updatemanager.log": {
"finished": "1484127618",
"name": "pc-updatemanager.log",
"started": "1484127618"
},
"pc-updatemanager.log.prev": {
"finished": "1484109171",
"name": "pc-updatemanager.log.prev",
"started": "1484109171"
}
}
},
"id": "fooid",
"name": "response",
"namespace": "sysadm"
}
===================================
REST Request (example):
-------------------------------
PUT /sysadm/update
{
"logs" : [
"pc-updatemanager.log"
],
"action" : "readlogs"
}
WebSocket Request:
-------------------------------
{
"id" : "fooid",
"namespace" : "sysadm",
"name" : "update",
"args" : {
"logs" : [
"pc-updatemanager.log"
],
"action" : "readlogs"
}
}
Response:
-------------------------------
{
"args": {
"readlogs": {
"pc-updatemanager.log": "pc-updatemanager: Tue Jan 10 23:32:51 EST 2017\nChecking for updates to ports-mgmt/pkg..\nUpdating the package repo database...\nCleaning old pkg upgrade cache...\n<Shortened For Example>\nDetermine new BE name...\nCleanup mounts..."
}
},
"id": "fooid",
"name": "response",
"namespace": "sysadm"
}
38 lines
955 B
C++
38 lines
955 B
C++
//===========================================
|
|
// PC-BSD source code
|
|
// Copyright (c) 2015, PC-BSD Software/iXsystems
|
|
// Available under the 3-clause BSD license
|
|
// See the LICENSE file for full details
|
|
//===========================================
|
|
#ifndef __PCBSD_LIB_UTILS_UPDATER_H
|
|
#define __PCBSD_LIB_UTILS_UPDATER_H
|
|
|
|
#include <QJsonObject>
|
|
#include "sysadm-global.h"
|
|
|
|
namespace sysadm{
|
|
|
|
class Update{
|
|
public:
|
|
//Time stamps
|
|
static QDateTime lastFullCheck();
|
|
static QDateTime rebootRequiredSince();
|
|
//Listing routines
|
|
static QJsonObject checkUpdates(bool fast = false);
|
|
static QJsonObject listBranches();
|
|
//Start/stop update routine
|
|
static QJsonObject startUpdate(QJsonObject);
|
|
static QJsonObject stopUpdate();
|
|
//Read/write update settings
|
|
static QJsonObject readSettings();
|
|
static QJsonObject writeSettings(QJsonObject);
|
|
//List/Read update logs
|
|
static QJsonObject listLogs();
|
|
static QJsonObject readLog(QJsonObject);
|
|
|
|
};
|
|
|
|
}
|
|
|
|
#endif
|