mirror of
https://github.com/vitodeploy/vito.git
synced 2025-04-21 10:51:36 +00:00
29 lines
585 B
PHP
Executable File
29 lines
585 B
PHP
Executable File
<?php
|
|
|
|
namespace App\Actions\FirewallRule;
|
|
|
|
use App\Enums\FirewallRuleStatus;
|
|
use App\Models\FirewallRule;
|
|
use App\Models\Server;
|
|
|
|
class DeleteRule
|
|
{
|
|
public function delete(Server $server, FirewallRule $rule): void
|
|
{
|
|
$rule->status = FirewallRuleStatus::DELETING;
|
|
$rule->save();
|
|
|
|
$server->firewall()
|
|
->handler()
|
|
->removeRule(
|
|
$rule->type,
|
|
$rule->real_protocol,
|
|
$rule->port,
|
|
$rule->source,
|
|
$rule->mask
|
|
);
|
|
|
|
$rule->delete();
|
|
}
|
|
}
|