Skip to content

Commit

Permalink
adding API to have shared security groups
Browse files Browse the repository at this point in the history
  • Loading branch information
chrislovecnm committed Oct 10, 2017
1 parent 7b65c54 commit f8f09db
Show file tree
Hide file tree
Showing 11 changed files with 108 additions and 0 deletions.
6 changes: 6 additions & 0 deletions pkg/apis/kops/cluster.go
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,12 @@ const (
type LoadBalancerAccessSpec struct {
Type LoadBalancerType `json:"type,omitempty"`
IdleTimeoutSeconds *int64 `json:"idleTimeoutSeconds,omitempty"`
// AdditionalSecurityGroups attaches additional security groups (e.g. sg-123456)
// This API is currently under development.
AdditionalSecurityGroups []string `json:"additionalSecurityGroups,omitempty"`
// SecurityGroup is the id of the shared security group to use for the InstanceGroupSpec
// This API is currently under development.
SecurityGroup *string `json:"securityGroup,omitempty"`
}

// KubeDNSConfig defines the kube dns configuration
Expand Down
3 changes: 3 additions & 0 deletions pkg/apis/kops/instancegroup.go
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,9 @@ type InstanceGroupSpec struct {
Kubelet *KubeletConfigSpec `json:"kubelet,omitempty"`
// Taints indicates the kubernetes taints for nodes in this group
Taints []string `json:"taints,omitempty"`
// SecurityGroup is the id of the shared security group to use for the InstanceGroupSpec
// This API is currently under development.
SecurityGroup *string `json:"securityGroup,omitempty"`
}

// PerformAssignmentsInstanceGroups populates InstanceGroups with default values
Expand Down
6 changes: 6 additions & 0 deletions pkg/apis/kops/v1alpha1/cluster.go
Original file line number Diff line number Diff line change
Expand Up @@ -259,6 +259,12 @@ const (
type LoadBalancerAccessSpec struct {
Type LoadBalancerType `json:"type,omitempty"`
IdleTimeoutSeconds *int64 `json:"idleTimeoutSeconds,omitempty"`
// AdditionalSecurityGroups attaches additional security groups (e.g. sg-123456)
// This API is currently under development.
AdditionalSecurityGroups []string `json:"additionalSecurityGroups,omitempty"`
// SecurityGroup is the id of the shared security group to use for the InstanceGroupSpec
// This API is currently under development.
SecurityGroup *string `json:"securityGroup,omitempty"`
}

// KubeDNSConfig defines the kube dns configuration
Expand Down
3 changes: 3 additions & 0 deletions pkg/apis/kops/v1alpha1/instancegroup.go
Original file line number Diff line number Diff line change
Expand Up @@ -92,4 +92,7 @@ type InstanceGroupSpec struct {
// Zones is the names of the Zones where machines in this instance group should be placed
// This is needed for regional subnets (e.g. GCE), to restrict placement to particular zones
Zones []string `json:"zones,omitempty"`
// SecurityGroup is the id of the shared security group to use for the InstanceGroupSpec
// This API is currently under development.
SecurityGroup *string `json:"securityGroup,omitempty"`
}
6 changes: 6 additions & 0 deletions pkg/apis/kops/v1alpha1/zz_generated.conversion.go
Original file line number Diff line number Diff line change
Expand Up @@ -1674,6 +1674,7 @@ func autoConvert_v1alpha1_InstanceGroupSpec_To_kops_InstanceGroupSpec(in *Instan
}
out.Taints = in.Taints
out.Zones = in.Zones
out.SecurityGroup = in.SecurityGroup
return nil
}

Expand Down Expand Up @@ -1727,6 +1728,7 @@ func autoConvert_kops_InstanceGroupSpec_To_v1alpha1_InstanceGroupSpec(in *kops.I
out.Kubelet = nil
}
out.Taints = in.Taints
out.SecurityGroup = in.SecurityGroup
return nil
}

Expand Down Expand Up @@ -2221,6 +2223,8 @@ func Convert_kops_LeaderElectionConfiguration_To_v1alpha1_LeaderElectionConfigur
func autoConvert_v1alpha1_LoadBalancerAccessSpec_To_kops_LoadBalancerAccessSpec(in *LoadBalancerAccessSpec, out *kops.LoadBalancerAccessSpec, s conversion.Scope) error {
out.Type = kops.LoadBalancerType(in.Type)
out.IdleTimeoutSeconds = in.IdleTimeoutSeconds
out.AdditionalSecurityGroups = in.AdditionalSecurityGroups
out.SecurityGroup = in.SecurityGroup
return nil
}

Expand All @@ -2232,6 +2236,8 @@ func Convert_v1alpha1_LoadBalancerAccessSpec_To_kops_LoadBalancerAccessSpec(in *
func autoConvert_kops_LoadBalancerAccessSpec_To_v1alpha1_LoadBalancerAccessSpec(in *kops.LoadBalancerAccessSpec, out *LoadBalancerAccessSpec, s conversion.Scope) error {
out.Type = LoadBalancerType(in.Type)
out.IdleTimeoutSeconds = in.IdleTimeoutSeconds
out.AdditionalSecurityGroups = in.AdditionalSecurityGroups
out.SecurityGroup = in.SecurityGroup
return nil
}

Expand Down
23 changes: 23 additions & 0 deletions pkg/apis/kops/v1alpha1/zz_generated.deepcopy.go
Original file line number Diff line number Diff line change
Expand Up @@ -1762,6 +1762,15 @@ func (in *InstanceGroupSpec) DeepCopyInto(out *InstanceGroupSpec) {
*out = make([]string, len(*in))
copy(*out, *in)
}
if in.SecurityGroup != nil {
in, out := &in.SecurityGroup, &out.SecurityGroup
if *in == nil {
*out = nil
} else {
*out = new(string)
**out = **in
}
}
return
}

Expand Down Expand Up @@ -2489,6 +2498,20 @@ func (in *LoadBalancerAccessSpec) DeepCopyInto(out *LoadBalancerAccessSpec) {
**out = **in
}
}
if in.AdditionalSecurityGroups != nil {
in, out := &in.AdditionalSecurityGroups, &out.AdditionalSecurityGroups
*out = make([]string, len(*in))
copy(*out, *in)
}
if in.SecurityGroup != nil {
in, out := &in.SecurityGroup, &out.SecurityGroup
if *in == nil {
*out = nil
} else {
*out = new(string)
**out = **in
}
}
return
}

Expand Down
6 changes: 6 additions & 0 deletions pkg/apis/kops/v1alpha2/cluster.go
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,12 @@ const (
type LoadBalancerAccessSpec struct {
Type LoadBalancerType `json:"type,omitempty"`
IdleTimeoutSeconds *int64 `json:"idleTimeoutSeconds,omitempty"`
// AdditionalSecurityGroups attaches additional security groups (e.g. sg-123456)
// This API is currently under development.
AdditionalSecurityGroups []string `json:"additionalSecurityGroups,omitempty"`
// SecurityGroup is the id of the shared security group to use for the InstanceGroupSpec
// This API is currently under development.
SecurityGroup *string `json:"securityGroup,omitempty"`
}

type KubeDNSConfig struct {
Expand Down
3 changes: 3 additions & 0 deletions pkg/apis/kops/v1alpha2/instancegroup.go
Original file line number Diff line number Diff line change
Expand Up @@ -101,4 +101,7 @@ type InstanceGroupSpec struct {
Kubelet *KubeletConfigSpec `json:"kubelet,omitempty"`
// Taints indicates the kubernetes taints for nodes in this group
Taints []string `json:"taints,omitempty"`
// SecurityGroup is the id of the shared security group to use for the InstanceGroupSpec
// This API is currently under development.
SecurityGroup *string `json:"securityGroup,omitempty"`
}
6 changes: 6 additions & 0 deletions pkg/apis/kops/v1alpha2/zz_generated.conversion.go
Original file line number Diff line number Diff line change
Expand Up @@ -1784,6 +1784,7 @@ func autoConvert_v1alpha2_InstanceGroupSpec_To_kops_InstanceGroupSpec(in *Instan
out.Kubelet = nil
}
out.Taints = in.Taints
out.SecurityGroup = in.SecurityGroup
return nil
}

Expand Down Expand Up @@ -1842,6 +1843,7 @@ func autoConvert_kops_InstanceGroupSpec_To_v1alpha2_InstanceGroupSpec(in *kops.I
out.Kubelet = nil
}
out.Taints = in.Taints
out.SecurityGroup = in.SecurityGroup
return nil
}

