summaryrefslogtreecommitdiff
path: root/lib/gitlab/runtime.rb
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2019-12-17 03:07:45 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2019-12-17 03:07:45 +0000
commit9763c081708e4c2e08de1f4e9ca9abdef5cffe3c (patch)
treeb27794ba1a039cdc42cdf5d90bcb7b7503437324 /lib/gitlab/runtime.rb
parent7480d774dfca97ea905321d52c70fd19496f0084 (diff)
downloadgitlab-ce-9763c081708e4c2e08de1f4e9ca9abdef5cffe3c.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib/gitlab/runtime.rb')
-rw-r--r--lib/gitlab/runtime.rb62
1 files changed, 0 insertions, 62 deletions
diff --git a/lib/gitlab/runtime.rb b/lib/gitlab/runtime.rb
deleted file mode 100644
index 07a3afb8834..00000000000
--- a/lib/gitlab/runtime.rb
+++ /dev/null
@@ -1,62 +0,0 @@
-# frozen_string_literal: true
-
-module Gitlab
- # Provides routines to identify the current runtime as which the application
- # executes, such as whether it is an application server and which one.
- module Runtime
- class << self
- def name
- matches = []
- matches << :puma if puma?
- matches << :unicorn if unicorn?
- matches << :console if console?
- matches << :sidekiq if sidekiq?
-
- raise "Ambiguous process match: #{matches}" if matches.size > 1
-
- matches.first || :unknown
- end
-
- def puma?
- !!(defined?(::Puma) && bin == 'puma')
- end
-
- # For unicorn, we need to check for actual server instances to avoid false positives.
- def unicorn?
- !!(defined?(::Unicorn) && defined?(::Unicorn::HttpServer))
- end
-
- def sidekiq?
- !!(defined?(::Sidekiq) && Sidekiq.server? && bin == 'sidekiq')
- end
-
- def console?
- !!defined?(::Rails::Console)
- end
-
- def app_server?
- puma? || unicorn?
- end
-
- def multi_threaded?
- puma? || sidekiq?
- end
-
- private
-
- # Some example values from my system:
- # puma: /data/cache/bundle-2.5/bin/puma
- # unicorn: unicorn_rails master -E development -c /tmp/unicorn.rb -l 0.0.0.0:8080
- # sidekiq: /data/cache/bundle-2.5/bin/sidekiq
- # thin: bin/rails
- # console: bin/rails
- def script_name
- $0
- end
-
- def bin
- File.basename(script_name)
- end
- end
- end
-end