feat: implement VM snapshot management, enhance client resource loading, and refactor deployment workflow for production
This commit is contained in:
@@ -119,282 +119,132 @@ class RepositoryProvider extends ServiceProvider
|
||||
public function register()
|
||||
{
|
||||
//Addon
|
||||
$this->app->bind(
|
||||
AddonRepositoryInterface::class,
|
||||
AddonCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(AddonRepositoryInterface::class, AddonCachedRepository::class);
|
||||
//Banned
|
||||
$this->app->bind(
|
||||
BannedRepositoryInterface::class,
|
||||
BannedCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(BannedRepositoryInterface::class, BannedCachedRepository::class);
|
||||
//Customer
|
||||
$this->app->bind(
|
||||
CustomerRepositoryInterface::class,
|
||||
CustomerCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(CustomerRepositoryInterface::class, CustomerCachedRepository::class);
|
||||
//Customer
|
||||
$this->app->bind(
|
||||
CustomerRepositoryInterface::class,
|
||||
CustomerCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(CustomerCachedRepository::class);
|
||||
//Customer Log
|
||||
$this->app->bind(
|
||||
CustomerLogRepositoryInterface::class,
|
||||
CustomerLogCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(CustomerLogRepositoryInterface::class, CustomerLogCachedRepository::class);
|
||||
//Discount
|
||||
$this->app->bind(
|
||||
DiscountRepositoryInterface::class,
|
||||
DiscountCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(DiscountRepositoryInterface::class, DiscountCachedRepository::class);
|
||||
//Domain
|
||||
$this->app->bind(
|
||||
DomainRepositoryInterface::class,
|
||||
DomainCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(DomainRepositoryInterface::class, DomainCachedRepository::class);
|
||||
//Domain Type
|
||||
$this->app->bind(
|
||||
DomainTypeRepositoryInterface::class,
|
||||
DomainTypeCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(DomainTypeRepositoryInterface::class, DomainTypeCachedRepository::class);
|
||||
//File
|
||||
$this->app->bind(
|
||||
FileRepositoryInterface::class,
|
||||
FileCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(FileRepositoryInterface::class, FileCachedRepository::class);
|
||||
//Group
|
||||
$this->app->bind(
|
||||
GroupRepositoryInterface::class,
|
||||
GroupCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(GroupRepositoryInterface::class, GroupCachedRepository::class);
|
||||
//Hosting
|
||||
$this->app->bind(
|
||||
HostingRepositoryInterface::class,
|
||||
HostingCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(HostingRepositoryInterface::class, HostingCachedRepository::class);
|
||||
//Invoice
|
||||
$this->app->bind(
|
||||
InvoiceRepositoryInterface::class,
|
||||
InvoiceCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(InvoiceRepositoryInterface::class, InvoiceCachedRepository::class);
|
||||
//Invoice Attachment
|
||||
$this->app->bind(
|
||||
InvoiceAttachmentRepositoryInterface::class,
|
||||
InvoiceAttachmentRepository::class
|
||||
);
|
||||
$this->app->singleton(InvoiceAttachmentRepositoryInterface::class, InvoiceAttachmentRepository::class);
|
||||
//Invoice Item
|
||||
$this->app->bind(
|
||||
InvoiceItemRepositoryInterface::class,
|
||||
InvoiceItemCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(InvoiceItemRepositoryInterface::class, InvoiceItemCachedRepository::class);
|
||||
//Log
|
||||
$this->app->bind(
|
||||
LogRepositoryInterface::class,
|
||||
LogCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(LogRepositoryInterface::class, LogCachedRepository::class);
|
||||
//Mail
|
||||
$this->app->bind(
|
||||
MailRepositoryInterface::class,
|
||||
MailCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(MailRepositoryInterface::class, MailCachedRepository::class);
|
||||
//Note
|
||||
$this->app->bind(
|
||||
NoteRepositoryInterface::class,
|
||||
NoteCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(NoteRepositoryInterface::class, NoteCachedRepository::class);
|
||||
//Order
|
||||
$this->app->bind(
|
||||
OrderRepositoryInterface::class,
|
||||
OrderCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(OrderRepositoryInterface::class, OrderCachedRepository::class);
|
||||
//Os
|
||||
$this->app->bind(
|
||||
OsRepositoryInterface::class,
|
||||
OsCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(OsRepositoryInterface::class, OsCachedRepository::class);
|
||||
// Os Group
|
||||
$this->app->bind(
|
||||
OsGroupRepositoryInterface::class,
|
||||
OsGroupCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(OsGroupRepositoryInterface::class, OsGroupCachedRepository::class);
|
||||
// Payment
|
||||
$this->app->bind(
|
||||
PaymentReppositoryInterface::class,
|
||||
PaymentCachedReppository::class
|
||||
);
|
||||
$this->app->singleton(PaymentReppositoryInterface::class, PaymentCachedReppository::class);
|
||||
// Menu
|
||||
$this->app->bind(
|
||||
MenuRepositoryInterface::class,
|
||||
MenuCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(MenuRepositoryInterface::class, MenuCachedRepository::class);
|
||||
//Post
|
||||
$this->app->bind(
|
||||
PostRepositoryInterface::class,
|
||||
PostCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(PostRepositoryInterface::class, PostCachedRepository::class);
|
||||
//Setting
|
||||
$this->app->bind(
|
||||
SettingRepositoryInterface::class,
|
||||
SettingCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(SettingRepositoryInterface::class, SettingCachedRepository::class);
|
||||
//Staff
|
||||
$this->app->bind(
|
||||
StaffRepositoryInterface::class,
|
||||
StaffRepository::class
|
||||
);
|
||||
$this->app->singleton(StaffRepositoryInterface::class, StaffRepository::class);
|
||||
//Template
|
||||
$this->app->bind(
|
||||
TemplateRepositoryInterface::class,
|
||||
TemplateCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(TemplateRepositoryInterface::class, TemplateCachedRepository::class);
|
||||
//Ticket
|
||||
$this->app->bind(
|
||||
TicketRepositoryInterface::class,
|
||||
TicketCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(TicketRepositoryInterface::class, TicketCachedRepository::class);
|
||||
//Ticket Reply
|
||||
$this->app->bind(
|
||||
TicketReplyRepositoryInterface::class,
|
||||
TicketReplyCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(TicketReplyRepositoryInterface::class, TicketReplyCachedRepository::class);
|
||||
//Transaction
|
||||
$this->app->bind(
|
||||
TransactionRepositoryInterface::class,
|
||||
TransactionCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(TransactionRepositoryInterface::class, TransactionCachedRepository::class);
|
||||
//Service
|
||||
$this->app->bind(
|
||||
ServiceRepositoryInterface::class,
|
||||
ServiceRepository::class
|
||||
);
|
||||
$this->app->singleton(ServiceRepositoryInterface::class, ServiceRepository::class);
|
||||
//Module Datacenter
|
||||
$this->app->bind(
|
||||
DatacenterRepositoryInterface::class,
|
||||
DatacenterCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(DatacenterRepositoryInterface::class, DatacenterCachedRepository::class);
|
||||
//Module Datastore
|
||||
$this->app->bind(
|
||||
DatastoreRepositoryInterface::class,
|
||||
DatastoreCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(DatastoreRepositoryInterface::class, DatastoreCachedRepository::class);
|
||||
// Module DnsServer
|
||||
$this->app->bind(
|
||||
DnsServerRepositoryInterface::class,
|
||||
DnsServerCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(DnsServerRepositoryInterface::class, DnsServerCachedRepository::class);
|
||||
//Module Domain
|
||||
$this->app->bind(
|
||||
ModuleDomainRepositoryInterface::class,
|
||||
ModuleDomainCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(ModuleDomainRepositoryInterface::class, ModuleDomainCachedRepository::class);
|
||||
//Module Folder
|
||||
$this->app->bind(
|
||||
FolderRepositoryInterface::class,
|
||||
FolderCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(FolderRepositoryInterface::class, FolderCachedRepository::class);
|
||||
//Host
|
||||
$this->app->bind(
|
||||
HostRepositoryInterface::class,
|
||||
HostCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(HostRepositoryInterface::class, HostCachedRepository::class);
|
||||
//Hosting
|
||||
$this->app->bind(
|
||||
ModuleHostingRepositoryInterface::class,
|
||||
ModuleHostingCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(ModuleHostingRepositoryInterface::class, ModuleHostingCachedRepository::class);
|
||||
//Hosting Server
|
||||
$this->app->bind(
|
||||
HostingServerRepositoryInterface::class,
|
||||
HostingServerCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(HostingServerRepositoryInterface::class, HostingServerCachedRepository::class);
|
||||
//IpAddress
|
||||
$this->app->bind(
|
||||
IpAddressRepositoryInterface::class,
|
||||
IpAddressCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(IpAddressRepositoryInterface::class, IpAddressCachedRepository::class);
|
||||
//Network
|
||||
$this->app->bind(
|
||||
NetworkRepositoryInterface::class,
|
||||
NetworkCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(NetworkRepositoryInterface::class, NetworkCachedRepository::class);
|
||||
//Snapshot
|
||||
$this->app->bind(
|
||||
SnapshotRepositoryInterface::class,
|
||||
SnapshotCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(SnapshotRepositoryInterface::class, SnapshotCachedRepository::class);
|
||||
//Snapshot Limit
|
||||
$this->app->bind(
|
||||
SnapshotLimitRepositoryInterface::class,
|
||||
SnapshotLimitCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(SnapshotLimitRepositoryInterface::class, SnapshotLimitCachedRepository::class);
|
||||
//vmware
|
||||
$this->app->bind(
|
||||
VmwareRepositoryInterface::class,
|
||||
VmwareCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(VmwareRepositoryInterface::class, VmwareCachedRepository::class);
|
||||
//User
|
||||
$this->app->bind(
|
||||
UserRepositoryInterface::class,
|
||||
UserCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(UserRepositoryInterface::class, UserCachedRepository::class);
|
||||
//vCenter
|
||||
$this->app->bind(
|
||||
vCenterRepositoryInterface::class,
|
||||
vCenterCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(vCenterRepositoryInterface::class, vCenterCachedRepository::class);
|
||||
//vps
|
||||
$this->app->bind(
|
||||
VPSRepositoryInterface::class,
|
||||
VPSCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(VPSRepositoryInterface::class, VPSCachedRepository::class);
|
||||
|
||||
//Module IP Pool
|
||||
$this->app->bind(
|
||||
IPPoolRepositoryInterface::class,
|
||||
IPPoolCachedRepository::class
|
||||
);
|
||||
$this->app->singleton(IPPoolRepositoryInterface::class, IPPoolCachedRepository::class);
|
||||
|
||||
//Module VirtualMachine
|
||||
$this->app->bind(
|
||||
VirtualMachineRepositoryInterface::class,
|
||||
VirtualMachineRepository::class
|
||||
);
|
||||
$this->app->singleton(VirtualMachineRepositoryInterface::class, VirtualMachineRepository::class);
|
||||
|
||||
// Product
|
||||
$this->app->bind(
|
||||
ProductRepositoryInterface::class,
|
||||
ProductRepository::class
|
||||
);
|
||||
$this->app->singleton(ProductRepositoryInterface::class, ProductRepository::class);
|
||||
|
||||
// Product Category
|
||||
$this->app->bind(
|
||||
ProductCategoryRepositoryInterface::class,
|
||||
ProductCategoryRepository::class
|
||||
);
|
||||
$this->app->singleton(ProductCategoryRepositoryInterface::class, ProductCategoryRepository::class);
|
||||
|
||||
// Client API
|
||||
$this->app->bind(
|
||||
$this->app->singleton(
|
||||
\App\Repositories\Api\Client\ClientRepositoryInterface::class,
|
||||
\App\Repositories\Api\Client\ClientRepository::class
|
||||
\App\Repositories\Api\Client\ClientRepository::class,
|
||||
);
|
||||
|
||||
// Service API
|
||||
$this->app->bind(
|
||||
$this->app->singleton(
|
||||
\App\Repositories\Api\Service\ServiceRepositoryInterface::class,
|
||||
\App\Repositories\Api\Service\ServiceRepository::class
|
||||
\App\Repositories\Api\Service\ServiceRepository::class,
|
||||
);
|
||||
|
||||
// Service Client API
|
||||
$this->app->bind(
|
||||
$this->app->singleton(
|
||||
\App\Repositories\Api\ServiceClient\ServiceClientRepositoryInterface::class,
|
||||
\App\Repositories\Api\ServiceClient\ServiceClientRepository::class
|
||||
\App\Repositories\Api\ServiceClient\ServiceClientRepository::class,
|
||||
);
|
||||
|
||||
// DNS Manager
|
||||
$this->app->bind(DnsManagerServerRepositoryInterface::class, DnsManagerServerRepository::class);
|
||||
$this->app->bind(DnsDomainRepositoryInterface::class, DnsDomainRepository::class);
|
||||
$this->app->bind(DnsRecordRepositoryInterface::class, DnsRecordRepository::class);
|
||||
$this->app->singleton(DnsManagerServerRepositoryInterface::class, DnsManagerServerRepository::class);
|
||||
$this->app->singleton(DnsDomainRepositoryInterface::class, DnsDomainRepository::class);
|
||||
$this->app->singleton(DnsRecordRepositoryInterface::class, DnsRecordRepository::class);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user