feat: Host Information on System Info page
This commit is contained in:
parent
fc42fd21e5
commit
3752e95b92
@ -56,7 +56,7 @@ export default {
|
||||
},
|
||||
upgradeStart() {
|
||||
this.$store.commit('modalUpgradeSystem/stepChange', 'running')
|
||||
this.$http.post('/admin/settings/install', {
|
||||
this.$http.post('/admin/system/install', {
|
||||
mode: this.mode
|
||||
}).then(resp => {
|
||||
// todo
|
||||
|
@ -10,6 +10,8 @@ const _ = require('lodash')
|
||||
const axios = require('axios')
|
||||
const path = require('path')
|
||||
const fs = Promise.promisifyAll(require('fs-extra'))
|
||||
const os = require('os')
|
||||
const filesize = require('filesize.js')
|
||||
|
||||
/**
|
||||
* Admin
|
||||
@ -238,6 +240,15 @@ router.get('/system', (req, res) => {
|
||||
return res.render('error-forbidden')
|
||||
}
|
||||
|
||||
let hostInfo = {
|
||||
cpus: os.cpus(),
|
||||
hostname: os.hostname(),
|
||||
nodeversion: process.version,
|
||||
os: `${os.type()} (${os.platform()}) ${os.release()} ${os.arch()}`,
|
||||
totalmem: filesize(os.totalmem()),
|
||||
cwd: process.cwd()
|
||||
}
|
||||
|
||||
fs.readJsonAsync(path.join(ROOTPATH, 'package.json')).then(packageObj => {
|
||||
axios.get('https://api.github.com/repos/Requarks/wiki/releases/latest').then(resp => {
|
||||
let sysversion = {
|
||||
@ -246,10 +257,10 @@ router.get('/system', (req, res) => {
|
||||
latestPublishedAt: resp.data.published_at
|
||||
}
|
||||
|
||||
res.render('pages/admin/system', { adminTab: 'system', sysversion })
|
||||
res.render('pages/admin/system', { adminTab: 'system', hostInfo, sysversion })
|
||||
}).catch(err => {
|
||||
winston.warn(err)
|
||||
res.render('pages/admin/system', { adminTab: 'system', sysversion: { current: 'v' + packageObj.version } })
|
||||
res.render('pages/admin/system', { adminTab: 'system', hostInfo, sysversion: { current: 'v' + packageObj.version } })
|
||||
})
|
||||
})
|
||||
})
|
||||
|
@ -23,7 +23,10 @@
|
||||
"users": "Users"
|
||||
},
|
||||
"settings": {
|
||||
"subtitle": "Manage site configuration",
|
||||
"subtitle": "Manage site configuration"
|
||||
},
|
||||
"system": {
|
||||
"subtitle": "Information and utilities for your wiki",
|
||||
"systemversion": "System Version",
|
||||
"currentversion": "Current Version",
|
||||
"latestversion": "Latest Version",
|
||||
@ -39,10 +42,14 @@
|
||||
"resetaccountsbtn": "Reset System Accounts",
|
||||
"flushsessions": "Flush all active user sessions",
|
||||
"flushsessionstext": "All users will be logged out and forced to login again. Your current session will also be affected!",
|
||||
"flushsessionsbtn": "Flush Sessions"
|
||||
},
|
||||
"system": {
|
||||
"subtitle": "Information and utilities for your wiki"
|
||||
"flushsessionsbtn": "Flush Sessions",
|
||||
"hostinfo": "Host Information",
|
||||
"os": "Operating System",
|
||||
"nodeversion": "Node.js Version",
|
||||
"hostname": "Hostname",
|
||||
"cores": "CPU Cores",
|
||||
"totalmem": "Total Memory",
|
||||
"cwd": "Working Directory"
|
||||
},
|
||||
"theme": {
|
||||
"subtitle": "Change the look and feel of your wiki",
|
||||
|
@ -9,30 +9,39 @@ block adminContent
|
||||
.form-sections
|
||||
section
|
||||
img(src='/images/logo.png', style={width:'200px', float:'right'})
|
||||
label.label= t('admin:settings.systemversion')
|
||||
label.label= t('admin:system.systemversion')
|
||||
.section-block
|
||||
p #{t('admin:settings.currentversion')}: #[strong= sysversion.current]
|
||||
p #{t('admin:system.currentversion')}: #[strong= sysversion.current]
|
||||
if sysversion.latest
|
||||
p #{t('admin:settings.latestversion')}: #[strong= sysversion.latest] #[em (Published #{moment(sysversion.latestPublishedAt).fromNow()})]
|
||||
p #{t('admin:system.latestversion')}: #[strong= sysversion.latest] #[em (Published #{moment(sysversion.latestPublishedAt).fromNow()})]
|
||||
p
|
||||
if sysversion.current !== sysversion.latest
|
||||
button.button.is-deep-orange(@click='$store.dispatch("modalUpgradeSystem/open", { mode: "upgrade"})')= t('admin:settings.upgrade')
|
||||
button.button.is-deep-orange(@click='$store.dispatch("modalUpgradeSystem/open", { mode: "upgrade"})')= t('admin:system.upgrade')
|
||||
else
|
||||
button.button.is-disabled= t('admin:settings.upgrade')
|
||||
button.button.is-deep-orange.is-outlined(@click='$store.dispatch("modalUpgradeSystem/open", { mode: "reinstall"})')= t('admin:settings.reinstall')
|
||||
button.button.is-disabled= t('admin:system.upgrade')
|
||||
button.button.is-deep-orange.is-outlined(@click='$store.dispatch("modalUpgradeSystem/open", { mode: "reinstall"})')= t('admin:system.reinstall')
|
||||
else
|
||||
p: em= t('admin:settings.versioncheckfailed')
|
||||
p: em= t('admin:system.versioncheckfailed')
|
||||
section
|
||||
label.label= t('admin:settings.administrativetools')
|
||||
label.label= t('admin:system.hostinfo')
|
||||
.section-block
|
||||
h6 #{t('admin:settings.flushcache')}:
|
||||
p.is-small= t('admin:settings.flushcachetext')
|
||||
p: button.button.is-teal.is-outlined(v-on:click='flushcache')= t('admin:settings.flushcachebtn')
|
||||
h6 #{t('admin:settings.resetaccounts')}:
|
||||
p.is-small= t('admin:settings.resetaccountstext')
|
||||
p: button.button.is-teal.is-outlined(v-on:click='resetaccounts')= t('admin:settings.resetaccountsbtn')
|
||||
h6 #{t('admin:settings.flushsessions')}:
|
||||
p.is-small= t('admin:settings.flushsessionstext')
|
||||
p: button.button.is-teal.is-outlined(v-on:click='flushsessions')= t('admin:settings.flushsessionsbtn')
|
||||
p #{t('admin:system.os')}: #[strong= hostInfo.os]
|
||||
p #{t('admin:system.nodeversion')}: #[strong= hostInfo.nodeversion]
|
||||
p #{t('admin:system.hostname')}: #[strong= hostInfo.hostname]
|
||||
p #{t('admin:system.cores')}: #[strong= hostInfo.cpus.length]
|
||||
p #{t('admin:system.totalmem')}: #[strong= hostInfo.totalmem]
|
||||
p #{t('admin:system.cwd')}: #[strong= hostInfo.cwd]
|
||||
section
|
||||
label.label= t('admin:system.administrativetools')
|
||||
.section-block
|
||||
h6 #{t('admin:system.flushcache')}:
|
||||
p.is-small= t('admin:system.flushcachetext')
|
||||
p: button.button.is-teal.is-outlined(v-on:click='flushcache')= t('admin:system.flushcachebtn')
|
||||
h6 #{t('admin:system.resetaccounts')}:
|
||||
p.is-small= t('admin:system.resetaccountstext')
|
||||
p: button.button.is-teal.is-outlined(v-on:click='resetaccounts')= t('admin:system.resetaccountsbtn')
|
||||
h6 #{t('admin:system.flushsessions')}:
|
||||
p.is-small= t('admin:system.flushsessionstext')
|
||||
p: button.button.is-teal.is-outlined(v-on:click='flushsessions')= t('admin:system.flushsessionsbtn')
|
||||
|
||||
modal-upgrade-system
|
||||
|
Loading…
Reference in New Issue
Block a user