本文整理汇总了PHP中app\models\Project::getAnsibleStatus方法的典型用法代码示例。如果您正苦于以下问题:PHP Project::getAnsibleStatus方法的具体用法?PHP Project::getAnsibleStatus怎么用?PHP Project::getAnsibleStatus使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类app\models\Project
的用法示例。
在下文中一共展示了Project::getAnsibleStatus方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: cleanUpLocal
/**
* 收尾做处理工作,如清理本地的部署空间
*
* @param $version
* @return bool|int
*/
public function cleanUpLocal($version)
{
$cmd[] = 'rm -rf ' . Project::getDeployWorkspace($version);
if (Project::getAnsibleStatus()) {
$cmd[] = 'rm -f ' . Project::getDeployPackagePath($version);
}
if ($this->config->repo_type == Project::REPO_SVN) {
$cmd[] = sprintf('rm -rf %s-svn', rtrim(Project::getDeployWorkspace($version), '/'));
}
$command = join(' && ', $cmd);
return $this->runLocalCommand($command);
}
示例2: _transmission
/**
* 传输文件/目录到指定目标机器
*
* @return bool
* @throws \Exception
*/
private function _transmission()
{
if (Project::getAnsibleStatus()) {
// ansible copy
return $this->_ansibleCopy();
} else {
// 循环 rsync
return $this->_rsync();
}
}
示例3: runRemoteTaskCommandPackage
/**
* 执行远程服务器任务集合
* 对于目标机器更多的时候是一台机器完成一组命令,而不是每条命令逐台机器执行
*
* @param array $tasks
* @param integer $delay 每台机器延迟执行post_release任务间隔, 不推荐使用, 仅当业务无法平滑重启时使用
* @return mixed
*/
public function runRemoteTaskCommandPackage($tasks, $delay = 0)
{
$task = join(' && ', $tasks);
if (Project::getAnsibleStatus() && !$delay) {
// ansible 并发执行远程命令
return $this->runRemoteCommandByAnsibleShell($task);
} else {
return $this->runRemoteCommand($task, $delay);
}
}
示例4: getFileMd5
/**
* 获取文件的MD5
*
* @param $file
* @return bool
*/
public function getFileMd5($file)
{
$cmd[] = "test -f /usr/bin/md5sum && md5sum {$file}";
$command = join(' && ', $cmd);
if (Project::getAnsibleStatus()) {
// ansible 并发执行远程命令
return $this->runRemoteCommandByAnsibleShell($command);
} else {
return $this->runRemoteCommand($command);
}
}
示例5: _transmission
/**
* 传输文件/目录到指定目标机器
*
* @return bool
* @throws \Exception
*/
private function _transmission()
{
$sTime = Command::getMs();
if (Project::getAnsibleStatus()) {
// ansible copy
$this->walleFolder->ansibleCopyFiles($this->conf, $this->task);
} else {
// 循环 scp
$this->walleFolder->scpCopyFiles($this->conf, $this->task);
}
// 记录执行时间
$duration = Command::getMs() - $sTime;
Record::saveRecord($this->walleFolder, $this->task->id, Record::ACTION_SYNC, $duration);
return true;
}