mirror of
https://github.com/speatzle/nfsense.git
synced 2025-09-13 07:19:07 +00:00
Use Config Manager
This commit is contained in:
parent
081aeec142
commit
70d69f04cf
11 changed files with 55 additions and 104 deletions
|
@ -12,6 +12,6 @@ type GetDestinationNATRulesResult struct {
|
|||
|
||||
func (f *Firewall) GetDestinationNATRules(ctx context.Context, params struct{}) (GetDestinationNATRulesResult, error) {
|
||||
return GetDestinationNATRulesResult{
|
||||
DestinationNATRules: f.Conf.Firewall.DestinationNATRules,
|
||||
DestinationNATRules: f.ConfigManager.GetPendingConfig().Firewall.DestinationNATRules,
|
||||
}, nil
|
||||
}
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
package firewall
|
||||
|
||||
import (
|
||||
"nfsense.net/nfsense/internal/definitions"
|
||||
"nfsense.net/nfsense/internal/config"
|
||||
)
|
||||
|
||||
type Firewall struct {
|
||||
Conf *definitions.Config
|
||||
ConfigManager *config.ConfigManager
|
||||
}
|
||||
|
|
|
@ -12,6 +12,6 @@ type GetForwardRulesResult struct {
|
|||
|
||||
func (f *Firewall) GetForwardRules(ctx context.Context, params struct{}) (GetForwardRulesResult, error) {
|
||||
return GetForwardRulesResult{
|
||||
ForwardRules: f.Conf.Firewall.ForwardRules,
|
||||
ForwardRules: f.ConfigManager.GetPendingConfig().Firewall.ForwardRules,
|
||||
}, nil
|
||||
}
|
||||
|
|
|
@ -12,6 +12,6 @@ type GetSourceNATRulesResult struct {
|
|||
|
||||
func (f *Firewall) GetSourceNATRules(ctx context.Context, params struct{}) (GetSourceNATRulesResult, error) {
|
||||
return GetSourceNATRulesResult{
|
||||
SourceNATRules: f.Conf.Firewall.SourceNATRules,
|
||||
SourceNATRules: f.ConfigManager.GetPendingConfig().Firewall.SourceNATRules,
|
||||
}, nil
|
||||
}
|
||||
|
|
|
@ -5,7 +5,6 @@ import (
|
|||
"fmt"
|
||||
|
||||
"nfsense.net/nfsense/internal/definitions"
|
||||
"nfsense.net/nfsense/internal/interfaces"
|
||||
)
|
||||
|
||||
type GetInterfacesResult struct {
|
||||
|
@ -14,7 +13,7 @@ type GetInterfacesResult struct {
|
|||
|
||||
func (f *Network) GetInterfaces(ctx context.Context, params struct{}) (GetInterfacesResult, error) {
|
||||
return GetInterfacesResult{
|
||||
Interfaces: f.Conf.Network.Interfaces,
|
||||
Interfaces: f.ConfigManager.GetPendingConfig().Network.Interfaces,
|
||||
}, nil
|
||||
}
|
||||
|
||||
|
@ -24,12 +23,12 @@ type CreateInterfaceParameters struct {
|
|||
}
|
||||
|
||||
func (f *Network) CreateInterface(ctx context.Context, params CreateInterfaceParameters) (struct{}, error) {
|
||||
_, ok := f.Conf.Network.Interfaces[params.Name]
|
||||
_, ok := f.ConfigManager.GetPendingConfig().Network.Interfaces[params.Name]
|
||||
if ok {
|
||||
return struct{}{}, fmt.Errorf("Interface already Exists")
|
||||
}
|
||||
|
||||
f.Conf.Network.Interfaces[params.Name] = params.Interface
|
||||
f.ConfigManager.GetPendingConfig().Network.Interfaces[params.Name] = params.Interface
|
||||
return struct{}{}, nil
|
||||
}
|
||||
|
||||
|
@ -39,12 +38,12 @@ type UpdateInterfaceParameters struct {
|
|||
}
|
||||
|
||||
func (f *Network) UpdateInterface(ctx context.Context, params CreateInterfaceParameters) (struct{}, error) {
|
||||
_, ok := f.Conf.Network.Interfaces[params.Name]
|
||||
_, ok := f.ConfigManager.GetPendingConfig().Network.Interfaces[params.Name]
|
||||
if !ok {
|
||||
return struct{}{}, fmt.Errorf("Interface does not Exist")
|
||||
}
|
||||
|
||||
f.Conf.Network.Interfaces[params.Name] = params.Interface
|
||||
f.ConfigManager.GetPendingConfig().Network.Interfaces[params.Name] = params.Interface
|
||||
return struct{}{}, nil
|
||||
}
|
||||
|
||||
|
@ -53,29 +52,11 @@ type DeleteInterfaceParameters struct {
|
|||
}
|
||||
|
||||
func (f *Network) DeleteInterface(ctx context.Context, params DeleteInterfaceParameters) (struct{}, error) {
|
||||
_, ok := f.Conf.Network.Interfaces[params.Name]
|
||||
_, ok := f.ConfigManager.GetPendingConfig().Network.Interfaces[params.Name]
|
||||
if !ok {
|
||||
return struct{}{}, fmt.Errorf("Interface does not Exist")
|
||||
}
|
||||
|
||||
delete(f.Conf.Network.Interfaces, params.Name)
|
||||
delete(f.ConfigManager.GetPendingConfig().Network.Interfaces, params.Name)
|
||||
return struct{}{}, nil
|
||||
}
|
||||
|
||||
type ApplyInterfacesResult struct {
|
||||
Log string
|
||||
}
|
||||
|
||||
func (f *Network) ApplyInterfaces(ctx context.Context, params struct{}) (ApplyInterfacesResult, error) {
|
||||
data, err := interfaces.GenerateInterfacesFile(*f.Conf)
|
||||
if err != nil {
|
||||
return ApplyInterfacesResult{}, fmt.Errorf("Generating Interfaces File: %w", err)
|
||||
}
|
||||
log, err := interfaces.ApplyInterfacesFile(data)
|
||||
if err != nil {
|
||||
return ApplyInterfacesResult{}, fmt.Errorf("Applying Interfaces File: %w", err)
|
||||
}
|
||||
return ApplyInterfacesResult{
|
||||
Log: log,
|
||||
}, nil
|
||||
}
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
package network
|
||||
|
||||
import (
|
||||
"nfsense.net/nfsense/internal/definitions"
|
||||
)
|
||||
import "nfsense.net/nfsense/internal/config"
|
||||
|
||||
type Network struct {
|
||||
Conf *definitions.Config
|
||||
ConfigManager *config.ConfigManager
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@ type GetAddressesResult struct {
|
|||
|
||||
func (f *Object) GetAddresses(ctx context.Context, params struct{}) (GetAddressesResult, error) {
|
||||
return GetAddressesResult{
|
||||
Addresses: f.Conf.Object.Addresses,
|
||||
Addresses: f.ConfigManager.GetPendingConfig().Object.Addresses,
|
||||
}, nil
|
||||
}
|
||||
|
||||
|
@ -23,12 +23,12 @@ type CreateAddressParameters struct {
|
|||
}
|
||||
|
||||
func (f *Object) CreateAddress(ctx context.Context, params CreateAddressParameters) (struct{}, error) {
|
||||
_, ok := f.Conf.Object.Addresses[params.Name]
|
||||
_, ok := f.ConfigManager.GetPendingConfig().Object.Addresses[params.Name]
|
||||
if ok {
|
||||
return struct{}{}, fmt.Errorf("Address already Exists")
|
||||
}
|
||||
|
||||
f.Conf.Object.Addresses[params.Name] = params.Address
|
||||
f.ConfigManager.GetPendingConfig().Object.Addresses[params.Name] = params.Address
|
||||
return struct{}{}, nil
|
||||
}
|
||||
|
||||
|
@ -38,12 +38,12 @@ type UpdateAddressParameters struct {
|
|||
}
|
||||
|
||||
func (f *Object) UpdateAddress(ctx context.Context, params CreateAddressParameters) (struct{}, error) {
|
||||
_, ok := f.Conf.Object.Addresses[params.Name]
|
||||
_, ok := f.ConfigManager.GetPendingConfig().Object.Addresses[params.Name]
|
||||
if !ok {
|
||||
return struct{}{}, fmt.Errorf("Address does not Exist")
|
||||
}
|
||||
|
||||
f.Conf.Object.Addresses[params.Name] = params.Address
|
||||
f.ConfigManager.GetPendingConfig().Object.Addresses[params.Name] = params.Address
|
||||
return struct{}{}, nil
|
||||
}
|
||||
|
||||
|
@ -52,11 +52,11 @@ type DeleteAddressParameters struct {
|
|||
}
|
||||
|
||||
func (f *Object) DeleteAddress(ctx context.Context, params DeleteAddressParameters) (struct{}, error) {
|
||||
_, ok := f.Conf.Object.Addresses[params.Name]
|
||||
_, ok := f.ConfigManager.GetPendingConfig().Object.Addresses[params.Name]
|
||||
if !ok {
|
||||
return struct{}{}, fmt.Errorf("Interface does not Exist")
|
||||
}
|
||||
|
||||
delete(f.Conf.Object.Addresses, params.Name)
|
||||
delete(f.ConfigManager.GetPendingConfig().Object.Addresses, params.Name)
|
||||
return struct{}{}, nil
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
package object
|
||||
|
||||
import "nfsense.net/nfsense/internal/definitions"
|
||||
import "nfsense.net/nfsense/internal/config"
|
||||
|
||||
type Object struct {
|
||||
Conf *definitions.Config
|
||||
ConfigManager *config.ConfigManager
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@ type GetServicesResult struct {
|
|||
|
||||
func (f *Object) GetServices(ctx context.Context, params struct{}) (GetServicesResult, error) {
|
||||
return GetServicesResult{
|
||||
Services: f.Conf.Object.Services,
|
||||
Services: f.ConfigManager.GetPendingConfig().Object.Services,
|
||||
}, nil
|
||||
}
|
||||
|
||||
|
@ -23,12 +23,12 @@ type CreateServiceParameters struct {
|
|||
}
|
||||
|
||||
func (f *Object) CreateService(ctx context.Context, params CreateServiceParameters) (struct{}, error) {
|
||||
_, ok := f.Conf.Object.Services[params.Name]
|
||||
_, ok := f.ConfigManager.GetPendingConfig().Object.Services[params.Name]
|
||||
if ok {
|
||||
return struct{}{}, fmt.Errorf("Service already Exists")
|
||||
}
|
||||
|
||||
f.Conf.Object.Services[params.Name] = params.Service
|
||||
f.ConfigManager.GetPendingConfig().Object.Services[params.Name] = params.Service
|
||||
return struct{}{}, nil
|
||||
}
|
||||
|
||||
|
@ -38,12 +38,12 @@ type UpdateServiceParameters struct {
|
|||
}
|
||||
|
||||
func (f *Object) UpdateService(ctx context.Context, params CreateServiceParameters) (struct{}, error) {
|
||||
_, ok := f.Conf.Object.Services[params.Name]
|
||||
_, ok := f.ConfigManager.GetPendingConfig().Object.Services[params.Name]
|
||||
if !ok {
|
||||
return struct{}{}, fmt.Errorf("Service does not Exist")
|
||||
}
|
||||
|
||||
f.Conf.Object.Services[params.Name] = params.Service
|
||||
f.ConfigManager.GetPendingConfig().Object.Services[params.Name] = params.Service
|
||||
return struct{}{}, nil
|
||||
}
|
||||
|
||||
|
@ -52,11 +52,11 @@ type DeleteServiceParameters struct {
|
|||
}
|
||||
|
||||
func (f *Object) DeleteService(ctx context.Context, params DeleteServiceParameters) (struct{}, error) {
|
||||
_, ok := f.Conf.Object.Services[params.Name]
|
||||
_, ok := f.ConfigManager.GetPendingConfig().Object.Services[params.Name]
|
||||
if !ok {
|
||||
return struct{}{}, fmt.Errorf("Interface does not Exist")
|
||||
}
|
||||
|
||||
delete(f.Conf.Object.Services, params.Name)
|
||||
delete(f.ConfigManager.GetPendingConfig().Object.Services, params.Name)
|
||||
return struct{}{}, nil
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue