From 658f8309705f996624f4a5689ed89c52feca70f0 Mon Sep 17 00:00:00 2001
From: Thomas Woerner <twoerner@redhat.com>
Date: Fri, 5 Apr 2019 18:31:54 +0200
Subject: [PATCH] ipaclient_setup_ntp: Add missing cli_servers, fix
 options.ntp_servers check

cli_servers from ipaclient_test was missing in ipaclient_setup_ntp. This
resulted in a backtrace and is fixed now. Fix options.ntp_servers check
to not use length on NoneType.
---
 roles/ipaclient/library/ipaclient_setup_ntp.py | 4 +++-
 roles/ipaclient/tasks/install.yml              | 1 +
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/roles/ipaclient/library/ipaclient_setup_ntp.py b/roles/ipaclient/library/ipaclient_setup_ntp.py
index d427bc2b..d7b4f3b7 100644
--- a/roles/ipaclient/library/ipaclient_setup_ntp.py
+++ b/roles/ipaclient/library/ipaclient_setup_ntp.py
@@ -99,6 +99,7 @@ def main():
             #force_ntpd=dict(required=False, type='bool', default=False),
             on_master=dict(required=False, type='bool', default=False),
             ### additional ###
+            servers=dict(required=False, type='list', default=None),
             domain=dict(required=False, default=None),
         ),
         supports_check_mode = True,
@@ -110,6 +111,7 @@ def main():
     options.no_ntp = module.params.get('no_ntp')
     #options.force_ntpd = module.params.get('force_ntpd')
     options.on_master = module.params.get('on_master')
+    cli_server = module.params.get('servers')
     cli_domain = module.params.get('domain')
 
     options.conf_ntp = not options.no_ntp
@@ -138,7 +140,7 @@ def main():
         # in the DNS.
         # If that fails, we try to sync directly with IPA server,
         # assuming it runs NTP
-        if len(options.ntp_servers) < 1:
+        if not options.ntp_servers:
             # Detect NTP servers
             ds = ipadiscovery.IPADiscovery()
             ntp_servers = ds.ipadns_search_srv(cli_domain, '_ntp._udp',
diff --git a/roles/ipaclient/tasks/install.yml b/roles/ipaclient/tasks/install.yml
index 43eb86bf..606087e0 100644
--- a/roles/ipaclient/tasks/install.yml
+++ b/roles/ipaclient/tasks/install.yml
@@ -76,6 +76,7 @@
       #force_ntpd: "{{ ipaclient_force_ntpd }}"
       on_master: "{{ ipaclient_on_master }}"
       ### additional ###
+      servers: "{{ result_ipaclient_test.servers }}"
       domain: "{{ result_ipaclient_test.domain }}"
 
   - name: Install - Test if IPA client has working krb5.keytab
-- 
GitLab