mmm / data /updateDB.js
ravenbs1's picture
Upload 140 files
046b271 verified
const { DATABASE } = require('../lib/database');
const { DataTypes } = require('sequelize');
const UpdateDB = DATABASE.define('UpdateInfo', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: false,
defaultValue: 1,
},
commitHash: {
type: DataTypes.STRING,
allowNull: false,
},
}, {
tableName: 'update_info',
timestamps: false,
hooks: {
beforeCreate: (record) => { record.id = 1; },
beforeBulkCreate: (records) => {
records.forEach(record => { record.id = 1; });
},
},
});
async function initializeUpdateDB() {
await UpdateDB.sync();
const [record, created] = await UpdateDB.findOrCreate({
where: { id: 1 },
defaults: { commitHash: 'unknown' },
});
return record;
}
async function setCommitHash(hash) {
await initializeUpdateDB();
const record = await UpdateDB.findByPk(1);
record.commitHash = hash;
await record.save();
}
async function getCommitHash() {
await initializeUpdateDB();
const record = await UpdateDB.findByPk(1);
return record ? record.commitHash : 'unknown';
}
module.exports = {
UpdateDB,
setCommitHash,
getCommitHash,
};