mirror of https://github.com/kubernetes/kops.git
feat: allow additional security groups on bastion ELB
This commit is contained in:
parent
33c7e22207
commit
89d4fb757e
|
|
@ -20,4 +20,10 @@ type BastionSpec struct {
|
|||
BastionPublicName string `json:"bastionPublicName,omitempty"`
|
||||
// IdleTimeoutSeconds is the bastion's Loadbalancer idle timeout
|
||||
IdleTimeoutSeconds *int64 `json:"idleTimeoutSeconds,omitempty"`
|
||||
|
||||
LoadBalancer *BastionLoadBalancerSpec `json:"loadBalancer,omitempty"`
|
||||
}
|
||||
|
||||
type BastionLoadBalancerSpec struct {
|
||||
AdditionalSecurityGroups []string `json:"additionalSecurityGroups,omitempty"`
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,5 +19,10 @@ package v1alpha2
|
|||
type BastionSpec struct {
|
||||
BastionPublicName string `json:"bastionPublicName,omitempty"`
|
||||
// IdleTimeoutSeconds is the bastion's Loadbalancer idle timeout
|
||||
IdleTimeoutSeconds *int64 `json:"idleTimeoutSeconds,omitempty"`
|
||||
IdleTimeoutSeconds *int64 `json:"idleTimeoutSeconds,omitempty"`
|
||||
LoadBalancer *BastionLoadBalancerSpec `json:"loadBalancer,omitempty"`
|
||||
}
|
||||
|
||||
type BastionLoadBalancerSpec struct {
|
||||
AdditionalSecurityGroups []string `json:"additionalSecurityGroups,omitempty"`
|
||||
}
|
||||
|
|
|
|||
|
|
@ -244,6 +244,21 @@ func (b *BastionModelBuilder) Build(c *fi.ModelBuilderContext) error {
|
|||
|
||||
Tags: tags,
|
||||
}
|
||||
// Add additional security groups to the ELB
|
||||
if b.Cluster.Spec.Topology != nil && b.Cluster.Spec.Topology.Bastion != nil && b.Cluster.Spec.Topology.Bastion.LoadBalancer != nil && b.Cluster.Spec.Topology.Bastion.LoadBalancer.AdditionalSecurityGroups != nil {
|
||||
for _, id := range b.Cluster.Spec.Topology.Bastion.LoadBalancer.AdditionalSecurityGroups {
|
||||
t := &awstasks.SecurityGroup{
|
||||
Name: fi.String(id),
|
||||
Lifecycle: b.SecurityLifecycle,
|
||||
ID: fi.String(id),
|
||||
Shared: fi.Bool(true),
|
||||
}
|
||||
if err := c.EnsureTask(t); err != nil {
|
||||
return err
|
||||
}
|
||||
elb.SecurityGroups = append(elb.SecurityGroups, t)
|
||||
}
|
||||
}
|
||||
|
||||
c.AddTask(elb)
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue