Skip to content

Reintroduce `Runtime` class (with amendments)

Matthias Käppler requested to merge 8729-revised-runtime-checks into master

What does this MR do?

Follow up from https://gitlab.com/gitlab-com/gl-infra/infrastructure/issues/8729

This is a revert of !21882 (merged), which was a revert of !20294 (merged).

The original changes have been largely restored, however, with the following amendments:

  • revert to runtime check logic that was applied prior to !20294 (merged) (but keep API intact)
  • when multiple or unknown runtimes are detected in the initializer, track an error into Sentry
  • rename app_server? to web_server? (this seems to be the more commonly adopted term)
  • detect rspec as a runtime?
  • detect rails runner as a runtime?

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

The original MR shipped with issues when running in an omnibus deployment.

How can we make sure this doesn't happen again?

Edited by 🤖 GitLab Bot 🤖

Merge request reports