def get_unmanaged_servers(request): launcher = EC2InstanceAdmin(region = "us-east-1") chef = ChefClient() iaas_instance_names = launcher.get_all_running_instance_names() chef_nodes = chef.get_all_nodes() unmanaged_nodes = [] for ec2_instance in iaas_instance_names: if ec2_instance not in chef_nodes: unmanaged_nodes.append(ec2_instance) response_key_value = {"Unmanaged" : unmanaged_nodes} return HttpResponse(json.dumps(response_key_value), content_type="application/json")
#!/usr/bin/python __author__ = 'nirv' from Chef.ConfigurationManagement import ChefClient from AWS.EC2 import EC2 def get_menu(): return ("\n----- Secure Cloud Management Console -----\n" "1. Launch secure instance\n" "2. Locate not managed instances\n" "3. Exit\n" "Your choise: ") ec2 = EC2(False, "us-east-1") chef = ChefClient() while True: response = raw_input(get_menu()) if response == '1': ec2.create_secure_instance("ami-c65be9ae","t1.micro","Secure Instance") # ami-c65be9ae is Ubuntu 14 elif response == '2': ec2_instances = ec2.get_all_running_instance_names() chef_nodes = chef.get_all_nodes() print "Not managed nodes list: " for ec2_instance in ec2_instances: if ec2_instance not in chef_nodes: print ec2_instance else: exit()