diff --git a/pkg/controller/core.oam.dev/v1alpha2/application/apply.go b/pkg/controller/core.oam.dev/v1alpha2/application/apply.go index f1351137b..b515f2c2c 100644 --- a/pkg/controller/core.oam.dev/v1alpha2/application/apply.go +++ b/pkg/controller/core.oam.dev/v1alpha2/application/apply.go @@ -154,8 +154,9 @@ func (h *appHandler) apply(ctx context.Context, appRev *v1beta1.ApplicationRevis } } } - if comp.Spec.Helm != nil { - // TODO(wonderflow): do we still need to apply helm resource if the spec has no difference? + // isNewRevision indicates app's newly created or spec has changed + // skip applying helm resources if no spec change + if h.isNewRevision && comp.Spec.Helm != nil { if err = h.applyHelmModuleResources(ctx, comp, owners); err != nil { return errors.Wrap(err, "cannot apply Helm module resources") }