def test_create(self): name = self.random() client = Client.create(name) self.register(client) self.assertEqual(client.name, name) #self.assertEqual(client.orgname, 'pycheftest') # See CHEF-2019 self.assertTrue(client.private_key) self.assertIn(name, Client.list()) client2 = Client(name) client2.rekey() self.assertNotEqual(client.private_key, client2.private_key)
def put(self): # implements "knife client reregister" node_id = self.request.POST.get('node_id') if node_id is None: return {'ok': False, 'message': 'Missing node ID'} settings = get_current_registry().settings api = get_chef_api(settings, self.request.user) # remove current node's client chef_client = ChefClient(node_id, api) if not chef_client.exists: return {'ok': False, 'message': 'This client does not exists'} chef_client.rekey(api) return {'ok': True, 'message': "Chef node's client has been update", 'client_private_key': chef_client.private_key}