def test_starter_uncheffed(self): for chefFile in self.chefFiles: if os.path.exists(chefFile): os.remove(chefFile) uncheffedRunner = systemCall( 'sourdough-starter 2>&1 | grep RuntimeError') self.assertEqual( uncheffedRunner.strip(), "raise RuntimeError, 'Chef has not been installed'\nRuntimeError: Chef has not been installed" )
def test_chef_shim(self): self.assertEqual( systemCall('/usr/local/bin/chef-client foo bar').strip(), 'foo bar')
def test_starter_cheffed_and_disabled(self): injectChefConfigFiles() systemCall("touch /etc/sourdough/Disable-Sourdough") cheffedRunner = systemCall('sourdough-starter 2>&1 | grep -c converge') self.assertEqual(cheffedRunner.strip(), '1')
def test_starter_cheffed(self): injectChefConfigFiles() cheffedRunner = systemCall('sourdough-starter') self.assertEqual( cheffedRunner.strip(), "--run-lock-timeout 900 --runlist ocp_base --environment _default")
def test_bootstrap(self): runBootstrap = systemCall('sourdough-bootstrap') self.assertEqual( runBootstrap.strip(), '--json-attributes /etc/chef/first-boot.json --validation_key /etc/OmniConsumerProducts/credentials/chef/OmniConsumerProducts-validator.private.key --run-lock-timeout 900' )
def injectChefConfigFiles(): chefFiles = ['/etc/chef/client.rb', '/etc/chef/client.pem'] for chefFile in chefFiles: if not os.path.exists(chefFile): systemCall("touch %s" % chefFile)
def installSourdoughInContainer(): installOut = systemCall('cd /test && python setup.py develop')