Updater version
This commit is contained in:
1 parent
d627662038
commit
b944cc610d
2 files changed
+25
No files matched your search
@@ -8,6 +8,7 @@ from couchpotato.environment import Env
|
|||||||
from flask import request
|
from flask import request
|
||||||
from uuid import uuid4
|
from uuid import uuid4
|
||||||
import os
|
import os
|
||||||
|
import platform
|
||||||
import time
|
import time
|
||||||
import traceback
|
import traceback
|
||||||
import webbrowser
|
import webbrowser
|
||||||
@@ -32,12 +33,16 @@ class Core(Plugin):
|
|||||||
addApiView('app.available', self.available, docs = {
|
addApiView('app.available', self.available, docs = {
|
||||||
'desc': 'Check if app available.'
|
'desc': 'Check if app available.'
|
||||||
})
|
})
|
||||||
|
addApiView('app.version', self.versionView, docs = {
|
||||||
|
'desc': 'Get version.'
|
||||||
|
})
|
||||||
|
|
||||||
addEvent('app.crappy_shutdown', self.crappyShutdown)
|
addEvent('app.crappy_shutdown', self.crappyShutdown)
|
||||||
addEvent('app.crappy_restart', self.crappyRestart)
|
addEvent('app.crappy_restart', self.crappyRestart)
|
||||||
addEvent('app.load', self.launchBrowser, priority = 1)
|
addEvent('app.load', self.launchBrowser, priority = 1)
|
||||||
addEvent('app.base_url', self.createBaseUrl)
|
addEvent('app.base_url', self.createBaseUrl)
|
||||||
addEvent('app.api_url', self.createApiUrl)
|
addEvent('app.api_url', self.createApiUrl)
|
||||||
|
addEvent('app.version', self.version)
|
||||||
|
|
||||||
addEvent('setting.save.core.password', self.md5Password)
|
addEvent('setting.save.core.password', self.md5Password)
|
||||||
addEvent('setting.save.core.api_key', self.checkApikey)
|
addEvent('setting.save.core.api_key', self.checkApikey)
|
||||||
@@ -161,3 +166,17 @@ class Core(Plugin):
|
|||||||
|
|
||||||
def createApiUrl(self):
|
def createApiUrl(self):
|
||||||
return '%s/%s' % (self.createBaseUrl(), Env.setting('api_key'))
|
return '%s/%s' % (self.createBaseUrl(), Env.setting('api_key'))
|
||||||
|
|
||||||
|
def version(self):
|
||||||
|
ver = fireEvent('updater.info', single = True)
|
||||||
|
|
||||||
|
if os.name == 'nt': platf = 'windows'
|
||||||
|
elif 'Darwin' in platform.platform(): platf = 'osx'
|
||||||
|
else: platf = 'linux'
|
||||||
|
|
||||||
|
return '%s - %s-%s - v2' % (platf, ver.get('version')['type'], ver.get('version')['hash'])
|
||||||
|
|
||||||
|
def versionView(self):
|
||||||
|
return jsonified({
|
||||||
|
'version': self.version()
|
||||||
|
})
|
||||||
@@ -28,6 +28,7 @@ class Updater(Plugin):
|
|||||||
|
|
||||||
fireEvent('schedule.interval', 'updater.check', self.check, hours = 6)
|
fireEvent('schedule.interval', 'updater.check', self.check, hours = 6)
|
||||||
addEvent('app.load', self.check)
|
addEvent('app.load', self.check)
|
||||||
|
addEvent('updater.info', self.info)
|
||||||
|
|
||||||
addApiView('updater.info', self.getInfo, docs = {
|
addApiView('updater.info', self.getInfo, docs = {
|
||||||
'desc': 'Get updater information',
|
'desc': 'Get updater information',
|
||||||
@@ -57,6 +58,9 @@ class Updater(Plugin):
|
|||||||
if self.conf('notification'):
|
if self.conf('notification'):
|
||||||
fireEvent('updater.available', message = 'A new update is available', data = self.updater.getVersion())
|
fireEvent('updater.available', message = 'A new update is available', data = self.updater.getVersion())
|
||||||
|
|
||||||
|
def info(self):
|
||||||
|
return self.updater.info()
|
||||||
|
|
||||||
def getInfo(self):
|
def getInfo(self):
|
||||||
return jsonified(self.updater.info())
|
return jsonified(self.updater.info())
|
||||||
|
|
||||||
@@ -161,6 +165,7 @@ class GitUpdater(BaseUpdater):
|
|||||||
self.version = {
|
self.version = {
|
||||||
'hash': output.hash[:8],
|
'hash': output.hash[:8],
|
||||||
'date': output.getDate(),
|
'date': output.getDate(),
|
||||||
|
'type': 'git',
|
||||||
}
|
}
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
log.error('Failed using GIT updater, running from source, you need to have GIT installed. %s' % e)
|
log.error('Failed using GIT updater, running from source, you need to have GIT installed. %s' % e)
|
||||||
@@ -320,6 +325,7 @@ class SourceUpdater(BaseUpdater):
|
|||||||
return {
|
return {
|
||||||
'hash': commit['sha'],
|
'hash': commit['sha'],
|
||||||
'date': int(time.mktime(parse(commit['commit']['committer']['date']).timetuple())),
|
'date': int(time.mktime(parse(commit['commit']['committer']['date']).timetuple())),
|
||||||
|
'type': 'source',
|
||||||
}
|
}
|
||||||
except:
|
except:
|
||||||
log.error('Failed getting latest request from github: %s' % traceback.format_exc())
|
log.error('Failed getting latest request from github: %s' % traceback.format_exc())
|
||||||
|
|||||||
Reference in new issue
Block a user