Add support for healthcheck middleware options
Depends-on: https://review.opendev.org/772202 Depends-on: https://review.opendev.org/800405 Change-Id: I7b20aa48cb16927211a862e264bb51ae4bb50f42
This commit is contained in:
parent
8588e30b39
commit
a2ec0e36d3
|
@ -0,0 +1,50 @@
|
|||
# == Class: mistral::healthcheck
|
||||
#
|
||||
# Configure oslo_middleware options in healthcheck section
|
||||
#
|
||||
# == Params
|
||||
#
|
||||
# [*enabled*]
|
||||
# (Optional) Enable the healthcheck endpoint at /healthcheck.
|
||||
# Defaults to $facts['os_service_default']
|
||||
#
|
||||
# [*detailed*]
|
||||
# (Optional) Show more detailed information as part of the response.
|
||||
# Defaults to $facts['os_service_default']
|
||||
#
|
||||
# [*backends*]
|
||||
# (Optional) Additional backends that can perform health checks and report
|
||||
# that information back as part of a request.
|
||||
# Defaults to $facts['os_service_default']
|
||||
#
|
||||
# [*disable_by_file_path*]
|
||||
# (Optional) Check the presense of a file to determine if an application
|
||||
# is running on a port.
|
||||
# Defaults to $facts['os_service_default']
|
||||
#
|
||||
# [*disable_by_file_paths*]
|
||||
# (Optional) Check the presense of a file to determine if an application
|
||||
# is running on a port. Expects a "port:path" list of strings.
|
||||
# Defaults to $facts['os_service_default']
|
||||
#
|
||||
class mistral::healthcheck (
|
||||
$enabled = $facts['os_service_default'],
|
||||
$detailed = $facts['os_service_default'],
|
||||
$backends = $facts['os_service_default'],
|
||||
$disable_by_file_path = $facts['os_service_default'],
|
||||
$disable_by_file_paths = $facts['os_service_default'],
|
||||
) {
|
||||
|
||||
include mistral::deps
|
||||
|
||||
mistral_config {
|
||||
'healthcheck/enabled': value => $enabled,
|
||||
}
|
||||
|
||||
oslo::healthcheck { 'mistral_config':
|
||||
detailed => $detailed,
|
||||
backends => $backends,
|
||||
disable_by_file_path => $disable_by_file_path,
|
||||
disable_by_file_paths => $disable_by_file_paths,
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
features:
|
||||
- |
|
||||
The new ``mistral::healthcheck`` class has been added. This class manages
|
||||
parameters of healthcheck middlware in oslo.middleware.
|
|
@ -0,0 +1,60 @@
|
|||
require 'spec_helper'
|
||||
|
||||
describe 'mistral::healthcheck' do
|
||||
|
||||
shared_examples_for 'mistral::healthcheck' do
|
||||
|
||||
context 'with default parameters' do
|
||||
let :params do
|
||||
{}
|
||||
end
|
||||
|
||||
it 'configures default values' do
|
||||
is_expected.to contain_mistral_config('healthcheck/enabled').with_value('<SERVICE DEFAULT>')
|
||||
|
||||
is_expected.to contain_oslo__healthcheck('mistral_config').with(
|
||||
:detailed => '<SERVICE DEFAULT>',
|
||||
:backends => '<SERVICE DEFAULT>',
|
||||
:disable_by_file_path => '<SERVICE DEFAULT>',
|
||||
:disable_by_file_paths => '<SERVICE DEFAULT>',
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
context 'with specific parameters' do
|
||||
let :params do
|
||||
{
|
||||
:enabled => true,
|
||||
:detailed => true,
|
||||
:backends => ['disable_by_file'],
|
||||
:disable_by_file_path => '/etc/mistral/healthcheck/disabled',
|
||||
:disable_by_file_paths => ['8989:/etc/mistral/healthcheck/disabled'],
|
||||
}
|
||||
end
|
||||
|
||||
it 'configures specified values' do
|
||||
is_expected.to contain_mistral_config('healthcheck/enabled').with_value(true)
|
||||
|
||||
is_expected.to contain_oslo__healthcheck('mistral_config').with(
|
||||
:detailed => true,
|
||||
:backends => ['disable_by_file'],
|
||||
:disable_by_file_path => '/etc/mistral/healthcheck/disabled',
|
||||
:disable_by_file_paths => ['8989:/etc/mistral/healthcheck/disabled'],
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
on_supported_os({
|
||||
:supported_os => OSDefaults.get_supported_os
|
||||
}).each do |os,facts|
|
||||
context "on #{os}" do
|
||||
let (:facts) do
|
||||
facts.merge!(OSDefaults.get_facts())
|
||||
end
|
||||
|
||||
it_configures 'mistral::healthcheck'
|
||||
end
|
||||
end
|
||||
|
||||
end
|
Loading…
Reference in New Issue