summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Puppetfile_extras4
-rw-r--r--manifests/profile/base/time/ntp.pp10
-rw-r--r--spec/classes/tripleo_profile_base_time_ntp_spec.rb39
3 files changed, 49 insertions, 4 deletions
diff --git a/Puppetfile_extras b/Puppetfile_extras
index 7339074..05586a3 100644
--- a/Puppetfile_extras
+++ b/Puppetfile_extras
@@ -36,3 +36,7 @@ mod 'fdio',
mod 'certmonger',
:git => 'https://github.com/earsdown/puppet-certmonger',
:ref => 'v1.1.1'
+
+mod 'ntp',
+ :git => 'https://github.com/puppetlabs/puppetlabs-ntp',
+ :ref => '4.2.x'
diff --git a/manifests/profile/base/time/ntp.pp b/manifests/profile/base/time/ntp.pp
index c6ce309..06a3048 100644
--- a/manifests/profile/base/time/ntp.pp
+++ b/manifests/profile/base/time/ntp.pp
@@ -19,10 +19,12 @@
#
class tripleo::profile::base::time::ntp {
- # if installed, we don't want chrony to conflict with ntp.
- package { 'chrony':
- ensure => 'purged',
- before => Service['ntp'],
+ # If installed, we don't want chrony to conflict with ntp. LP#1665426
+ # It should be noted that this work even if the package is not installed
+ service { 'chronyd':
+ ensure => stopped,
+ enable => false,
+ before => Class['ntp']
}
include ::ntp
}
diff --git a/spec/classes/tripleo_profile_base_time_ntp_spec.rb b/spec/classes/tripleo_profile_base_time_ntp_spec.rb
new file mode 100644
index 0000000..ec4b55f
--- /dev/null
+++ b/spec/classes/tripleo_profile_base_time_ntp_spec.rb
@@ -0,0 +1,39 @@
+#
+# Copyright (C) 2017 Red Hat, Inc.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+#
+
+require 'spec_helper'
+
+describe 'tripleo::profile::base::time::ntp' do
+ shared_examples_for 'tripleo::profile::base::time::ntp' do
+
+ context 'with defaults' do
+ it { is_expected.to contain_class('tripleo::profile::base::time::ntp') }
+ it { is_expected.to contain_service('chronyd').with(
+ :ensure => 'stopped',
+ :enable => false) }
+ it { is_expected.to contain_class('ntp') }
+ end
+ end
+
+ on_supported_os.each do |os, facts|
+ context "on #{os}" do
+ let (:facts) {
+ facts
+ }
+ it_behaves_like 'tripleo::profile::base::time::ntp'
+ end
+ end
+end