// if(!file_exists('/usr/share/ntk-rm-common/protected/components/ApplicationDispatcher.php')) { throw new Exception(' ntk-rm-common'); } require_once('/usr/share/ntk-rm-common/protected/components/ApplicationDispatcher.php'); // $dispatcher = ApplicationDispatcher::getInstance(); // : $dispatcher->setEnvironment(ApplicationDispatcher::ENV_PRODUCTION); // $dispatcher->setApplicationType(ApplicationDispatcher::APP_TYPE_WEB); // $dispatcher->create('crm')->run();
/** * * @param $service - * @return mixed * @throws Exception */ public function create($service) { $this->service = $service; if(empty($this->app_type)) { throw new Exception(' : web console'); } // require_once $this->getBasePath('common') . '/helpers/global.php'; $config = $this->prepareConfig(); // $config['runtimePath'] = $this->getRuntimePath($service); // - protected $config['basePath'] = $this->getBasePath($service); $this->setAliases(); if ($this->app_type == self::APP_TYPE_WEB) { $this->app = Yii::createWebApplication($config); // $this->setRoutes(); // assets $basePath = $this->getHtdocsPath($this->service) . '/assets/'; $this->app->getAssetManager()->setBasePath($basePath); } else { defined('STDIN') or define('STDIN', fopen('php://stdin', 'r')); $this->app = Yii::createConsoleApplication($config); } return $this->app; }
/** * . * @return array|mixed * @throws Exception - */ private function prepareConfig() { if (!$this->isExistsServiceConfig()) { throw new Exception(' «' . $this->getServiceConfigName() . '» . .'); } // $service_configs = array( '/' . $this->service . '.' . $this->app_type . '.php', '/env/local.php' ); $config = $this->mergeConfigs(array(), $service_configs , $this->getConfigPath(($this->service))); // $common_configs = array( '/env/local.php', '/common.base.php', $this->app_type == self::APP_TYPE_WEB ? '/common.web.php' : '/common.console.php', ); $config = $this->mergeConfigs($config, $common_configs, $this->getConfigPath('common')); // backend $backend_configs = array( '/php-backend.base.php', '/env/local.php', ); $config = $this->mergeConfigs($config, $backend_configs, $this->getConfigPath('php-backend')); return $config; }
<!-- ============================================ --> <!-- Target: prepare --> <!-- ============================================ --> <target name="prepare" depends="clean"> <echo msg=" " /> <mkdir dir="${project.packageDir}" /> <copy todir="${project.packageDir}"> <fileset dir="${project.basedir}/debian"> <include name="**/*" /> <exclude name=".svn" /> <exclude name="cron.d/" /> <exclude name="cron.d/*" /> </fileset> </copy> <exec command="svn info | grep 'URL: '" outputProperty="project.tmp.svnInfo" /> <php expression="end(explode(': ', '${project.tmp.svnInfo}'));" returnProperty="project.tmp.svnUrl" /> <echo msg=" SVN" /> <exec command="rm -Rf ${project.packageDir}/var/www/ntk-rm-crm/*" /> <exec command="svn export --force ${project.tmp.svnUrl} ${project.packageDir}/export/"/> <echo msg=" - /var/www/ntk-rm-crm/htdocs/" /> <mkdir dir="${project.packageDir}/var/www/ntk-rm-crm/" /> <copy todir="${project.packageDir}/var/www/ntk-rm-crm/htdocs/" > <fileset defaultexcludes="false" expandsymboliclinks="true" dir="${project.packageDir}/export/htdocs/"> <include name="**/*" /> </fileset> </copy> <mkdir dir="${project.packageDir}/var/www/ntk-rm-crm/htdocs/assets/" /> <copy file="${project.packageDir}/var/www/ntk-rm-crm/htdocs/index-prod.php" tofile="${project.packageDir}/var/www/ntk-rm-crm/htdocs/index.php" overwrite="true" /> <delete file="${project.packageDir}/var/www/ntk-rm-crm/htdocs/index-prod.php" /> <echo msg=" /usr/share/ntk-rm-crm/protected/" /> <mkdir dir="${project.packageDir}/usr/share/ntk-rm-crm/protected/" /> <copy todir="${project.packageDir}/usr/share/ntk-rm-crm/protected/" > <fileset defaultexcludes="false" expandsymboliclinks="true" dir="${project.packageDir}/export/protected/"> <include name="**/*" /> <exclude name="configs/*" /> <exclude name="**/yiic*" /> </fileset> </copy> <delete dir="${project.packageDir}/usr/share/ntk-rm-crm/protected/configs/" includeemptydirs="true" /> <echo msg=" yiic.php " /> <copy file="${project.packageDir}/export/protected/yiic-prod.php" tofile="${project.packageDir}/usr/share/ntk-rm-crm/protected/yiic.php" overwrite="true" /> <copy file="${project.packageDir}/export/protected/yiic-prod" tofile="${project.packageDir}/usr/bin/ntk-rm-crm" overwrite="true" /> <echo msg=" /etc/ntk-rm-crm/" /> <mkdir dir="${project.packageDir}/etc/ntk-rm-crm/" /> <copy todir="${project.packageDir}/etc/ntk-rm-crm/" > <fileset defaultexcludes="false" expandsymboliclinks="true" dir="${project.packageDir}/export/protected/configs/"> <include name="**/*" /> <exclude name="**/crm.test.php" /> <exclude name="**/local.default.php" /> </fileset> </copy> <echo msg=" /usr/share/doc/ntk-rm-crm/" /> <mkdir dir="${project.packageDir}/usr/share/doc/ntk-rm-crm/" /> <copy file="${project.packageDir}/export/protected/configs/env/local.default.php" tofile="${project.packageDir}/usr/share/doc/ntk-rm-crm/local.default.php" overwrite="true" /> <echo msg=" cron- /etc/cron.d/ntk-rm-crm" /> <copy file="${project.basedir}/debian/cron.d/ntk-rm-crm" tofile="${project.packageDir}/etc/cron.d/ntk-rm-crm" overwrite="true" /> <echo msg=" /var/log/ntk-rm-crm/" /> <mkdir dir="${project.packageDir}/var/log/ntk-rm-crm/" /> <echo msg=" /var/tmp/ntk-rm-crm/" /> <mkdir dir="${project.packageDir}/var/tmp/ntk-rm-crm/" /> <echo msg=" export" /> <delete dir="${project.packageDir}/export/" includeemptydirs="true" /> </target>
Source: https://habr.com/ru/post/223385/
All Articles