UNPKG

shadowsocks-manager

Version:

A shadowsocks manager tool for multi user and traffic control.

41 lines (38 loc) 1.16 kB
const knex = appRequire('init/knex').knex; const tableName = 'server'; const config = appRequire('services/config').all(); const manager = appRequire('services/manager'); const createTable = async () => { await knex.schema.createTable(tableName, function(table) { table.increments('id'); table.string('name'); table.string('host'); table.integer('port'); table.string('password'); table.string('method').defaultTo('aes-256-cfb'); }); const list = await knex('server').select(['name', 'host', 'port', 'password']); if(list.length === 0) { const host = config.manager.address.split(':')[0]; const port = +config.manager.address.split(':')[1]; const password = config.manager.password; await manager.send({ command: 'version' }, { host, port, password, }).catch(() => { logger.error(`connect to server ${ password }@${ host }:${ port } fail.`); process.exit(1); }); await knex('server').insert({ name: 'default', host, port, password, }); } return; }; exports.createTable = createTable;