Fix all transaction try/catches, closes #57
This commit is contained in:
parent
e7436aab2b
commit
84a7eec2e1
|
@ -122,6 +122,7 @@ class APIRepository
|
||||||
|
|
||||||
DB::beginTransaction();
|
DB::beginTransaction();
|
||||||
|
|
||||||
|
try {
|
||||||
$secretKey = str_random(16) . '.' . str_random(15);
|
$secretKey = str_random(16) . '.' . str_random(15);
|
||||||
$key = new Models\APIKey;
|
$key = new Models\APIKey;
|
||||||
$key->fill([
|
$key->fill([
|
||||||
|
@ -142,7 +143,6 @@ class APIRepository
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
|
||||||
DB::commit();
|
DB::commit();
|
||||||
return $secretKey;
|
return $secretKey;
|
||||||
} catch (\Exception $ex) {
|
} catch (\Exception $ex) {
|
||||||
|
@ -164,11 +164,16 @@ class APIRepository
|
||||||
{
|
{
|
||||||
DB::beginTransaction();
|
DB::beginTransaction();
|
||||||
|
|
||||||
|
try {
|
||||||
$model = Models\APIKey::where('public', $key)->firstOrFail();
|
$model = Models\APIKey::where('public', $key)->firstOrFail();
|
||||||
$permissions = Models\APIPermission::where('key_id', $model->id)->delete();
|
$permissions = Models\APIPermission::where('key_id', $model->id)->delete();
|
||||||
$model->delete();
|
$model->delete();
|
||||||
|
|
||||||
DB::commit();
|
DB::commit();
|
||||||
|
} catch (\Exception $ex) {
|
||||||
|
DB::rollBack();
|
||||||
|
throw $ex;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -151,6 +151,8 @@ class NodeRepository {
|
||||||
$node = Models\Node::findOrFail($id);
|
$node = Models\Node::findOrFail($id);
|
||||||
|
|
||||||
DB::beginTransaction();
|
DB::beginTransaction();
|
||||||
|
|
||||||
|
try {
|
||||||
foreach($allocations as $rawIP => $ports) {
|
foreach($allocations as $rawIP => $ports) {
|
||||||
$parsedIP = Network::parse($rawIP);
|
$parsedIP = Network::parse($rawIP);
|
||||||
foreach($parsedIP as $ip) {
|
foreach($parsedIP as $ip) {
|
||||||
|
@ -195,7 +197,6 @@ class NodeRepository {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
|
||||||
DB::commit();
|
DB::commit();
|
||||||
return true;
|
return true;
|
||||||
} catch (\Exception $ex) {
|
} catch (\Exception $ex) {
|
||||||
|
|
|
@ -194,6 +194,7 @@ class ServerRepository
|
||||||
|
|
||||||
DB::beginTransaction();
|
DB::beginTransaction();
|
||||||
|
|
||||||
|
try {
|
||||||
$uuid = new UuidService;
|
$uuid = new UuidService;
|
||||||
|
|
||||||
// Add Server to the Database
|
// Add Server to the Database
|
||||||
|
@ -242,8 +243,6 @@ class ServerRepository
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
$client = Models\Node::guzzleRequest($node->id);
|
$client = Models\Node::guzzleRequest($node->id);
|
||||||
$client->request('POST', '/servers', [
|
$client->request('POST', '/servers', [
|
||||||
'headers' => [
|
'headers' => [
|
||||||
|
@ -317,6 +316,8 @@ class ServerRepository
|
||||||
}
|
}
|
||||||
|
|
||||||
DB::beginTransaction();
|
DB::beginTransaction();
|
||||||
|
|
||||||
|
try {
|
||||||
$server = Models\Server::findOrFail($id);
|
$server = Models\Server::findOrFail($id);
|
||||||
$owner = Models\User::findOrFail($server->owner);
|
$owner = Models\User::findOrFail($server->owner);
|
||||||
|
|
||||||
|
@ -348,8 +349,6 @@ class ServerRepository
|
||||||
}
|
}
|
||||||
|
|
||||||
// If we need to update do it here.
|
// If we need to update do it here.
|
||||||
try {
|
|
||||||
|
|
||||||
$node = Models\Node::getByID($server->node);
|
$node = Models\Node::getByID($server->node);
|
||||||
$client = Models\Node::guzzleRequest($server->node);
|
$client = Models\Node::guzzleRequest($server->node);
|
||||||
|
|
||||||
|
@ -411,6 +410,8 @@ class ServerRepository
|
||||||
}
|
}
|
||||||
|
|
||||||
DB::beginTransaction();
|
DB::beginTransaction();
|
||||||
|
|
||||||
|
try {
|
||||||
$server = Models\Server::findOrFail($id);
|
$server = Models\Server::findOrFail($id);
|
||||||
|
|
||||||
if (isset($data['default'])) {
|
if (isset($data['default'])) {
|
||||||
|
@ -501,8 +502,6 @@ class ServerRepository
|
||||||
$server->io = $data['io'];
|
$server->io = $data['io'];
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
$node = Models\Node::getByID($server->node);
|
$node = Models\Node::getByID($server->node);
|
||||||
$client = Models\Node::guzzleRequest($server->node);
|
$client = Models\Node::guzzleRequest($server->node);
|
||||||
|
|
||||||
|
@ -534,7 +533,6 @@ class ServerRepository
|
||||||
throw new DisplayException('An error occured while attempting to update the configuration: ' . $ex->getMessage());
|
throw new DisplayException('An error occured while attempting to update the configuration: ' . $ex->getMessage());
|
||||||
} catch (\Exception $ex) {
|
} catch (\Exception $ex) {
|
||||||
DB::rollBack();
|
DB::rollBack();
|
||||||
Log::error($ex);
|
|
||||||
throw $ex;
|
throw $ex;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -547,6 +545,7 @@ class ServerRepository
|
||||||
|
|
||||||
DB::beginTransaction();
|
DB::beginTransaction();
|
||||||
|
|
||||||
|
try {
|
||||||
// Check the startup
|
// Check the startup
|
||||||
if (isset($data['startup'])) {
|
if (isset($data['startup'])) {
|
||||||
$server->startup = $data['startup'];
|
$server->startup = $data['startup'];
|
||||||
|
@ -561,8 +560,6 @@ class ServerRepository
|
||||||
->where('option_id', $server->option)
|
->where('option_id', $server->option)
|
||||||
->get();
|
->get();
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
$variableList = [];
|
$variableList = [];
|
||||||
if ($variables) {
|
if ($variables) {
|
||||||
foreach($variables as &$variable) {
|
foreach($variables as &$variable) {
|
||||||
|
@ -664,6 +661,7 @@ class ServerRepository
|
||||||
$node = Models\Node::findOrFail($server->node);
|
$node = Models\Node::findOrFail($server->node);
|
||||||
DB::beginTransaction();
|
DB::beginTransaction();
|
||||||
|
|
||||||
|
try {
|
||||||
// Delete Allocations
|
// Delete Allocations
|
||||||
Models\Allocation::where('assigned_to', $server->id)->update([
|
Models\Allocation::where('assigned_to', $server->id)->update([
|
||||||
'assigned_to' => null
|
'assigned_to' => null
|
||||||
|
@ -681,7 +679,6 @@ class ServerRepository
|
||||||
// Remove Downloads
|
// Remove Downloads
|
||||||
Models\Download::where('server', $server->uuid)->delete();
|
Models\Download::where('server', $server->uuid)->delete();
|
||||||
|
|
||||||
try {
|
|
||||||
$client = Models\Node::guzzleRequest($server->node);
|
$client = Models\Node::guzzleRequest($server->node);
|
||||||
$client->request('DELETE', '/servers', [
|
$client->request('DELETE', '/servers', [
|
||||||
'headers' => [
|
'headers' => [
|
||||||
|
|
|
@ -69,11 +69,12 @@ class UserRepository
|
||||||
throw new DisplayValidationException($validator->errors());
|
throw new DisplayValidationException($validator->errors());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DB::beginTransaction();
|
||||||
|
|
||||||
|
try {
|
||||||
$user = new Models\User;
|
$user = new Models\User;
|
||||||
$uuid = new UuidService;
|
$uuid = new UuidService;
|
||||||
|
|
||||||
DB::beginTransaction();
|
|
||||||
|
|
||||||
$user->uuid = $uuid->generate('users', 'uuid');
|
$user->uuid = $uuid->generate('users', 'uuid');
|
||||||
$user->email = $email;
|
$user->email = $email;
|
||||||
$user->password = Hash::make($password);
|
$user->password = Hash::make($password);
|
||||||
|
@ -81,7 +82,6 @@ class UserRepository
|
||||||
$user->root_admin = ($admin) ? 1 : 0;
|
$user->root_admin = ($admin) ? 1 : 0;
|
||||||
$user->save();
|
$user->save();
|
||||||
|
|
||||||
try {
|
|
||||||
Mail::queue('emails.new-account', [
|
Mail::queue('emails.new-account', [
|
||||||
'email' => $user->email,
|
'email' => $user->email,
|
||||||
'forgot' => route('auth.password'),
|
'forgot' => route('auth.password'),
|
||||||
|
|
Loading…
Reference in New Issue