diff --git a/jobs/loggr-system-metrics-agent/templates/ctl.erb b/jobs/loggr-system-metrics-agent/templates/ctl.erb index 6b231709..039ecf72 100644 --- a/jobs/loggr-system-metrics-agent/templates/ctl.erb +++ b/jobs/loggr-system-metrics-agent/templates/ctl.erb @@ -36,6 +36,7 @@ case $1 in INDEX=<%= index %> \ IP=<%= ip %> \ LIMITED_METRICS=<%= p('bosh_metrics_forwarder_metrics_only') %> \ + CLOCK_DRIFT_ENABLED=<%= p('clock_drift_enabled') %> \ CA_CERT_PATH="/var/vcap/jobs/loggr-system-metrics-agent/config/certs/system_metrics_agent_ca.crt" \ CERT_PATH="/var/vcap/jobs/loggr-system-metrics-agent/config/certs/system_metrics_agent.crt" \ KEY_PATH="/var/vcap/jobs/loggr-system-metrics-agent/config/certs/system_metrics_agent.key" \ diff --git a/spec/jobs/loggr_system_metrics_agent_spec.rb b/spec/jobs/loggr_system_metrics_agent_spec.rb index 1d29c31f..3c91d073 100644 --- a/spec/jobs/loggr_system_metrics_agent_spec.rb +++ b/spec/jobs/loggr_system_metrics_agent_spec.rb @@ -39,6 +39,51 @@ def render_system_metrics_monit(properties = {}) it 'passes the sample interval from properties' do expect(process['env']['SAMPLE_INTERVAL']).to eq('15s') end + + it 'defaults CLOCK_DRIFT_ENABLED to false' do + expect(process['env']['CLOCK_DRIFT_ENABLED']).to eq('false') + end + + context 'when clock_drift_enabled is true' do + let(:rendered) { template.render({'clock_drift_enabled' => true}) } + + it 'passes CLOCK_DRIFT_ENABLED as true' do + expect(process['env']['CLOCK_DRIFT_ENABLED']).to eq('true') + end + end + + context 'when clock_drift_enabled is false' do + let(:rendered) { template.render({'clock_drift_enabled' => false}) } + + it 'passes CLOCK_DRIFT_ENABLED as false' do + expect(process['env']['CLOCK_DRIFT_ENABLED']).to eq('false') + end + end + end + + describe 'bin/ctl' do + let(:template) { job.template('bin/ctl') } + + it 'defaults CLOCK_DRIFT_ENABLED to false' do + rendered = template.render({}) + expect(rendered).to include('CLOCK_DRIFT_ENABLED=false') + end + + context 'when clock_drift_enabled is true' do + let(:rendered) { template.render({'clock_drift_enabled' => true}) } + + it 'passes CLOCK_DRIFT_ENABLED=true as an environment variable' do + expect(rendered).to include('CLOCK_DRIFT_ENABLED=true') + end + end + + context 'when clock_drift_enabled is false' do + let(:rendered) { template.render({'clock_drift_enabled' => false}) } + + it 'passes CLOCK_DRIFT_ENABLED=false as an environment variable' do + expect(rendered).to include('CLOCK_DRIFT_ENABLED=false') + end + end end describe 'monit' do