mirror of
https://github.com/lkddi/nexusphp.git
synced 2026-04-14 12:30:49 +08:00
change lock file at ROOT_PATH
This commit is contained in:
@@ -37,11 +37,14 @@ class Install
|
||||
['name' => 'swoole', 'desc' => "If use swoole for Octane, make sure 'current' shows 1"],
|
||||
];
|
||||
|
||||
protected string $lockFile = 'install.lock';
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
if (!session_id()) {
|
||||
session_start();
|
||||
}
|
||||
$this->checkLock();
|
||||
$this->currentStep = min(intval($_REQUEST['step'] ?? 1) ?: 1, count($this->steps) + 1);
|
||||
}
|
||||
|
||||
@@ -639,16 +642,19 @@ class Install
|
||||
return compact('version', 'match');
|
||||
}
|
||||
|
||||
public function checkLock($path)
|
||||
public function checkLock()
|
||||
{
|
||||
if (file_exists("$path/.lock")) {
|
||||
$fullFilename = ROOT_PATH . $this->lockFile;
|
||||
if (file_exists($fullFilename)) {
|
||||
die("Locked! Delete .lock file first");
|
||||
}
|
||||
}
|
||||
|
||||
public function setLock($path)
|
||||
public function setLock()
|
||||
{
|
||||
file_put_contents("$path/.lock", "Lock at: " . date('Y-m-d H:i:s'));
|
||||
$fullFilename = ROOT_PATH . $this->lockFile;
|
||||
$res = file_put_contents($fullFilename, "Lock at: " . date('Y-m-d H:i:s'));
|
||||
$this->doLog("set lock at: $fullFilename, result: " . var_export($res, true));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -29,6 +29,8 @@ class Update extends Install
|
||||
|
||||
protected $steps = ['Env check', 'Get files', 'Update .env', 'Perform updates'];
|
||||
|
||||
protected string $lockFile = 'update.lock';
|
||||
|
||||
|
||||
public function getLogFile()
|
||||
{
|
||||
|
||||
@@ -5,7 +5,6 @@ require ROOT_PATH . 'nexus/Install/install_update_start.php';
|
||||
|
||||
$isPost = $_SERVER['REQUEST_METHOD'] == 'POST';
|
||||
$install = new \Nexus\Install\Install();
|
||||
$install->checkLock(__DIR__);
|
||||
$currentStep = $install->currentStep();
|
||||
$maxStep = $install->maxStep();
|
||||
if (!$install->canAccessStep($currentStep)) {
|
||||
@@ -192,7 +191,7 @@ if (!empty($error) || (isset($mysqlInfo) && !$mysqlInfo['match'])) {
|
||||
echo '<div class="mb-6">For questions, consult the installation log at: <code>' . $install->getLogFile() . '</code></div>';
|
||||
echo '<div class="text-red-500">For security reasons, please delete the following directories</div>';
|
||||
echo '<div class="text-red-500"><code>' . $install->getInsallDirectory() . '</code></div>';
|
||||
$install->setLock(__DIR__);
|
||||
$install->setLock();
|
||||
}
|
||||
echo'</div>';
|
||||
|
||||
|
||||
@@ -5,7 +5,6 @@ require ROOT_PATH . 'nexus/Install/install_update_start.php';
|
||||
|
||||
$isPost = $_SERVER['REQUEST_METHOD'] == 'POST';
|
||||
$update = new \Nexus\Install\Update();
|
||||
$update->checkLock(__DIR__);
|
||||
$currentStep = $update->currentStep();
|
||||
$maxStep = $update->maxStep();
|
||||
if (!$update->canAccessStep($currentStep)) {
|
||||
@@ -230,7 +229,7 @@ if (!empty($error) || (isset($mysqlInfo) && !$mysqlInfo['match'])) {
|
||||
echo '<div class="mb-6">For questions, consult the upgrade log at: <code>' . $update->getLogFile() . '</code></div>';
|
||||
echo '<div class="text-red-500">For security reasons, please delete the following directories</div>';
|
||||
echo '<div class="text-red-500"><code>' . $update->getUpdateDirectory() . '</code></div>';
|
||||
$update->setLock(__DIR__);
|
||||
$update->setLock();
|
||||
}
|
||||
echo'</div>';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user