diff --git a/pkg/apis/kops/dockerconfig.go b/pkg/apis/kops/dockerconfig.go index f5deab14f3..eedb204d91 100644 --- a/pkg/apis/kops/dockerconfig.go +++ b/pkg/apis/kops/dockerconfig.go @@ -30,6 +30,8 @@ type DockerConfig struct { DefaultUlimit []string `json:"defaultUlimit,omitempty" flag:"default-ulimit,repeat"` // ExecRoot is the root directory for execution state files (default "/var/run/docker") ExecRoot *string `json:"execRoot,omitempty" flag:"exec-root"` + // Experimental features permits enabling new features such as dockerd metrics + Experimental *bool `json:"experimental,omitempty" flag:"experimental"` // Hosts enables you to configure the endpoints the docker daemon listens on i.e tcp://0.0.0.0.2375 or unix:///var/run/docker.sock etc Hosts []string `json:"hosts,omitempty" flag:"host,repeat"` // IPMasq enables ip masquerading for containers @@ -46,6 +48,8 @@ type DockerConfig struct { LogLevel *string `json:"logLevel,omitempty" flag:"log-level"` // Logopt is a series of options given to the log driver options for containers LogOpt []string `json:"logOpt,omitempty" flag:"log-opt,repeat"` + // Metrics address is the endpoint to serve with Prometheus format metrics + MetricsAddress *string `json:"metricsAddress,omitempty" flag:"metrics-addr"` // MTU is the containers network MTU MTU *int32 `json:"mtu,omitempty" flag:"mtu"` // RegistryMirrors is a referred list of docker registry mirror diff --git a/pkg/apis/kops/v1alpha1/dockerconfig.go b/pkg/apis/kops/v1alpha1/dockerconfig.go index 565351c42f..1d2998a57f 100644 --- a/pkg/apis/kops/v1alpha1/dockerconfig.go +++ b/pkg/apis/kops/v1alpha1/dockerconfig.go @@ -30,6 +30,8 @@ type DockerConfig struct { DefaultUlimit []string `json:"defaultUlimit,omitempty" flag:"default-ulimit,repeat"` // ExecRoot is the root directory for execution state files (default "/var/run/docker") ExecRoot *string `json:"execRoot,omitempty" flag:"exec-root"` + // Experimental features permits enabling new features such as dockerd metrics + Experimental *bool `json:"experimental,omitempty" flag:"experimental"` // Hosts enables you to configure the endpoints the docker daemon listens on i.e tcp://0.0.0.0.2375 or unix:///var/run/docker.sock etc Hosts []string `json:"hosts,omitempty" flag:"host,repeat"` // IPMasq enables ip masquerading for containers @@ -46,6 +48,8 @@ type DockerConfig struct { LogLevel *string `json:"logLevel,omitempty" flag:"log-level"` // Logopt is a series of options given to the log driver options for containers LogOpt []string `json:"logOpt,omitempty" flag:"log-opt,repeat"` + // Metrics address is the endpoint to serve with Prometheus format metrics + MetricsAddress *string `json:"metricsAddress,omitempty" flag:"metrics-addr"` // MTU is the containers network MTU MTU *int32 `json:"mtu,omitempty" flag:"mtu"` // RegistryMirrors is a referred list of docker registry mirror diff --git a/pkg/apis/kops/v1alpha1/zz_generated.conversion.go b/pkg/apis/kops/v1alpha1/zz_generated.conversion.go index d8b73c78d0..c153ef2a2d 100644 --- a/pkg/apis/kops/v1alpha1/zz_generated.conversion.go +++ b/pkg/apis/kops/v1alpha1/zz_generated.conversion.go @@ -1395,6 +1395,7 @@ func autoConvert_v1alpha1_DockerConfig_To_kops_DockerConfig(in *DockerConfig, ou out.DataRoot = in.DataRoot out.DefaultUlimit = in.DefaultUlimit out.ExecRoot = in.ExecRoot + out.Experimental = in.Experimental out.Hosts = in.Hosts out.IPMasq = in.IPMasq out.IPTables = in.IPTables @@ -1403,6 +1404,7 @@ func autoConvert_v1alpha1_DockerConfig_To_kops_DockerConfig(in *DockerConfig, ou out.LogDriver = in.LogDriver out.LogLevel = in.LogLevel out.LogOpt = in.LogOpt + out.MetricsAddress = in.MetricsAddress out.MTU = in.MTU out.RegistryMirrors = in.RegistryMirrors out.Storage = in.Storage @@ -1424,6 +1426,7 @@ func autoConvert_kops_DockerConfig_To_v1alpha1_DockerConfig(in *kops.DockerConfi out.DataRoot = in.DataRoot out.DefaultUlimit = in.DefaultUlimit out.ExecRoot = in.ExecRoot + out.Experimental = in.Experimental out.Hosts = in.Hosts out.IPMasq = in.IPMasq out.IPTables = in.IPTables @@ -1432,6 +1435,7 @@ func autoConvert_kops_DockerConfig_To_v1alpha1_DockerConfig(in *kops.DockerConfi out.LogDriver = in.LogDriver out.LogLevel = in.LogLevel out.LogOpt = in.LogOpt + out.MetricsAddress = in.MetricsAddress out.MTU = in.MTU out.RegistryMirrors = in.RegistryMirrors out.Storage = in.Storage diff --git a/pkg/apis/kops/v1alpha1/zz_generated.deepcopy.go b/pkg/apis/kops/v1alpha1/zz_generated.deepcopy.go index 3f815ec7ad..93ae2e0296 100644 --- a/pkg/apis/kops/v1alpha1/zz_generated.deepcopy.go +++ b/pkg/apis/kops/v1alpha1/zz_generated.deepcopy.go @@ -1095,6 +1095,15 @@ func (in *DockerConfig) DeepCopyInto(out *DockerConfig) { **out = **in } } + if in.Experimental != nil { + in, out := &in.Experimental, &out.Experimental + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } if in.Hosts != nil { in, out := &in.Hosts, &out.Hosts *out = make([]string, len(*in)) @@ -1159,6 +1168,15 @@ func (in *DockerConfig) DeepCopyInto(out *DockerConfig) { *out = make([]string, len(*in)) copy(*out, *in) } + if in.MetricsAddress != nil { + in, out := &in.MetricsAddress, &out.MetricsAddress + if *in == nil { + *out = nil + } else { + *out = new(string) + **out = **in + } + } if in.MTU != nil { in, out := &in.MTU, &out.MTU if *in == nil { diff --git a/pkg/apis/kops/v1alpha2/dockerconfig.go b/pkg/apis/kops/v1alpha2/dockerconfig.go index e6ab3176d3..c2ebfacc1c 100644 --- a/pkg/apis/kops/v1alpha2/dockerconfig.go +++ b/pkg/apis/kops/v1alpha2/dockerconfig.go @@ -30,6 +30,8 @@ type DockerConfig struct { DefaultUlimit []string `json:"defaultUlimit,omitempty" flag:"default-ulimit,repeat"` // ExecRoot is the root directory for execution state files (default "/var/run/docker") ExecRoot *string `json:"execRoot,omitempty" flag:"exec-root"` + // Experimental features permits enabling new features such as dockerd metrics + Experimental *bool `json:"experimental,omitempty" flag:"experimental"` // Hosts enables you to configure the endpoints the docker daemon listens on i.e tcp://0.0.0.0.2375 or unix:///var/run/docker.sock etc Hosts []string `json:"hosts,omitempty" flag:"host,repeat"` // IPMasq enables ip masquerading for containers @@ -46,6 +48,8 @@ type DockerConfig struct { LogLevel *string `json:"logLevel,omitempty" flag:"log-level"` // Logopt is a series of options given to the log driver options for containers LogOpt []string `json:"logOpt,omitempty" flag:"log-opt,repeat"` + // Metrics address is the endpoint to serve with Prometheus format metrics + MetricsAddress *string `json:"metricsAddress,omitempty" flag:"metrics-addr"` // MTU is the containers network MTU MTU *int32 `json:"mtu,omitempty" flag:"mtu"` // RegistryMirrors is a referred list of docker registry mirror diff --git a/pkg/apis/kops/v1alpha2/zz_generated.conversion.go b/pkg/apis/kops/v1alpha2/zz_generated.conversion.go index a064cb1617..87c0cc406c 100644 --- a/pkg/apis/kops/v1alpha2/zz_generated.conversion.go +++ b/pkg/apis/kops/v1alpha2/zz_generated.conversion.go @@ -1496,6 +1496,7 @@ func autoConvert_v1alpha2_DockerConfig_To_kops_DockerConfig(in *DockerConfig, ou out.DataRoot = in.DataRoot out.DefaultUlimit = in.DefaultUlimit out.ExecRoot = in.ExecRoot + out.Experimental = in.Experimental out.Hosts = in.Hosts out.IPMasq = in.IPMasq out.IPTables = in.IPTables @@ -1504,6 +1505,7 @@ func autoConvert_v1alpha2_DockerConfig_To_kops_DockerConfig(in *DockerConfig, ou out.LogDriver = in.LogDriver out.LogLevel = in.LogLevel out.LogOpt = in.LogOpt + out.MetricsAddress = in.MetricsAddress out.MTU = in.MTU out.RegistryMirrors = in.RegistryMirrors out.Storage = in.Storage @@ -1525,6 +1527,7 @@ func autoConvert_kops_DockerConfig_To_v1alpha2_DockerConfig(in *kops.DockerConfi out.DataRoot = in.DataRoot out.DefaultUlimit = in.DefaultUlimit out.ExecRoot = in.ExecRoot + out.Experimental = in.Experimental out.Hosts = in.Hosts out.IPMasq = in.IPMasq out.IPTables = in.IPTables @@ -1533,6 +1536,7 @@ func autoConvert_kops_DockerConfig_To_v1alpha2_DockerConfig(in *kops.DockerConfi out.LogDriver = in.LogDriver out.LogLevel = in.LogLevel out.LogOpt = in.LogOpt + out.MetricsAddress = in.MetricsAddress out.MTU = in.MTU out.RegistryMirrors = in.RegistryMirrors out.Storage = in.Storage diff --git a/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go b/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go index bdfbb7bb1d..17a49c7196 100644 --- a/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go +++ b/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go @@ -1062,6 +1062,15 @@ func (in *DockerConfig) DeepCopyInto(out *DockerConfig) { **out = **in } } + if in.Experimental != nil { + in, out := &in.Experimental, &out.Experimental + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } if in.Hosts != nil { in, out := &in.Hosts, &out.Hosts *out = make([]string, len(*in)) @@ -1126,6 +1135,15 @@ func (in *DockerConfig) DeepCopyInto(out *DockerConfig) { *out = make([]string, len(*in)) copy(*out, *in) } + if in.MetricsAddress != nil { + in, out := &in.MetricsAddress, &out.MetricsAddress + if *in == nil { + *out = nil + } else { + *out = new(string) + **out = **in + } + } if in.MTU != nil { in, out := &in.MTU, &out.MTU if *in == nil { diff --git a/pkg/apis/kops/zz_generated.deepcopy.go b/pkg/apis/kops/zz_generated.deepcopy.go index f888f88a43..35c5a27c59 100644 --- a/pkg/apis/kops/zz_generated.deepcopy.go +++ b/pkg/apis/kops/zz_generated.deepcopy.go @@ -1190,6 +1190,15 @@ func (in *DockerConfig) DeepCopyInto(out *DockerConfig) { **out = **in } } + if in.Experimental != nil { + in, out := &in.Experimental, &out.Experimental + if *in == nil { + *out = nil + } else { + *out = new(bool) + **out = **in + } + } if in.Hosts != nil { in, out := &in.Hosts, &out.Hosts *out = make([]string, len(*in)) @@ -1254,6 +1263,15 @@ func (in *DockerConfig) DeepCopyInto(out *DockerConfig) { *out = make([]string, len(*in)) copy(*out, *in) } + if in.MetricsAddress != nil { + in, out := &in.MetricsAddress, &out.MetricsAddress + if *in == nil { + *out = nil + } else { + *out = new(string) + **out = **in + } + } if in.MTU != nil { in, out := &in.MTU, &out.MTU if *in == nil {