Built motion from commit 980b26c3.|2.6.29
[motion2.git] / server / api / version / version.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x49d2=['UniqueConstraintError','Database\x20already\x20up-to-date','umzug','path','lodash','version','child_process','exec','../../config/environment','../../config/logger','simple-git','root','index','exports','query','latest','fetch','tags','2.0.0','json','origin','master','error','status','git\x20fetch','git\x20fetch\x20origin\x20master','--hard','FETCH_HEAD','info','git\x20reset\x20--hard\x20FETCH_HEAD','git\x20reset\x20--hard','pull','npm\x20install\x20--production','restart','motion2','pm2\x20restart\x20motion\x20%s','Your\x20system\x20has\x20been\x20restart\x20successfully','catch','migrations','readdirSync','join','server','.js','push','length','sort','sequelize','Migration','getQueryInterface','constructor','Migration\x20tried\x20to\x20use\x20old\x20style\x20\x22done\x22\x20callback.\x20Please\x20upgrade\x20to\x20\x22umzug\x22\x20and\x20return\x20a\x20promise\x20instead.','map','then','last'];(function(_0x2e15de,_0x3b9a6f){var _0xdaa198=function(_0x575fed){while(--_0x575fed){_0x2e15de['push'](_0x2e15de['shift']());}};_0xdaa198(++_0x3b9a6f);}(_0x49d2,0x1b2));var _0x249d=function(_0x254081,_0x20731a){_0x254081=_0x254081-0x0;var _0x5d1e2a=_0x49d2[_0x254081];return _0x5d1e2a;};'use strict';var Umzug=require(_0x249d('0x0'));var path=require(_0x249d('0x1'));var fs=require('fs');var _=require(_0x249d('0x2'));var pkginfo=require('pkginfo')(module,_0x249d('0x3'));var compareVersions=require('compare-versions');var exec=require(_0x249d('0x4'))[_0x249d('0x5')];var db=require('../../mysqldb')['db'];var config=require(_0x249d('0x6'));var pm2=require('../../config/pm2');var logger=require(_0x249d('0x7'))('update');var git=require(_0x249d('0x8'))(config[_0x249d('0x9')]);exports[_0x249d('0xa')]=function(_0x47e8db,_0xcc007c){var _0xb363fa={'current':module[_0x249d('0xb')][_0x249d('0x3')],'phonebar':0x2};if(_0x47e8db[_0x249d('0xc')]&&_0x47e8db['query'][_0x249d('0xd')]){return git[_0x249d('0xe')]()[_0x249d('0xf')](function(_0x400d09,_0x266ad0){_0xb363fa[_0x249d('0xd')]=(_0x400d09?module['exports']['version']:_0x266ad0['latest'])||_0x249d('0x10');return _0xcc007c['status'](0xc8)[_0x249d('0x11')](_0xb363fa);});}else{return _0xcc007c['status'](0xc8)[_0x249d('0x11')](_0xb363fa);}};exports['fetch']=function(_0x216840,_0x4c83cb){return git[_0x249d('0xe')]([_0x249d('0x12'),_0x249d('0x13')],function(_0x113659){if(_0x113659){logger[_0x249d('0x14')](_0x113659);return _0x4c83cb[_0x249d('0x15')](0x1f4)[_0x249d('0x11')](_0x113659);}logger['info'](_0x249d('0x16'));return _0x4c83cb['status'](0xc8)[_0x249d('0x11')]({'output':_0x249d('0x17')});});};exports['reset']=function(_0x380d58,_0x426212){return git['reset']([_0x249d('0x18'),_0x249d('0x19')],function(_0x58df6c){if(_0x58df6c){logger['error'](_0x58df6c);return _0x426212[_0x249d('0x15')](0x1f4)[_0x249d('0x11')](_0x58df6c);}logger[_0x249d('0x1a')](_0x249d('0x1b'));return _0x426212[_0x249d('0x15')](0xc8)[_0x249d('0x11')]({'output':_0x249d('0x1c')});});};exports[_0x249d('0x1d')]=function(_0x5603d2,_0x412f71){exec(_0x249d('0x1e'),function(_0x1a1cae,_0x365865,_0x2c16b4){logger['info'](_0x365865);logger['info'](_0x2c16b4);if(_0x1a1cae){logger[_0x249d('0x14')](_0x1a1cae);return _0x412f71['status'](0x1f4)[_0x249d('0x11')](_0x1a1cae);}return _0x412f71[_0x249d('0x15')](0xc8)[_0x249d('0x11')]({'output':_0x365865});});};exports['restart']=function(_0x49ffc6,_0x1e2782){return pm2[_0x249d('0x1f')](_0x249d('0x20'))['then'](function(_0x325c5d){logger[_0x249d('0x1a')](_0x249d('0x21'),_0x325c5d);return _0x1e2782[_0x249d('0x15')](0xc8)[_0x249d('0x11')]({'output':_0x249d('0x22')});})[_0x249d('0x23')](function(_0x390703){logger[_0x249d('0x14')](_0x390703);return _0x1e2782[_0x249d('0x15')](0x1f4)[_0x249d('0x11')](_0x390703);});};exports[_0x249d('0x24')]=function(_0x174682,_0x37e752){var _0x15bb38=fs[_0x249d('0x25')](path[_0x249d('0x26')](config[_0x249d('0x9')],_0x249d('0x27'),_0x249d('0x24')));var _0x4d4551=[];for(var _0x1ee4bc=0x0;_0x1ee4bc<_0x15bb38['length'];_0x1ee4bc++){var _0x2d42e=_0x15bb38[_0x1ee4bc]['replace'](_0x249d('0x28'),'');if(compareVersions(module['exports']['version'],_0x2d42e)===-0x1){_0x4d4551[_0x249d('0x29')](_0x2d42e);}}if(_0x4d4551[_0x249d('0x2a')]){var _0x60be29=_0x4d4551[_0x249d('0x2b')](compareVersions);var _0x230efc=new Umzug({'storage':_0x249d('0x2c'),'storageOptions':{'model':db[_0x249d('0x2d')],'modelName':_0x249d('0x2d'),'columnName':_0x249d('0x3')},'migrations':{'params':[db[_0x249d('0x2c')][_0x249d('0x2e')](),db[_0x249d('0x2c')][_0x249d('0x2f')],function(){throw new Error(_0x249d('0x30'));}],'path':path['join'](config[_0x249d('0x9')],_0x249d('0x27'),_0x249d('0x24')),'pattern':/\.js$/}});_0x230efc['up']({'migrations':_[_0x249d('0x31')](_0x60be29,function(_0x55280c){return _0x55280c+_0x249d('0x28');})})[_0x249d('0x32')](function(){return _0x37e752['status'](0xc8)['json']({'output':'Database\x20migrated\x20successfully\x20from\x20version\x20'+module['exports'][_0x249d('0x3')]+'\x20to\x20'+_[_0x249d('0x33')](_0x60be29),'migrations':_[_0x249d('0x26')](_0x60be29)});})[_0x249d('0x23')](function(_0x3703be){if(_0x3703be instanceof db[_0x249d('0x2c')][_0x249d('0x34')]){return _0x37e752['status'](0xc8)[_0x249d('0x11')]({'output':_0x249d('0x35')});}else{return _0x37e752['status'](0x1f4)[_0x249d('0x11')](_0x3703be);}});}else{return _0x37e752['status'](0xc8)[_0x249d('0x11')]({'output':_0x249d('0x35')});}};