Skip to content

Commit

Permalink
feat: core upgrades
Browse files Browse the repository at this point in the history
  • Loading branch information
Gagaro committed Feb 28, 2016
1 parent 205f3ce commit dc731d2
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 1 deletion.
14 changes: 13 additions & 1 deletion pimpmybot/utils/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@

from core_modules import install_core_modules
from utils import db
from utils.upgrades import upgrades
from utils.modules import modules


Expand All @@ -16,6 +17,7 @@ class Meta:
oauth = CharField(default="")
channel = CharField(default="")
secret = CharField()
upgrades = IntegerField()

def get_activated_modules(self):
return self.modules.select().where(ModuleConfiguration.activated == True)
Expand Down Expand Up @@ -47,6 +49,16 @@ class Meta:
if 'configuration' not in db.get_tables():
# The database has not been created yet, let's do it.
db.create_tables([Configuration, ModuleConfiguration, WidgetConfiguration])
Configuration.create(secret=hashlib.sha256(os.urandom(16)).hexdigest())
Configuration.create(
secret=hashlib.sha256(os.urandom(16)).hexdigest(),
upgrades=len(upgrades),
)
install_core_modules()
else:
# Upgrade if needed
upgrades_done = Configuration.select(Configuration.upgrades).get().upgrades
if upgrades_done < len(upgrades):
for upgrade in upgrades[upgrades_done:]:
upgrade()
Configuration.update(upgrades=len(upgrades)).execute()
db.close()
1 change: 1 addition & 0 deletions pimpmybot/utils/upgrades.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
upgrades = []

0 comments on commit dc731d2

Please sign in to comment.