in internal/handler/cache.go [65:83]
func (c *CacheHandler) CheckCacheExpiry(ctx context.Context) (reconciler.OperationResult, error) {
if c.cache.Spec.ExpireTime == "" {
return reconciler.ContinueProcessing()
}
ce, err := time.Parse(time.RFC3339, c.cache.Spec.ExpireTime)
if err != nil {
c.logger.Error(err, "failed to parse expire time")
// TODO: set cache expiry condition if needed
return reconciler.ContinueProcessing()
}
if time.Now().After(ce) {
c.logger.Info("cache is expired, deleting cache cr")
if err := c.client.Delete(ctx, c.cache); err != nil {
return reconciler.RequeueWithError(err)
}
return reconciler.StopProcessing()
}
return reconciler.ContinueProcessing()
}