1
0
Fork 0
mirror of synced 2024-09-29 08:51:28 +13:00

some fixes

This commit is contained in:
shimon 2023-10-17 21:32:38 +03:00
parent 8b6d050b0d
commit 1036cb406d
6 changed files with 113 additions and 81 deletions

View file

@ -18,7 +18,6 @@ ini_set('display_startup_errors', 1);
ini_set('default_socket_timeout', -1); ini_set('default_socket_timeout', -1);
error_reporting(E_ALL); error_reporting(E_ALL);
use Appwrite\Event\Usage;
use Appwrite\Event\Migration; use Appwrite\Event\Migration;
use Appwrite\Extend\Exception; use Appwrite\Extend\Exception;
use Appwrite\Auth\Auth; use Appwrite\Auth\Auth;
@ -70,7 +69,6 @@ use Utopia\Pools\Group;
use Utopia\Pools\Pool; use Utopia\Pools\Pool;
use Ahc\Jwt\JWT; use Ahc\Jwt\JWT;
use Ahc\Jwt\JWTException; use Ahc\Jwt\JWTException;
use Appwrite\Auth\OAuth2\Github;
use Appwrite\Event\Build; use Appwrite\Event\Build;
use Appwrite\Event\Certificate; use Appwrite\Event\Certificate;
use Appwrite\Event\Func; use Appwrite\Event\Func;

View file

@ -200,9 +200,8 @@ class CalcTierStats extends Action
try { try {
/** Get Domains */ /** Get Domains */
$stats['Domains'] = $dbForConsole->count('rules', [ $stats['Domains'] = $dbForConsole->count('domains', [
Query::equal('projectInternalId', [$project->getInternalId()]), Query::equal('projectInternalId', [$project->getInternalId()]),
Query::limit(APP_LIMIT_COUNT)
]); ]);
} catch (\Throwable) { } catch (\Throwable) {
$stats['Domains'] = 0; $stats['Domains'] = 0;

View file

@ -2,7 +2,6 @@
namespace Appwrite\Platform\Tasks; namespace Appwrite\Platform\Tasks;
use Appwrite\Extend\Exception;
use Cron\CronExpression; use Cron\CronExpression;
use Swoole\Timer; use Swoole\Timer;
use Utopia\App; use Utopia\App;
@ -27,9 +26,6 @@ class Schedule extends Action
return 'schedule'; return 'schedule';
} }
/**
* @throws Exception
*/
public function __construct() public function __construct()
{ {
$this $this

View file

@ -213,6 +213,7 @@ class Certificates extends Action
$certificate = new Document(\array_merge($certificateDocument->getArrayCopy(), $certificate->getArrayCopy())); $certificate = new Document(\array_merge($certificateDocument->getArrayCopy(), $certificate->getArrayCopy()));
$certificate = $dbForConsole->updateDocument('certificates', $certificate->getId(), $certificate); $certificate = $dbForConsole->updateDocument('certificates', $certificate->getId(), $certificate);
} else { } else {
$certificate->removeAttribute('$internalId');
$certificate = $dbForConsole->createDocument('certificates', $certificate); $certificate = $dbForConsole->createDocument('certificates', $certificate);
} }

View file

@ -22,6 +22,7 @@ use Utopia\Database\Exception\Structure;
use Utopia\Database\Query; use Utopia\Database\Query;
use Utopia\Platform\Action; use Utopia\Platform\Action;
use Utopia\Queue\Message; use Utopia\Queue\Message;
use Utopia\Storage\Device;
class Deletes extends Action class Deletes extends Action
{ {
@ -100,7 +101,7 @@ class Deletes extends Action
$this->deleteInstallation($dbForConsole, $getProjectDB, $document, $project); $this->deleteInstallation($dbForConsole, $getProjectDB, $document, $project);
break; break;
case DELETE_TYPE_RULES: case DELETE_TYPE_RULES:
$this->deleteRule($dbForConsole, $document, $project); $this->deleteRule($dbForConsole, $document);
break; break;
default: default:
if (\str_starts_with($document->getCollection(), 'database_')) { if (\str_starts_with($document->getCollection(), 'database_')) {
@ -130,7 +131,7 @@ class Deletes extends Action
break; break;
case DELETE_TYPE_REALTIME: case DELETE_TYPE_REALTIME:
$this->deleteRealtimeUsage($dbForConsole, $getProjectDB, $datetime); $this->deleteRealtimeUsage($dbForConsole, $datetime);
break; break;
case DELETE_TYPE_SESSIONS: case DELETE_TYPE_SESSIONS:
@ -162,7 +163,7 @@ class Deletes extends Action
* @throws Authorization * @throws Authorization
* @throws Throwable * @throws Throwable
*/ */
protected function deleteSchedules(Database $dbForConsole, callable $getProjectDB, string $datetime): void private function deleteSchedules(Database $dbForConsole, callable $getProjectDB, string $datetime): void
{ {
$this->listByGroup( $this->listByGroup(
'schedules', 'schedules',
@ -198,7 +199,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Authorization * @throws Authorization
*/ */
protected function deleteCacheByResource(Document $project, callable $getProjectDB, string $resource): void private function deleteCacheByResource(Document $project, callable $getProjectDB, string $resource): void
{ {
$projectId = $project->getId(); $projectId = $project->getId();
$dbForProject = $getProjectDB($project); $dbForProject = $getProjectDB($project);
@ -234,7 +235,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteCacheByDate(Document $project, callable $getProjectDB, string $datetime): void private function deleteCacheByDate(Document $project, callable $getProjectDB, string $datetime): void
{ {
$projectId = $project->getId(); $projectId = $project->getId();
$dbForProject = $getProjectDB($project); $dbForProject = $getProjectDB($project);
@ -270,7 +271,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteDatabase(callable $getProjectDB, Document $document, Document $project): void private function deleteDatabase(callable $getProjectDB, Document $document, Document $project): void
{ {
$databaseId = $document->getId(); $databaseId = $document->getId();
$dbForProject = $getProjectDB($project); $dbForProject = $getProjectDB($project);
@ -290,7 +291,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteCollection(callable $getProjectDB, Document $document, Document $project): void private function deleteCollection(callable $getProjectDB, Document $document, Document $project): void
{ {
$collectionId = $document->getId(); $collectionId = $document->getId();
$collectionInternalId = $document->getInternalId(); $collectionInternalId = $document->getInternalId();
@ -336,7 +337,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteUsageStats(Database $dbForConsole, callable $getProjectDB, string $hourlyUsageRetentionDatetime): void private function deleteUsageStats(Database $dbForConsole, callable $getProjectDB, string $hourlyUsageRetentionDatetime): void
{ {
$this->deleteForProjectIds($dbForConsole, function (Document $project) use ($getProjectDB, $hourlyUsageRetentionDatetime) { $this->deleteForProjectIds($dbForConsole, function (Document $project) use ($getProjectDB, $hourlyUsageRetentionDatetime) {
$dbForProject = $getProjectDB($project); $dbForProject = $getProjectDB($project);
@ -355,7 +356,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteMemberships(callable $getProjectDB, Document $document, Document $project): void private function deleteMemberships(callable $getProjectDB, Document $document, Document $project): void
{ {
$dbForProject = $getProjectDB($project); $dbForProject = $getProjectDB($project);
$teamInternalId = $document->getInternalId(); $teamInternalId = $document->getInternalId();
@ -384,7 +385,7 @@ class Deletes extends Action
* @throws Restricted * @throws Restricted
* @throws Structure * @throws Structure
*/ */
protected function deleteProjectsByTeam(Database $dbForConsole, callable $getProjectDB, callable $getFilesDevice, callable $getFunctionsDevice, callable $getBuildsDevice, callable $getCacheDevice, Document $document): void private function deleteProjectsByTeam(Database $dbForConsole, callable $getProjectDB, callable $getFilesDevice, callable $getFunctionsDevice, callable $getBuildsDevice, callable $getCacheDevice, Document $document): void
{ {
$projects = $dbForConsole->find('projects', [ $projects = $dbForConsole->find('projects', [
@ -409,7 +410,7 @@ class Deletes extends Action
* @throws Authorization * @throws Authorization
* @throws \Utopia\Database\Exception * @throws \Utopia\Database\Exception
*/ */
protected function deleteProject(Database $dbForConsole, callable $getProjectDB, callable $getFilesDevice, callable $getFunctionsDevice, callable $getBuildsDevice, callable $getCacheDevice, Document $document): void private function deleteProject(Database $dbForConsole, callable $getProjectDB, callable $getFilesDevice, callable $getFunctionsDevice, callable $getBuildsDevice, callable $getCacheDevice, Document $document): void
{ {
$projectId = $document->getId(); $projectId = $document->getId();
$projectInternalId = $document->getInternalId(); $projectInternalId = $document->getInternalId();
@ -434,10 +435,12 @@ class Deletes extends Action
Query::equal('projectInternalId', [$projectInternalId]) Query::equal('projectInternalId', [$projectInternalId])
], $dbForConsole); ], $dbForConsole);
// Delete Domains // Delete project and function rules
$this->deleteByGroup('domains', [ $this->deleteByGroup('rules', [
Query::equal('projectInternalId', [$projectInternalId]) Query::equal('projectInternalId', [$projectInternalId])
], $dbForConsole); ], $dbForConsole, function (Document $document) use ($dbForConsole) {
$this->deleteRule($dbForConsole, $document);
});
// Delete Keys // Delete Keys
$this->deleteByGroup('keys', [ $this->deleteByGroup('keys', [
@ -476,7 +479,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteUser(callable $getProjectDB, Document $document, Document $project): void private function deleteUser(callable $getProjectDB, Document $document, Document $project): void
{ {
$userId = $document->getId(); $userId = $document->getId();
$userInternalId = $document->getInternalId(); $userInternalId = $document->getInternalId();
@ -525,7 +528,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteExecutionLogs(database $dbForConsole, callable $getProjectDB, string $datetime): void private function deleteExecutionLogs(database $dbForConsole, callable $getProjectDB, string $datetime): void
{ {
$this->deleteForProjectIds($dbForConsole, function (Document $project) use ($getProjectDB, $datetime) { $this->deleteForProjectIds($dbForConsole, function (Document $project) use ($getProjectDB, $datetime) {
$dbForProject = $getProjectDB($project); $dbForProject = $getProjectDB($project);
@ -542,7 +545,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception|Throwable * @throws Exception|Throwable
*/ */
protected function deleteExpiredSessions(Database $dbForConsole, callable $getProjectDB): void private function deleteExpiredSessions(Database $dbForConsole, callable $getProjectDB): void
{ {
$this->deleteForProjectIds($dbForConsole, function (Document $project) use ($dbForConsole, $getProjectDB) { $this->deleteForProjectIds($dbForConsole, function (Document $project) use ($dbForConsole, $getProjectDB) {
@ -560,20 +563,16 @@ class Deletes extends Action
/** /**
* @param Database $dbForConsole * @param Database $dbForConsole
* @param callable $getProjectDB
* @param string $datetime * @param string $datetime
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteRealtimeUsage(Database $dbForConsole, callable $getProjectDB, string $datetime): void private function deleteRealtimeUsage(Database $dbForConsole, string $datetime): void
{ {
$this->deleteForProjectIds($dbForConsole, function (Document $project) use ($datetime, $getProjectDB) { // Delete Dead Realtime Logs
$dbForProject = $getProjectDB($project); $this->deleteByGroup('realtime', [
// Delete Dead Realtime Logs Query::lessThan('timestamp', $datetime)
$this->deleteByGroup('realtime', [ ], $dbForConsole);
Query::lessThan('timestamp', $datetime)
], $dbForProject);
});
} }
/** /**
@ -583,7 +582,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteAbuseLogs(Database $dbForConsole, callable $getProjectDB, string $datetime): void private function deleteAbuseLogs(Database $dbForConsole, callable $getProjectDB, string $datetime): void
{ {
if (empty($datetime)) { if (empty($datetime)) {
throw new Exception('Failed to delete audit logs. No datetime provided'); throw new Exception('Failed to delete audit logs. No datetime provided');
@ -608,7 +607,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteAuditLogs(Database $dbForConsole, callable $getProjectDB, string $datetime): void private function deleteAuditLogs(Database $dbForConsole, callable $getProjectDB, string $datetime): void
{ {
if (empty($datetime)) { if (empty($datetime)) {
throw new Exception('Failed to delete audit logs. No datetime provided'); throw new Exception('Failed to delete audit logs. No datetime provided');
@ -632,7 +631,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteAuditLogsByResource(callable $getProjectDB, string $resource, Document $project): void private function deleteAuditLogsByResource(callable $getProjectDB, string $resource, Document $project): void
{ {
$dbForProject = $getProjectDB($project); $dbForProject = $getProjectDB($project);
@ -650,7 +649,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteFunction(Database $dbForConsole, callable $getProjectDB, callable $getFunctionsDevice, callable $getBuildsDevice, Document $document, Document $project): void private function deleteFunction(Database $dbForConsole, callable $getProjectDB, callable $getFunctionsDevice, callable $getBuildsDevice, Document $document, Document $project): void
{ {
$projectId = $project->getId(); $projectId = $project->getId();
$dbForProject = $getProjectDB($project); $dbForProject = $getProjectDB($project);
@ -666,7 +665,7 @@ class Deletes extends Action
Query::equal('resourceInternalId', [$functionInternalId]), Query::equal('resourceInternalId', [$functionInternalId]),
Query::equal('projectInternalId', [$project->getInternalId()]) Query::equal('projectInternalId', [$project->getInternalId()])
], $dbForConsole, function (Document $document) use ($project, $dbForConsole) { ], $dbForConsole, function (Document $document) use ($project, $dbForConsole) {
$this->deleteRule($dbForConsole, $document, $project); $this->deleteRule($dbForConsole, $document);
}); });
/** /**
@ -688,14 +687,10 @@ class Deletes extends Action
Query::equal('resourceInternalId', [$functionInternalId]) Query::equal('resourceInternalId', [$functionInternalId])
], $dbForProject, function (Document $document) use ($storageFunctions, &$deploymentInternalIds) { ], $dbForProject, function (Document $document) use ($storageFunctions, &$deploymentInternalIds) {
$deploymentInternalIds[] = $document->getInternalId(); $deploymentInternalIds[] = $document->getInternalId();
if ($storageFunctions->delete($document->getAttribute('path', ''), true)) { $this->deleteDeploymentFiles($storageFunctions, $document);
Console::success('Deleted deployment files: ' . $document->getAttribute('path', ''));
} else {
Console::error('Failed to delete deployment files: ' . $document->getAttribute('path', ''));
}
}); });
/** /**
* Delete builds * Delete builds
*/ */
Console::info("Deleting builds for function " . $functionId); Console::info("Deleting builds for function " . $functionId);
@ -704,11 +699,7 @@ class Deletes extends Action
$this->deleteByGroup('builds', [ $this->deleteByGroup('builds', [
Query::equal('deploymentInternalId', [$deploymentInternalId]) Query::equal('deploymentInternalId', [$deploymentInternalId])
], $dbForProject, function (Document $document) use ($storageBuilds) { ], $dbForProject, function (Document $document) use ($storageBuilds) {
if ($storageBuilds->delete($document->getAttribute('path', ''), true)) { $this->deleteBuildFiles($storageBuilds, $document);
Console::success('Deleted build files: ' . $document->getAttribute('path', ''));
} else {
Console::error('Failed to delete build files: ' . $document->getAttribute('path', ''));
}
}); });
} }
@ -727,6 +718,68 @@ class Deletes extends Action
$this->deleteRuntimes($getProjectDB, $document, $project); $this->deleteRuntimes($getProjectDB, $document, $project);
} }
/**
* @param Device $device
* @param Document $deployment
* @return void
*/
private function deleteDeploymentFiles(Device $device, Document $deployment): void
{
$deploymentId = $deployment->getId();
$deploymentPath = $deployment->getAttribute('path', '');
if (empty($deploymentPath)) {
Console::info("No deployment files for deployment " . $deploymentId);
return;
}
Console::info("Deleting deployment files for deployment " . $deploymentId);
try {
if ($device->delete($deploymentPath, true)) {
Console::success('Deleted deployment files: ' . $deploymentPath);
} else {
Console::error('Failed to delete deployment files: ' . $deploymentPath);
}
} catch (\Throwable $th) {
Console::error('Failed to delete deployment files: ' . $deploymentPath);
Console::error('[Error] Type: ' . get_class($th));
Console::error('[Error] Message: ' . $th->getMessage());
Console::error('[Error] File: ' . $th->getFile());
Console::error('[Error] Line: ' . $th->getLine());
}
}
/**
* @param Device $device
* @param Document $build
* @return void
*/
private function deleteBuildFiles(Device $device, Document $build): void
{
$buildId = $build->getId();
$buildPath = $build->getAttribute('path', '');
if (empty($buildPath)) {
Console::info("No build files for build " . $buildId);
return;
}
try {
if ($device->delete($buildPath, true)) {
Console::success('Deleted build files: ' . $buildPath);
} else {
Console::error('Failed to delete build files: ' . $buildPath);
}
} catch (\Throwable $th) {
Console::error('Failed to delete deployment files: ' . $buildPath);
Console::error('[Error] Type: ' . get_class($th));
Console::error('[Error] Message: ' . $th->getMessage());
Console::error('[Error] File: ' . $th->getFile());
Console::error('[Error] Line: ' . $th->getLine());
}
}
/** /**
* @param callable $getProjectDB * @param callable $getProjectDB
* @param callable $getFunctionsDevice * @param callable $getFunctionsDevice
@ -736,7 +789,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteDeployment(callable $getProjectDB, callable $getFunctionsDevice, callable $getBuildsDevice, Document $document, Document $project): void private function deleteDeployment(callable $getProjectDB, callable $getFunctionsDevice, callable $getBuildsDevice, Document $document, Document $project): void
{ {
$projectId = $project->getId(); $projectId = $project->getId();
$dbForProject = $getProjectDB($project); $dbForProject = $getProjectDB($project);
@ -746,30 +799,20 @@ class Deletes extends Action
/** /**
* Delete deployment files * Delete deployment files
*/ */
Console::info("Deleting deployment files for deployment " . $deploymentId);
$storageFunctions = $getFunctionsDevice($projectId); $storageFunctions = $getFunctionsDevice($projectId);
if ($storageFunctions->delete($document->getAttribute('path', ''), true)) { $this->deleteDeploymentFiles($storageFunctions, $document);
Console::success('Deleted deployment files: ' . $document->getAttribute('path', ''));
} else {
Console::error('Failed to delete deployment files: ' . $document->getAttribute('path', ''));
}
/** /**
* Delete builds * Delete builds
*/ */
Console::info("Deleting builds for deployment " . $deploymentId); Console::info("Deleting builds for deployment " . $deploymentId);
$storageBuilds = $getBuildsDevice($projectId); $storageBuilds = $$getBuildsDevice($projectId);
$this->deleteByGroup('builds', [ $this->deleteByGroup('builds', [
Query::equal('deploymentInternalId', [$deploymentInternalId]) Query::equal('deploymentInternalId', [$deploymentInternalId])
], $dbForProject, function (Document $document) use ($storageBuilds) { ], $dbForProject, function (Document $document) use ($storageBuilds) {
if ($storageBuilds->delete($document->getAttribute('path', ''), true)) { $this->deleteBuildFiles($storageBuilds, $document);
Console::success('Deleted build files: ' . $document->getAttribute('path', ''));
} else {
Console::error('Failed to delete build files: ' . $document->getAttribute('path', ''));
}
}); });
/** /**
* Request executor to delete all deployment containers * Request executor to delete all deployment containers
*/ */
@ -781,9 +824,9 @@ class Deletes extends Action
* @param Document $document to be deleted * @param Document $document to be deleted
* @param Database $database to delete it from * @param Database $database to delete it from
* @param callable|null $callback to perform after document is deleted * @param callable|null $callback to perform after document is deleted
* @return bool * @return void
*/ */
protected function deleteById(Document $document, Database $database, callable $callback = null): bool private function deleteById(Document $document, Database $database, callable $callback = null): void
{ {
if ($database->deleteDocument($document->getCollection(), $document->getId())) { if ($database->deleteDocument($document->getCollection(), $document->getId())) {
Console::success('Deleted document "' . $document->getId() . '" successfully'); Console::success('Deleted document "' . $document->getId() . '" successfully');
@ -791,11 +834,8 @@ class Deletes extends Action
if (is_callable($callback)) { if (is_callable($callback)) {
$callback($document); $callback($document);
} }
return true;
} else { } else {
Console::error('Failed to delete document: ' . $document->getId()); Console::error('Failed to delete document: ' . $document->getId());
return false;
} }
} }
@ -804,7 +844,7 @@ class Deletes extends Action
* @param callable $callback * @param callable $callback
* @throws Exception * @throws Exception
*/ */
protected function deleteForProjectIds(database $dbForConsole, callable $callback): void private function deleteForProjectIds(database $dbForConsole, callable $callback): void
{ {
// TODO: @Meldiron name of this method no longer matches. It does not delete, and it gives whole document // TODO: @Meldiron name of this method no longer matches. It does not delete, and it gives whole document
$count = 0; $count = 0;
@ -840,7 +880,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteByGroup(string $collection, array $queries, Database $database, callable $callback = null): void private function deleteByGroup(string $collection, array $queries, Database $database, callable $callback = null): void
{ {
$count = 0; $count = 0;
$chunk = 0; $chunk = 0;
@ -877,7 +917,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function listByGroup(string $collection, array $queries, Database $database, callable $callback = null): void private function listByGroup(string $collection, array $queries, Database $database, callable $callback = null): void
{ {
$count = 0; $count = 0;
$chunk = 0; $chunk = 0;
@ -910,10 +950,9 @@ class Deletes extends Action
/** /**
* @param Database $dbForConsole * @param Database $dbForConsole
* @param Document $document rule document * @param Document $document rule document
* @param Document $project project document
* @return void * @return void
*/ */
protected function deleteRule(Database $dbForConsole, Document $document, Document $project): void private function deleteRule(Database $dbForConsole, Document $document): void
{ {
$domain = $document->getAttribute('domain'); $domain = $document->getAttribute('domain');
@ -942,7 +981,7 @@ class Deletes extends Action
* @param Document $project * @param Document $project
* @return void * @return void
*/ */
protected function deleteBucket(callable $getProjectDB, callable $getFilesDevice, Document $document, Document $project): void private function deleteBucket(callable $getProjectDB, callable $getFilesDevice, Document $document, Document $project): void
{ {
$projectId = $project->getId(); $projectId = $project->getId();
$dbForProject = $getProjectDB($project); $dbForProject = $getProjectDB($project);
@ -962,7 +1001,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteInstallation(Database $dbForConsole, callable $getProjectDB, Document $document, Document $project): void private function deleteInstallation(Database $dbForConsole, callable $getProjectDB, Document $document, Document $project): void
{ {
$dbForProject = $getProjectDB($project); $dbForProject = $getProjectDB($project);
@ -991,7 +1030,7 @@ class Deletes extends Action
* @return void * @return void
* @throws Exception * @throws Exception
*/ */
protected function deleteRuntimes(callable $getProjectDB, ?Document $function, Document $project): void private function deleteRuntimes(callable $getProjectDB, ?Document $function, Document $project): void
{ {
$executor = new Executor(App::getEnv('_APP_EXECUTOR_HOST')); $executor = new Executor(App::getEnv('_APP_EXECUTOR_HOST'));

View file

@ -263,7 +263,7 @@ class DatabasesConsoleClientTest extends Scope
'content-type' => 'application/json', 'content-type' => 'application/json',
'x-appwrite-project' => $this->getProject()['$id'], 'x-appwrite-project' => $this->getProject()['$id'],
], $this->getHeaders()), [ ], $this->getHeaders()), [
'limit' => 1 'queries' => ['limit(1)']
]); ]);
$this->assertEquals(200, $logs['headers']['status-code']); $this->assertEquals(200, $logs['headers']['status-code']);
@ -275,7 +275,7 @@ class DatabasesConsoleClientTest extends Scope
'content-type' => 'application/json', 'content-type' => 'application/json',
'x-appwrite-project' => $this->getProject()['$id'], 'x-appwrite-project' => $this->getProject()['$id'],
], $this->getHeaders()), [ ], $this->getHeaders()), [
'offset' => 1 'queries' => ['offset(1)']
]); ]);
$this->assertEquals(200, $logs['headers']['status-code']); $this->assertEquals(200, $logs['headers']['status-code']);
@ -286,8 +286,7 @@ class DatabasesConsoleClientTest extends Scope
'content-type' => 'application/json', 'content-type' => 'application/json',
'x-appwrite-project' => $this->getProject()['$id'], 'x-appwrite-project' => $this->getProject()['$id'],
], $this->getHeaders()), [ ], $this->getHeaders()), [
'offset' => 1, 'queries' => ['offset(1)', 'limit(1)']
'limit' => 1
]); ]);
$this->assertEquals(200, $logs['headers']['status-code']); $this->assertEquals(200, $logs['headers']['status-code']);