mirror of https://github.com/kubernetes/kops.git
Merge pull request #12932 from olemarkus/set-lt-default-version
Set the default LT version to the new LT version
This commit is contained in:
commit
1d8530d8ca
|
@ -155,17 +155,26 @@ func (m *MockEC2) CreateLaunchTemplateVersion(request *ec2.CreateLaunchTemplateV
|
|||
|
||||
name := request.LaunchTemplateName
|
||||
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) {
|
||||
found = true
|
||||
ltInfo.data = responseLaunchTemplateData(request.LaunchTemplateData)
|
||||
ltInfo.version++
|
||||
ltVersion = ltInfo.version
|
||||
ltID = id
|
||||
}
|
||||
}
|
||||
if !found {
|
||||
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
|
||||
|
@ -189,6 +198,10 @@ func (m *MockEC2) DeleteLaunchTemplate(request *ec2.DeleteLaunchTemplateInput) (
|
|||
return o, nil
|
||||
}
|
||||
|
||||
func (m *MockEC2) ModifyLaunchTemplate(*ec2.ModifyLaunchTemplateInput) (*ec2.ModifyLaunchTemplateOutput, error) {
|
||||
return &ec2.ModifyLaunchTemplateOutput{}, nil
|
||||
}
|
||||
|
||||
func responseLaunchTemplateData(req *ec2.RequestLaunchTemplateData) *ec2.ResponseLaunchTemplateData {
|
||||
resp := &ec2.ResponseLaunchTemplateData{
|
||||
DisableApiTermination: req.DisableApiTermination,
|
||||
|
|
|
@ -20,10 +20,12 @@ import (
|
|||
"encoding/base64"
|
||||
"fmt"
|
||||
"sort"
|
||||
"strconv"
|
||||
|
||||
"github.com/aws/aws-sdk-go/aws"
|
||||
"github.com/aws/aws-sdk-go/service/ec2"
|
||||
"k8s.io/klog/v2"
|
||||
|
||||
"k8s.io/kops/upup/pkg/fi"
|
||||
"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,
|
||||
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)
|
||||
} 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 {
|
||||
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
|
||||
|
||||
}
|
||||
|
||||
return nil
|
||||
|
|
Loading…
Reference in New Issue