summaryrefslogtreecommitdiffstats
path: root/utils/test/cli_installer_tests.py
diff options
context:
space:
mode:
authorBrenton Leanhardt <bleanhar@redhat.com>2015-11-20 14:36:13 -0500
committerBrenton Leanhardt <bleanhar@redhat.com>2015-11-20 14:36:13 -0500
commitf0d13819c35727300101a7e31b8ff9b0022e683f (patch)
treeda964721c03327adaa327a69306de95010e349bb /utils/test/cli_installer_tests.py
parent191bfbaa614b1eeafe4785edd295e1e0b3498175 (diff)
parenta72243eda9ad0fb066c405a8171d41bfd8a16ecf (diff)
downloadopenshift-f0d13819c35727300101a7e31b8ff9b0022e683f.tar.gz
openshift-f0d13819c35727300101a7e31b8ff9b0022e683f.tar.bz2
openshift-f0d13819c35727300101a7e31b8ff9b0022e683f.tar.xz
openshift-f0d13819c35727300101a7e31b8ff9b0022e683f.zip
Merge pull request #890 from smunilla/friendly_unattended_errors
atomic-openshift-installer: connect_to error handling
Diffstat (limited to 'utils/test/cli_installer_tests.py')
-rw-r--r--utils/test/cli_installer_tests.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/utils/test/cli_installer_tests.py b/utils/test/cli_installer_tests.py
index baadad358..40a2f844d 100644
--- a/utils/test/cli_installer_tests.py
+++ b/utils/test/cli_installer_tests.py
@@ -67,6 +67,29 @@ hosts:
node: true
"""
+BAD_CONFIG = """
+variant: %s
+ansible_ssh_user: root
+hosts:
+ - connect_to: 10.0.0.1
+ ip: 10.0.0.1
+ hostname: master-private.example.com
+ public_ip: 24.222.0.1
+ public_hostname: master.example.com
+ master: true
+ node: true
+ - ip: 10.0.0.2
+ hostname: node1-private.example.com
+ public_ip: 24.222.0.2
+ public_hostname: node1.example.com
+ node: true
+ - connect_to: 10.0.0.3
+ ip: 10.0.0.3
+ hostname: node2-private.example.com
+ public_ip: 24.222.0.3
+ public_hostname: node2.example.com
+ node: true
+"""
class OOCliFixture(OOInstallFixture):
@@ -465,6 +488,21 @@ class UnattendedCliTests(OOCliFixture):
self.assertTrue('ANSIBLE_CONFIG' not in env_vars or
env_vars['ANSIBLE_CONFIG'] == cli.DEFAULT_ANSIBLE_CONFIG)
+ # unattended with bad config file and no installed hosts (without --force)
+ @patch('ooinstall.openshift_ansible.run_main_playbook')
+ @patch('ooinstall.openshift_ansible.load_system_facts')
+ def test_bad_config(self, load_facts_mock, run_playbook_mock):
+ load_facts_mock.return_value = (MOCK_FACTS, 0)
+ run_playbook_mock.return_value = 0
+
+ config_file = self.write_config(os.path.join(self.work_dir,
+ 'ooinstall.conf'), BAD_CONFIG % 'openshift-enterprise')
+
+ self.cli_args.extend(["-c", config_file, "install"])
+ result = self.runner.invoke(cli.cli, self.cli_args)
+
+ assert result.exit_code == 1
+ assert result.output == "You must specify either and 'ip' or 'hostname' to connect to.\n"
class AttendedCliTests(OOCliFixture):