networkpolicy: add new parameters allowedIngressNamespaces for user customization

Signed-off-by: Duan Jiong <djduanjiong@gmail.com>
This commit is contained in:
Duan Jiong
2020-07-23 14:14:27 +08:00
parent afcd0efea2
commit eb21606602
6 changed files with 47 additions and 11 deletions

View File

@@ -2,14 +2,22 @@ package network
import "github.com/spf13/pflag"
type NSNPOptions struct {
AllowedIngressNamespaces []string `json:"allowedIngressNamespaces,omitempty" yaml:"allowedIngressNamespaces,omitempty"`
}
type Options struct {
EnableNetworkPolicy bool `json:"enableNetworkPolicy,omitempty" yaml:"enableNetworkPolicy"`
EnableNetworkPolicy bool `json:"enableNetworkPolicy,omitempty" yaml:"enableNetworkPolicy"`
NSNPOptions NSNPOptions `json:"nsnpOptions,omitempty" yaml:"nsnpOptions,omitempty"`
}
// NewNetworkOptions returns a `zero` instance
func NewNetworkOptions() *Options {
return &Options{
EnableNetworkPolicy: false,
NSNPOptions: NSNPOptions{
AllowedIngressNamespaces: []string{},
},
}
}
@@ -20,6 +28,7 @@ func (s *Options) Validate() []error {
func (s *Options) ApplyTo(options *Options) {
options.EnableNetworkPolicy = s.EnableNetworkPolicy
options.NSNPOptions = s.NSNPOptions
}
func (s *Options) AddFlags(fs *pflag.FlagSet, c *Options) {