isFile()) continue; // skip unwanted files if(in_array($objFile->getExtension(), array('orig', 'bak', 'gitkeep', 'gitignore'))) continue; // skip lock file, it shoud be generated when GitLab is started if('Gemfile.lock' === $objFile->getFilename()) continue; // strip given dir - we just want the aim-dir $intEndPosOfDir = strpos($objFile->getRealPath(), $strGitLabDir) + strlen($strGitLabDir); $strFilePath = substr($objFile->getRealPath(), $intEndPosOfDir); // list of config files to ignore $arrConfigFiles = array('/etc/solr.in.sh.sample', '/var/db/solr/solr.xml.sample'); // skip config files if(in_array($strFilePath, $arrConfigFiles)) continue; $arrFiles[] = "solr$strFilePath"; } sort($arrFiles); // go through the files and print them foreach($arrFiles AS $strFile) { print "$strFile\n"; } // at least print static block of dirs and config files print "@dir(solr,solr) /var/db/solr @dir(solr,solr) /var/log/solr @sample etc/solr.in.sh.sample @sample(solr,solr) /var/db/solr/solr.xml.sample %%JTS%%solr/server/solr-webapp/webapp/WEB-INF/lib/jts-core.jar "; print "\n";