1
0
Fork 0

feat: plugins integration.

This commit is contained in:
Fernandez Ludovic 2020-04-20 18:36:34 +02:00 committed by Traefiker Bot
parent 58bf1a2ca5
commit 0186c31d59
26 changed files with 1025 additions and 51 deletions

View file

@ -38,6 +38,8 @@ type Middleware struct {
PassTLSClientCert *PassTLSClientCert `json:"passTLSClientCert,omitempty" toml:"passTLSClientCert,omitempty" yaml:"passTLSClientCert,omitempty"`
Retry *Retry `json:"retry,omitempty" toml:"retry,omitempty" yaml:"retry,omitempty"`
ContentType *ContentType `json:"contentType,omitempty" toml:"contentType,omitempty" yaml:"contentType,omitempty"`
Plugin map[string]PluginConf `json:"plugin,omitempty" toml:"plugin,omitempty" yaml:"plugin,omitempty"`
}
// +k8s:deepcopy-gen=true

View file

@ -0,0 +1,27 @@
package dynamic
import "k8s.io/apimachinery/pkg/runtime"
// +k8s:deepcopy-gen=false
// PluginConf holds the plugin configuration.
type PluginConf map[string]interface{}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *PluginConf) DeepCopyInto(out *PluginConf) {
if in == nil {
*out = nil
} else {
*out = runtime.DeepCopyJSON(*in)
}
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginConf.
func (in *PluginConf) DeepCopy() *PluginConf {
if in == nil {
return nil
}
out := new(PluginConf)
in.DeepCopyInto(out)
return out
}

View file

@ -730,6 +730,13 @@ func (in *Middleware) DeepCopyInto(out *Middleware) {
*out = new(ContentType)
**out = **in
}
if in.Plugin != nil {
in, out := &in.Plugin, &out.Plugin
*out = make(map[string]PluginConf, len(*in))
for key, val := range *in {
(*out)[key] = *val.DeepCopy()
}
}
return
}