MagentoHackathon\Composer\Magento\Plugin::setFilePermissions PHP Метод

setFilePermissions() приватный Метод

Set permissions for files using extra->chmod from composer.json
private setFilePermissions ( ) : void
Результат void
    private function setFilePermissions()
    {
        $packages = $this->composer->getRepositoryManager()->getLocalRepository()->getPackages();
        $message = 'Check "chmod" section in composer.json of %s package.';
        foreach ($packages as $package) {
            $extra = $package->getExtra();
            if (!isset($extra['chmod']) || !is_array($extra['chmod'])) {
                continue;
            }
            $error = false;
            foreach ($extra['chmod'] as $chmod) {
                if (!isset($chmod['mask']) || !isset($chmod['path']) || strpos($chmod['path'], '..') !== false) {
                    $error = true;
                    continue;
                }
                $file = $this->installer->getTargetDir() . '/' . $chmod['path'];
                if (file_exists($file)) {
                    chmod($file, octdec($chmod['mask']));
                } else {
                    $this->io->writeError(['File doesn\'t exist: ' . $chmod['path'], sprintf($message, $package->getName())]);
                }
            }
            if ($error) {
                $this->io->writeError(['Incorrect mask or file path.', sprintf($message, $package->getName())]);
            }
        }
    }