generated from jric11/baseProject
ChatGPT's update to harden software and run db updates.
This commit is contained in:
@@ -4,6 +4,8 @@ require __DIR__.'/../classes/Base.php';
|
||||
try{
|
||||
$db=(new Base())->connect();$db->query('SELECT 1')->fetchColumn();
|
||||
if(!(new RosterService())->ready())throw new RuntimeException('Required schema is missing.');
|
||||
foreach(['user_mfa','mfa_recovery','club_resource_usage'] as $table)$db->query('SELECT 1 FROM '.$table.' LIMIT 0');
|
||||
if((string)(new Base())->getSettings()->Environment==='Production'){ $key=base64_decode(getenv('HCR_MFA_KEY')?:'',true);if($key===false||strlen($key)!==32)throw new RuntimeException('MFA key is missing.');}
|
||||
foreach(['user_email_verified_at'] as $column){$columns=$db->query('SHOW COLUMNS FROM users')->fetchAll(PDO::FETCH_COLUMN);if(!in_array($column,$columns,true))throw new RuntimeException('Account schema is missing.');}
|
||||
echo "Database and required application schema are available.\n";
|
||||
}catch(Throwable $e){fwrite(STDERR,"Health check failed. Review the protected server logs.\n");error_log((string)$e);exit(1);}
|
||||
|
||||
Reference in New Issue
Block a user