From a866f55691c5871db335cd976c71d3429dbf62b1 Mon Sep 17 00:00:00 2001 From: Alex Schultz Date: Wed, 20 Jun 2018 08:54:57 -0600 Subject: [PATCH] Add host prep step for ntp time sync Docker doesn't like it when the time shifts so if we're building containers when the ntp time sync actually occurs it can lead to deployment failures. To prevent this, let's force a ntpdate on the host during step1 to ensure the hardware time is properly synced before proceeding. Change-Id: I812c7da90ae06120707fd8795a41e4fd867f510e Closes-Bug: #1776869 --- puppet/services/time/ntp.yaml | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/puppet/services/time/ntp.yaml b/puppet/services/time/ntp.yaml index 504cb989ac..1bb7e0777b 100644 --- a/puppet/services/time/ntp.yaml +++ b/puppet/services/time/ntp.yaml @@ -64,7 +64,10 @@ parameters: default: 6 constraints: - range: { min: 4, max: 17 } - + EnablePackageInstall: + default: 'false' + description: Set to true to enable package installation at deploy time + type: boolean outputs: role_data: @@ -82,3 +85,17 @@ outputs: proto: udp step_config: | include ::tripleo::profile::base::time::ntp + host_prep_tasks: + - name: NTP settings + set_fact: + ntp_servers: {get_param: NtpServer} + ntp_install_packages: {get_param: EnablePackageInstall} + - block: + - name: Install ntpdate + package: + name: ntpdate + state: present + when: ntp_install_packages|bool + - name: Ensure system is NTP time synced + command: ntpdate -u {{ ntp_servers | join(" ") }} + when: ntp_servers