Commit 5f9f6ca3 authored by Kamil Trzcinski's avatar Kamil Trzcinski

Add ExclusiveLease to ClearShareRunnerMinutesWorker

parent 9064a33a
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
can?(current_user, :create_pipeline, project) can?(current_user, :create_pipeline, project)
.shared-runner-quota-message.alert.alert-warning.hidden-xs .shared-runner-quota-message.alert.alert-warning.hidden-xs
= namespace.name = namespace.name
has exceeded their build minutes quota. Pipelines will not run anymore on shared runners. has exceeded its build minutes quota. Pipelines will not run anymore on shared runners.
.pull-right .pull-right
= link_to "Don't show again this month", '#', class: 'hide-shared-runner-limit-message-one-month alert-link' = link_to "Don't show again this month", '#', class: 'hide-shared-runner-limit-message-one-month alert-link'
......
class ClearSharedRunnerMinutesWorker class ClearSharedRunnerMinutesWorker
LEASE_TIMEOUT = 3600
include Sidekiq::Worker include Sidekiq::Worker
include CronjobQueue include CronjobQueue
def perform def perform
return unless try_obtain_lease
ProjectMetrics.update_all( ProjectMetrics.update_all(
shared_runners_minutes: 0, shared_runners_minutes: 0,
shared_runners_minutes_last_reset: Time.now) shared_runners_minutes_last_reset: Time.now)
...@@ -11,4 +15,11 @@ class ClearSharedRunnerMinutesWorker ...@@ -11,4 +15,11 @@ class ClearSharedRunnerMinutesWorker
shared_runners_minutes: 0, shared_runners_minutes: 0,
shared_runners_minutes_last_reset: Time.now) shared_runners_minutes_last_reset: Time.now)
end end
private
def try_obtain_lease
Gitlab::ExclusiveLease.new('gitlab_clear_shared_runner_minutes_worker',
timeout: LEASE_TIMEOUT).try_obtain
end
end end
...@@ -113,7 +113,6 @@ module API ...@@ -113,7 +113,6 @@ module API
expose :request_access_enabled expose :request_access_enabled
expose :only_allow_merge_if_all_discussions_are_resolved expose :only_allow_merge_if_all_discussions_are_resolved
expose :approvals_before_merge expose :approvals_before_merge
expose :shared_runners_minutes_limit
end end
class Member < UserBasic class Member < UserBasic
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment