diff options
Diffstat (limited to 'app/services/container_expiration_policy_service.rb')
-rw-r--r-- | app/services/container_expiration_policy_service.rb | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/app/services/container_expiration_policy_service.rb b/app/services/container_expiration_policy_service.rb index 82274fd8668..80f32298323 100644 --- a/app/services/container_expiration_policy_service.rb +++ b/app/services/container_expiration_policy_service.rb @@ -1,7 +1,14 @@ # frozen_string_literal: true class ContainerExpirationPolicyService < BaseService + InvalidPolicyError = Class.new(StandardError) + def execute(container_expiration_policy) + unless container_expiration_policy.valid? + container_expiration_policy.disable! + raise InvalidPolicyError + end + container_expiration_policy.schedule_next_run! container_expiration_policy.container_repositories.find_each do |container_repository| |