Skip to content

Commit

Permalink
feat: upgrade script
Browse files Browse the repository at this point in the history
  • Loading branch information
eartharoid committed Sep 24, 2021
1 parent 95f7671 commit dc0ac88
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 3 deletions.
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ site/

# files
.env
sskey.env
version
user/config.js
user/database.sqlite
user/plugins/*/
3 changes: 2 additions & 1 deletion src/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -160,7 +160,8 @@ class Bot extends Client {

this.setMaxListeners(this.config.max_listeners); // set the max listeners for each event

require('./updater')(this); // check for updates
require('./update/notifier')(this); // check for updates
require('./update/upgrade')(this); // upgrade

const listeners = new ListenerLoader(this);
listeners.load(); // load listeners
Expand Down
2 changes: 1 addition & 1 deletion src/updater.js → src/update/notifier.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ const link = require('terminal-link');
const semver = require('semver');
const { format } = require('leekslazylogger');

const { version: current } = require('../package.json');
const { version: current } = require('../../package.json');

module.exports = async client => {
if (!client.config.update_notice) return;
Expand Down
29 changes: 29 additions & 0 deletions src/update/upgrade.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
const fs = require('fs');
const { path } = require('../utils/fs');
const FILE = path('./version');
const { version: current } = require('../../package.json');

/**
* @param {import('../..').Bot} client
*/
module.exports = async client => {
if (!fs.existsSync(FILE)) {
return fs.writeFileSync(FILE, current);
} else {
const previous = fs.readFileSync(FILE, { encoding: 'utf8' });
if (previous !== current) {
client.log.info('Running upgrade task');
client.log.info('Writing version');
fs.writeFileSync(FILE, current);

const guilds = await client.db.models.Guild.findAll();
guilds.forEach(async guild => {
guild.set('blacklist', {
members: [],
roles: []
});
await guild.save();
});
}
}
};

0 comments on commit dc0ac88

Please sign in to comment.