Skip to content

Commit

Permalink
fix: spurious logging from the ssm invalidation controller (aws#7698)
Browse files Browse the repository at this point in the history
  • Loading branch information
jmdeal authored and edibble21 committed Feb 19, 2025
1 parent e206598 commit 809a0ad
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 10 deletions.
16 changes: 16 additions & 0 deletions pkg/controllers/nodeclass/ami.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,16 +22,26 @@ import (

"github.com/samber/lo"
corev1 "k8s.io/api/core/v1"
"sigs.k8s.io/controller-runtime/pkg/log"
"sigs.k8s.io/controller-runtime/pkg/reconcile"

karpv1 "sigs.k8s.io/karpenter/pkg/apis/v1"
"sigs.k8s.io/karpenter/pkg/utils/pretty"

v1 "github.com/aws/karpenter-provider-aws/pkg/apis/v1"
"github.com/aws/karpenter-provider-aws/pkg/providers/amifamily"
)

type AMI struct {
amiProvider amifamily.Provider
cm *pretty.ChangeMonitor
}

func NewAMIReconciler(provider amifamily.Provider) *AMI {
return &AMI{
amiProvider: provider,
cm: pretty.NewChangeMonitor(),
}
}

func (a *AMI) Reconcile(ctx context.Context, nodeClass *v1.EC2NodeClass) (reconcile.Result, error) {
Expand All @@ -46,6 +56,12 @@ func (a *AMI) Reconcile(ctx context.Context, nodeClass *v1.EC2NodeClass) (reconc
// Returning 'ok' in this case means that the nodeclass will remain in an unready state until the component is restarted.
return reconcile.Result{RequeueAfter: time.Minute}, nil
}
if uniqueAMIs := lo.Uniq(lo.Map(amis, func(a amifamily.AMI, _ int) string {
return a.AmiID
})); a.cm.HasChanged(fmt.Sprintf("amis/%s", nodeClass.Name), uniqueAMIs) {
log.FromContext(ctx).WithValues("ids", uniqueAMIs).V(1).Info("discovered amis")
}

nodeClass.Status.AMIs = lo.Map(amis, func(ami amifamily.AMI, _ int) v1.AMI {
reqs := lo.Map(ami.Requirements.NodeSelectorRequirements(), func(item karpv1.NodeSelectorRequirementWithMinValues, _ int) corev1.NodeSelectorRequirement {
return item.NodeSelectorRequirement
Expand Down
2 changes: 1 addition & 1 deletion pkg/controllers/nodeclass/controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ func NewController(kubeClient client.Client, recorder events.Recorder, subnetPro
kubeClient: kubeClient,
recorder: recorder,
launchTemplateProvider: launchTemplateProvider,
ami: &AMI{amiProvider: amiProvider},
ami: NewAMIReconciler(amiProvider),
subnet: &Subnet{subnetProvider: subnetProvider},
securityGroup: &SecurityGroup{securityGroupProvider: securityGroupProvider},
instanceProfile: &InstanceProfile{instanceProfileProvider: instanceProfileProvider},
Expand Down
9 changes: 0 additions & 9 deletions pkg/providers/amifamily/ami.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,15 +26,13 @@ import (
"github.com/patrickmn/go-cache"
"github.com/samber/lo"
"k8s.io/utils/clock"
"sigs.k8s.io/controller-runtime/pkg/log"

v1 "github.com/aws/karpenter-provider-aws/pkg/apis/v1"
sdk "github.com/aws/karpenter-provider-aws/pkg/aws"
"github.com/aws/karpenter-provider-aws/pkg/providers/version"

"sigs.k8s.io/karpenter/pkg/cloudprovider"
"sigs.k8s.io/karpenter/pkg/scheduling"
"sigs.k8s.io/karpenter/pkg/utils/pretty"

"github.com/aws/karpenter-provider-aws/pkg/providers/ssm"
)
Expand All @@ -49,7 +47,6 @@ type DefaultProvider struct {
clk clock.Clock
cache *cache.Cache
ec2api sdk.EC2API
cm *pretty.ChangeMonitor
versionProvider version.Provider
ssmProvider ssm.Provider
}
Expand All @@ -59,7 +56,6 @@ func NewDefaultProvider(clk clock.Clock, versionProvider version.Provider, ssmPr
clk: clk,
cache: cache,
ec2api: ec2api,
cm: pretty.NewChangeMonitor(),
versionProvider: versionProvider,
ssmProvider: ssmProvider,
}
Expand All @@ -78,11 +74,6 @@ func (p *DefaultProvider) List(ctx context.Context, nodeClass *v1.EC2NodeClass)
return nil, err
}
amis.Sort()
uniqueAMIs := lo.Uniq(lo.Map(amis, func(a AMI, _ int) string { return a.AmiID }))
if p.cm.HasChanged(fmt.Sprintf("amis/%s", nodeClass.Name), uniqueAMIs) {
log.FromContext(ctx).WithValues(
"ids", uniqueAMIs).V(1).Info("discovered amis")
}
return amis, nil
}

Expand Down

0 comments on commit 809a0ad

Please sign in to comment.