Esempio n. 1
0
 /**
  * @param array  $scriptFolders
  * @param string $contaoRootFolder
  */
 public function __construct(array $scriptFolders, $contaoRootFolder = null)
 {
     $this->_contaoRootFolder = $contaoRootFolder;
     if (OperatingSystem::isWindows()) {
         $this->_homeScriptFolder = OperatingSystem::getHomeDir() . '/imi-conrun/scripts';
     } else {
         $this->_homeScriptFolder = OperatingSystem::getHomeDir() . '/.imi-conrun/scripts';
     }
     $this->_scriptFolders = $scriptFolders;
     $this->_scriptFolders[] = $this->_homeScriptFolder;
     foreach ($this->_scriptFolders as $key => $scriptFolder) {
         if (!is_dir($scriptFolder)) {
             unset($this->_scriptFolders[$key]);
         }
     }
     if (count($this->_scriptFolders)) {
         $this->findScripts();
     }
 }
 /**
  * Check if there is a user config file. ~/.imi-conrun.yaml
  *
  * @param array  $config
  * @param string $contaoRootFolder
  *
  * @return array
  */
 public function loadUserConfig($config, $contaoRootFolder = null)
 {
     if ($this->_userConfig == null) {
         $this->_userConfig = array();
         $homeDirectory = OperatingSystem::getHomeDir();
         if (OperatingSystem::isWindows()) {
             $personalConfigFile = $homeDirectory . DIRECTORY_SEPARATOR . $this->_customConfigFilename;
         } else {
             $personalConfigFile = $homeDirectory . DIRECTORY_SEPARATOR . '.' . $this->_customConfigFilename;
         }
         if ($homeDirectory && file_exists($personalConfigFile)) {
             $userConfig = $this->applyVariables(\file_get_contents($personalConfigFile), $contaoRootFolder, null);
             $this->_userConfig = Yaml::parse($userConfig);
             return $config;
         }
     }
     $config = ArrayFunctions::mergeArrays($config, $this->_userConfig);
     return $config;
 }
Esempio n. 3
0
 /**
  * @param InputInterface $input
  * @return string
  */
 protected function _checkRootDirOption(InputInterface $input)
 {
     $definedRootDir = $input->getParameterOption('--root-dir');
     if (!empty($definedRootDir)) {
         if ($definedRootDir[0] == '~') {
             $definedRootDir = OperatingSystem::getHomeDir() . substr($definedRootDir, 1);
         }
         $folder = realpath($definedRootDir);
         $this->_directRootDir = true;
         if (is_dir($folder)) {
             \chdir($folder);
             return;
         }
     }
 }