getParameter('linked_files', []); $linkedFolders = $this->getParameter('linked_folders', []); if (sizeof($linkedFiles) == 0 && sizeof($linkedFolders) == 0) { throw new SkipException('No files and folders configured for sym-linking.'); } $sharedFolderName = $this->getParameter('shared', 'shared'); $sharedFolderName = rtrim($this->getConfig()->deployment('to'), '/') . '/' . $sharedFolderName; $releasesDirectory = $this->getConfig()->release('directory', 'releases'); $releasesDirectory = rtrim($this->getConfig()->deployment('to'), '/') . '/' . $releasesDirectory; $currentCopy = $releasesDirectory . '/' . $this->getConfig()->getReleaseId(); foreach ($linkedFolders as $folder) { $command = "ln -nfs $sharedFolderName/$folder $currentCopy/$folder"; $this->runCommandRemote($command); } foreach ($linkedFiles as $folder) { $command = "ln -nfs $sharedFolderName/$folder $currentCopy/$folder"; $this->runCommandRemote($command); } return true; } }