mirror of https://github.com/kubernetes/kops.git
Set the default LT version to the new LT version
This commit is contained in:
parent
03bcd3bce7
commit
a4e609c450
|
@ -155,17 +155,26 @@ func (m *MockEC2) CreateLaunchTemplateVersion(request *ec2.CreateLaunchTemplateV
|
||||||
|
|
||||||
name := request.LaunchTemplateName
|
name := request.LaunchTemplateName
|
||||||
found := false
|
found := false
|
||||||
for _, ltInfo := range m.LaunchTemplates {
|
var ltVersion int
|
||||||
|
var ltID string
|
||||||
|
for id, ltInfo := range m.LaunchTemplates {
|
||||||
if aws.StringValue(ltInfo.name) == aws.StringValue(name) {
|
if aws.StringValue(ltInfo.name) == aws.StringValue(name) {
|
||||||
found = true
|
found = true
|
||||||
ltInfo.data = responseLaunchTemplateData(request.LaunchTemplateData)
|
ltInfo.data = responseLaunchTemplateData(request.LaunchTemplateData)
|
||||||
ltInfo.version++
|
ltInfo.version++
|
||||||
|
ltVersion = ltInfo.version
|
||||||
|
ltID = id
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if !found {
|
if !found {
|
||||||
return nil, nil // TODO: error
|
return nil, nil // TODO: error
|
||||||
}
|
}
|
||||||
return &ec2.CreateLaunchTemplateVersionOutput{}, nil
|
return &ec2.CreateLaunchTemplateVersionOutput{
|
||||||
|
LaunchTemplateVersion: &ec2.LaunchTemplateVersion{
|
||||||
|
VersionNumber: aws.Int64(int64(ltVersion)),
|
||||||
|
LaunchTemplateId: <ID,
|
||||||
|
},
|
||||||
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// DeleteLaunchTemplate mocks the deletion of a launch template
|
// DeleteLaunchTemplate mocks the deletion of a launch template
|
||||||
|
@ -189,6 +198,10 @@ func (m *MockEC2) DeleteLaunchTemplate(request *ec2.DeleteLaunchTemplateInput) (
|
||||||
return o, nil
|
return o, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (m *MockEC2) ModifyLaunchTemplate(*ec2.ModifyLaunchTemplateInput) (*ec2.ModifyLaunchTemplateOutput, error) {
|
||||||
|
return &ec2.ModifyLaunchTemplateOutput{}, nil
|
||||||
|
}
|
||||||
|
|
||||||
func responseLaunchTemplateData(req *ec2.RequestLaunchTemplateData) *ec2.ResponseLaunchTemplateData {
|
func responseLaunchTemplateData(req *ec2.RequestLaunchTemplateData) *ec2.ResponseLaunchTemplateData {
|
||||||
resp := &ec2.ResponseLaunchTemplateData{
|
resp := &ec2.ResponseLaunchTemplateData{
|
||||||
DisableApiTermination: req.DisableApiTermination,
|
DisableApiTermination: req.DisableApiTermination,
|
||||||
|
|
|
@ -20,10 +20,12 @@ import (
|
||||||
"encoding/base64"
|
"encoding/base64"
|
||||||
"fmt"
|
"fmt"
|
||||||
"sort"
|
"sort"
|
||||||
|
"strconv"
|
||||||
|
|
||||||
"github.com/aws/aws-sdk-go/aws"
|
"github.com/aws/aws-sdk-go/aws"
|
||||||
"github.com/aws/aws-sdk-go/service/ec2"
|
"github.com/aws/aws-sdk-go/service/ec2"
|
||||||
"k8s.io/klog/v2"
|
"k8s.io/klog/v2"
|
||||||
|
|
||||||
"k8s.io/kops/upup/pkg/fi"
|
"k8s.io/kops/upup/pkg/fi"
|
||||||
"k8s.io/kops/upup/pkg/fi/cloudup/awsup"
|
"k8s.io/kops/upup/pkg/fi/cloudup/awsup"
|
||||||
)
|
)
|
||||||
|
@ -164,8 +166,17 @@ func (t *LaunchTemplate) RenderAWS(c *awsup.AWSAPITarget, a, e, changes *LaunchT
|
||||||
LaunchTemplateName: t.Name,
|
LaunchTemplateName: t.Name,
|
||||||
LaunchTemplateData: data,
|
LaunchTemplateData: data,
|
||||||
}
|
}
|
||||||
if _, err = c.Cloud.EC2().CreateLaunchTemplateVersion(input); err != nil {
|
if version, err := c.Cloud.EC2().CreateLaunchTemplateVersion(input); err != nil {
|
||||||
return fmt.Errorf("error creating LaunchTemplateVersion: %v", err)
|
return fmt.Errorf("error creating LaunchTemplateVersion: %v", err)
|
||||||
|
} else {
|
||||||
|
newDefault := strconv.FormatInt(*version.LaunchTemplateVersion.VersionNumber, 10)
|
||||||
|
input := &ec2.ModifyLaunchTemplateInput{
|
||||||
|
DefaultVersion: &newDefault,
|
||||||
|
LaunchTemplateId: version.LaunchTemplateVersion.LaunchTemplateId,
|
||||||
|
}
|
||||||
|
if _, err := c.Cloud.EC2().ModifyLaunchTemplate(input); err != nil {
|
||||||
|
return fmt.Errorf("error updating launch template version: %w", err)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if changes.Tags != nil {
|
if changes.Tags != nil {
|
||||||
err = c.UpdateTags(fi.StringValue(a.ID), e.Tags)
|
err = c.UpdateTags(fi.StringValue(a.ID), e.Tags)
|
||||||
|
@ -174,6 +185,7 @@ func (t *LaunchTemplate) RenderAWS(c *awsup.AWSAPITarget, a, e, changes *LaunchT
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
e.ID = a.ID
|
e.ID = a.ID
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
|
|
Loading…
Reference in New Issue