Built motion from commit d5e4af8c.|2.6.23
[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 _0xa7ae=['migrations','replace','.js','push','sort','sequelize','getQueryInterface','constructor','join','map','Database\x20migrated\x20successfully\x20from\x20version\x20','\x20to\x20','last','Database\x20already\x20up-to-date','umzug','path','lodash','version','compare-versions','child_process','exec','../../mysqldb','../../config/environment','../../config/pm2','../../config/logger','simple-git','index','exports','query','latest','fetch','tags','2.0.0','status','json','master','error','info','git\x20fetch','git\x20fetch\x20origin\x20master','reset','--hard','FETCH_HEAD','npm\x20install\x20--production','motion2','then','pm2\x20restart\x20motion\x20%s','Your\x20system\x20has\x20been\x20restart\x20successfully','catch','readdirSync','root'];(function(_0x21a9d9,_0x4d5ac8){var _0x46adce=function(_0xfdd336){while(--_0xfdd336){_0x21a9d9['push'](_0x21a9d9['shift']());}};_0x46adce(++_0x4d5ac8);}(_0xa7ae,0x1a6));var _0xea7a=function(_0x297f40,_0x558dc2){_0x297f40=_0x297f40-0x0;var _0x4cd082=_0xa7ae[_0x297f40];return _0x4cd082;};'use strict';var Umzug=require(_0xea7a('0x0'));var path=require(_0xea7a('0x1'));var fs=require('fs');var _=require(_0xea7a('0x2'));var pkginfo=require('pkginfo')(module,_0xea7a('0x3'));var compareVersions=require(_0xea7a('0x4'));var exec=require(_0xea7a('0x5'))[_0xea7a('0x6')];var db=require(_0xea7a('0x7'))['db'];var config=require(_0xea7a('0x8'));var pm2=require(_0xea7a('0x9'));var logger=require(_0xea7a('0xa'))('update');var git=require(_0xea7a('0xb'))(config['root']);exports[_0xea7a('0xc')]=function(_0x3b0182,_0x2c5f24){var _0x28997e={'current':module[_0xea7a('0xd')][_0xea7a('0x3')],'phonebar':0x2};if(_0x3b0182[_0xea7a('0xe')]&&_0x3b0182[_0xea7a('0xe')][_0xea7a('0xf')]){return git[_0xea7a('0x10')]()[_0xea7a('0x11')](function(_0x20c8d0,_0x7e4264){_0x28997e[_0xea7a('0xf')]=(_0x20c8d0?module[_0xea7a('0xd')][_0xea7a('0x3')]:_0x7e4264['latest'])||_0xea7a('0x12');return _0x2c5f24[_0xea7a('0x13')](0xc8)['json'](_0x28997e);});}else{return _0x2c5f24[_0xea7a('0x13')](0xc8)[_0xea7a('0x14')](_0x28997e);}};exports[_0xea7a('0x10')]=function(_0x32e350,_0x29cf76){return git[_0xea7a('0x10')](['origin',_0xea7a('0x15')],function(_0x3dde7b){if(_0x3dde7b){logger[_0xea7a('0x16')](_0x3dde7b);return _0x29cf76[_0xea7a('0x13')](0x1f4)['json'](_0x3dde7b);}logger[_0xea7a('0x17')](_0xea7a('0x18'));return _0x29cf76[_0xea7a('0x13')](0xc8)[_0xea7a('0x14')]({'output':_0xea7a('0x19')});});};exports[_0xea7a('0x1a')]=function(_0xf92525,_0x49c8cc){return git[_0xea7a('0x1a')]([_0xea7a('0x1b'),_0xea7a('0x1c')],function(_0x1cc8fb){if(_0x1cc8fb){logger[_0xea7a('0x16')](_0x1cc8fb);return _0x49c8cc[_0xea7a('0x13')](0x1f4)[_0xea7a('0x14')](_0x1cc8fb);}logger[_0xea7a('0x17')]('git\x20reset\x20--hard\x20FETCH_HEAD');return _0x49c8cc[_0xea7a('0x13')](0xc8)[_0xea7a('0x14')]({'output':'git\x20reset\x20--hard'});});};exports['pull']=function(_0x32f79d,_0x1e60d5){exec(_0xea7a('0x1d'),function(_0xb15a78,_0x530efb,_0x160efd){logger[_0xea7a('0x17')](_0x530efb);logger['info'](_0x160efd);if(_0xb15a78){logger[_0xea7a('0x16')](_0xb15a78);return _0x1e60d5['status'](0x1f4)['json'](_0xb15a78);}return _0x1e60d5['status'](0xc8)[_0xea7a('0x14')]({'output':_0x530efb});});};exports['restart']=function(_0xfe0284,_0x4d8125){return pm2['restart'](_0xea7a('0x1e'))[_0xea7a('0x1f')](function(_0xb927ed){logger[_0xea7a('0x17')](_0xea7a('0x20'),_0xb927ed);return _0x4d8125['status'](0xc8)[_0xea7a('0x14')]({'output':_0xea7a('0x21')});})[_0xea7a('0x22')](function(_0x2e0bb2){logger[_0xea7a('0x16')](_0x2e0bb2);return _0x4d8125['status'](0x1f4)[_0xea7a('0x14')](_0x2e0bb2);});};exports['migrations']=function(_0x55df18,_0x5f3009){var _0xdae9a7=fs[_0xea7a('0x23')](path['join'](config[_0xea7a('0x24')],'server',_0xea7a('0x25')));var _0x467aa6=[];for(var _0xc9923=0x0;_0xc9923<_0xdae9a7['length'];_0xc9923++){var _0x5db6a1=_0xdae9a7[_0xc9923][_0xea7a('0x26')](_0xea7a('0x27'),'');if(compareVersions(module[_0xea7a('0xd')]['version'],_0x5db6a1)===-0x1){_0x467aa6[_0xea7a('0x28')](_0x5db6a1);}}if(_0x467aa6['length']){var _0x1b317d=_0x467aa6[_0xea7a('0x29')](compareVersions);var _0x3b7976=new Umzug({'storage':'sequelize','storageOptions':{'model':db['Migration'],'modelName':'Migration','columnName':_0xea7a('0x3')},'migrations':{'params':[db[_0xea7a('0x2a')][_0xea7a('0x2b')](),db[_0xea7a('0x2a')][_0xea7a('0x2c')],function(){throw new Error('Migration\x20tried\x20to\x20use\x20old\x20style\x20\x22done\x22\x20callback.\x20Please\x20upgrade\x20to\x20\x22umzug\x22\x20and\x20return\x20a\x20promise\x20instead.');}],'path':path[_0xea7a('0x2d')](config[_0xea7a('0x24')],'server',_0xea7a('0x25')),'pattern':/\.js$/}});_0x3b7976['up']({'migrations':_[_0xea7a('0x2e')](_0x1b317d,function(_0x4afea5){return _0x4afea5+_0xea7a('0x27');})})['then'](function(){return _0x5f3009['status'](0xc8)[_0xea7a('0x14')]({'output':_0xea7a('0x2f')+module['exports'][_0xea7a('0x3')]+_0xea7a('0x30')+_[_0xea7a('0x31')](_0x1b317d),'migrations':_[_0xea7a('0x2d')](_0x1b317d)});})['catch'](function(_0x53283f){if(_0x53283f instanceof db[_0xea7a('0x2a')]['UniqueConstraintError']){return _0x5f3009[_0xea7a('0x13')](0xc8)[_0xea7a('0x14')]({'output':_0xea7a('0x32')});}else{return _0x5f3009[_0xea7a('0x13')](0x1f4)['json'](_0x53283f);}});}else{return _0x5f3009[_0xea7a('0x13')](0xc8)[_0xea7a('0x14')]({'output':_0xea7a('0x32')});}};