Expand Down Expand Up @@ -2483,6 +2485,8 @@ func Convert_kops_LeaderElectionConfiguration_To_v1alpha2_LeaderElectionConfigur
func autoConvert_v1alpha2_LoadBalancerAccessSpec_To_kops_LoadBalancerAccessSpec(in *LoadBalancerAccessSpec, out *kops.LoadBalancerAccessSpec, s conversion.Scope) error {
out.Type = kops.LoadBalancerType(in.Type)
out.IdleTimeoutSeconds = in.IdleTimeoutSeconds
out.AdditionalSecurityGroups = in.AdditionalSecurityGroups
out.SecurityGroup = in.SecurityGroup
return nil
}

Expand All @@ -2494,6 +2498,8 @@ func Convert_v1alpha2_LoadBalancerAccessSpec_To_kops_LoadBalancerAccessSpec(in *
func autoConvert_kops_LoadBalancerAccessSpec_To_v1alpha2_LoadBalancerAccessSpec(in *kops.LoadBalancerAccessSpec, out *LoadBalancerAccessSpec, s conversion.Scope) error {
out.Type = LoadBalancerType(in.Type)
out.IdleTimeoutSeconds = in.IdleTimeoutSeconds
out.AdditionalSecurityGroups = in.AdditionalSecurityGroups
out.SecurityGroup = in.SecurityGroup
return nil
}

Expand Down
23 changes: 23 additions & 0 deletions pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go
Original file line number Diff line number Diff line change
Expand Up @@ -1777,6 +1777,15 @@ func (in *InstanceGroupSpec) DeepCopyInto(out *InstanceGroupSpec) {
*out = make([]string, len(*in))
copy(*out, *in)
}
if in.SecurityGroup != nil {
in, out := &in.SecurityGroup, &out.SecurityGroup
if *in == nil {
*out = nil
} else {
*out = new(string)
**out = **in
}
}
return
}

Expand Down Expand Up @@ -2615,6 +2624,20 @@ func (in *LoadBalancerAccessSpec) DeepCopyInto(out *LoadBalancerAccessSpec) {
**out = **in
}
}
if in.AdditionalSecurityGroups != nil {
in, out := &in.AdditionalSecurityGroups, &out.AdditionalSecurityGroups
*out = make([]string, len(*in))
copy(*out, *in)
}
if in.SecurityGroup != nil {
in, out := &in.SecurityGroup, &out.SecurityGroup
if *in == nil {
*out = nil
} else {
*out = new(string)
**out = **in
}
}
return
}

Expand Down
23 changes: 23 additions & 0 deletions pkg/apis/kops/zz_generated.deepcopy.go
Original file line number Diff line number Diff line change
Expand Up @@ -1980,6 +1980,15 @@ func (in *InstanceGroupSpec) DeepCopyInto(out *InstanceGroupSpec) {
*out = make([]string, len(*in))
copy(*out, *in)
}
if in.SecurityGroup != nil {
in, out := &in.SecurityGroup, &out.SecurityGroup
if *in == nil {
*out = nil
} else {
*out = new(string)
**out = **in
}
}
return
}

Expand Down Expand Up @@ -2850,6 +2859,20 @@ func (in *LoadBalancerAccessSpec) DeepCopyInto(out *LoadBalancerAccessSpec) {
**out = **in
}
}
if in.AdditionalSecurityGroups != nil {
in, out := &in.AdditionalSecurityGroups, &out.AdditionalSecurityGroups
*out = make([]string, len(*in))
copy(*out, *in)
}
if in.SecurityGroup != nil {
in, out := &in.SecurityGroup, &out.SecurityGroup
if *in == nil {
*out = nil
} else {
*out = new(string)
**out = **in
}
}
return
}

Expand Down

0 comments on commit f8f09db

Please sign in to comment.