get() public static method

public static get ( ) : Deployer
return Deployer
コード例 #1
0
ファイル: common.php プロジェクト: benjamingauthier/deployer
                if (!empty($httpUser)) {
                    run("{$sudo} chmod +a \"{$httpUser} allow delete,write,append,file_inherit,directory_inherit\" {$dirs}");
                }
                run("{$sudo} chmod +a \"`whoami` allow delete,write,append,file_inherit,directory_inherit\" {$dirs}");
            } elseif (commandExist('setfacl')) {
                if (!empty($httpUser)) {
                    run("{$sudo} setfacl -R -m u:\"{$httpUser}\":rwX -m u:`whoami`:rwX {$dirs}");
                    run("{$sudo} setfacl -dR -m u:\"{$httpUser}\":rwX -m u:`whoami`:rwX {$dirs}");
                } else {
                    run("{$sudo} chmod 777 {$dirs}");
                }
            } else {
                run("{$sudo} chmod 777 {$dirs}");
            }
        } catch (\RuntimeException $e) {
            $formatter = \Deployer\Deployer::get()->getHelper('formatter');
            $errorMessage = ["Unable to setup correct permissions for writable dirs.                  ", "You need co configure sudo's sudoers files to don't prompt for password,", "or setup correct permissions manually.                                  "];
            write($formatter->formatBlock($errorMessage, 'error', true));
            throw $e;
        }
    }
})->desc('Make writable dirs');
/**
 * Installing vendors tasks.
 */
task('deploy:vendors', function () {
    if (commandExist('composer')) {
        $composer = 'composer';
    } else {
        run("cd {{release_path}} && curl -sS https://getcomposer.org/installer | php");
        $composer = 'php composer.phar';
コード例 #2
0
ファイル: functions.php プロジェクト: onedal88/deployer
/**
 * @param string $message
 * @return string
 * @codeCoverageIgnore
 */
function askHiddenResponse($message)
{
    if (isQuiet()) {
        return '';
    }
    $helper = Deployer::get()->getHelper('question');
    $message = "<question>{$message}</question> ";
    $question = new \Symfony\Component\Console\Question\Question($message);
    $question->setHidden(true);
    $question->setHiddenFallback(false);
    return $helper->ask(input(), output(), $question);
}
コード例 #3
0
ファイル: config.php プロジェクト: elfet/deployer
<?php

/* (c) Anton Medvedev <*****@*****.**>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */
namespace Deployer;

use Deployer\Task\Context;
use Symfony\Component\Console\Helper\Table;
use Symfony\Component\Console\Style\SymfonyStyle;
desc('Print server configuration');
task('config:dump', function () {
    $server = Context::get()->getServer();
    $config = Deployer::get()->config;
    $env = Context::get()->getEnvironment();
    $dump = [];
    foreach ($config as $name => $value) {
        try {
            $env->get($name);
        } catch (\RuntimeException $exception) {
            // Ignore fails.
            $message = 'Failed to dump';
            $env->set($name, output()->isDecorated() ? "{$message}" : $message);
        }
    }
    foreach ($env->getValues() as $name => $value) {
        if (is_array($value)) {
            $value = json_encode($value);
        } elseif (is_bool($value)) {
コード例 #4
0
ファイル: DeployerTest.php プロジェクト: onedal88/deployer
 public function testInstance()
 {
     $this->assertEquals($this->deployer, Deployer::get());
 }
コード例 #5
0
ファイル: Deployer.php プロジェクト: elfet/deployer
 /**
  * @param string $name
  * @return boolean
  */
 public static function hasDefault($name)
 {
     return isset(Deployer::get()->config[$name]);
 }
コード例 #6
0
ファイル: Informer.php プロジェクト: elfet/deployer
 /**
  * @param string $serverName
  * @param string $exceptionClass
  * @param string $message
  */
 public function taskException($serverName, $exceptionClass, $message)
 {
     $formatter = Deployer::get()->getHelper('formatter');
     $messages = explode("\n", $message);
     array_unshift($messages, "Exception [{$exceptionClass}] on [{$serverName}] server:");
     $this->output->writeln($formatter->formatBlock($messages, 'error', true));
 }
コード例 #7
0
ファイル: Environment.php プロジェクト: elfet/deployer
 /**
  * @param string $name
  * @param bool|int|string|array $default
  * @return bool|int|string|array
  * @throws \RuntimeException
  */
 public function get($name, $default = null)
 {
     if ($this->values->has($name)) {
         if ($this->isClosure($this->values[$name])) {
             $value = $this->values[$name] = call_user_func($this->values[$name]);
         } else {
             $value = $this->values[$name];
         }
     } else {
         $config = Deployer::get()->config;
         if (isset($config[$name])) {
             if ($this->isClosure($config[$name])) {
                 $value = $this->values[$name] = call_user_func($config[$name]);
             } else {
                 $value = $this->values[$name] = $config[$name];
             }
         } else {
             if (null === $default) {
                 throw new \RuntimeException("Configuration parameter `{$name}` does not exists.");
             } else {
                 $value = $default;
             }
         }
     }
     return $this->parse($value);
 }