def test_validate_invalid_config(self):
     """
     Tests whether an invalid config is validated properly.
     """
     cfg = CloudManConfig()
     result = cfg.validate()
     self.assertIsNotNone(result, "Validation should have returned a value since the configuration was invalid!")
Beispiel #2
0
 def test_validate_invalid_config(self):
     """
     Tests whether an invalid config is validated properly.
     """
     cfg = CloudManConfig()
     result = cfg.validate()
     self.assertIsNotNone(result, "Validation should have returned a value since the configuration was invalid!")
 def test_validate_valid_config(self):
     """
     Tests whether a valid config is validated properly.
     """
     # cfg = CloudManConfig(self.access_key, self.secret_key, self.cluster_name, self.ami_id, self.instance_type, self.password, cloud_metadata=self.cloud_metadata)
     cls = TestCloudmanLaunch
     cfg = CloudManConfig(cls.access_key, cls.secret_key, cls.cluster_name, cls.ami_id, cls.instance_type, cls.password, cloud_metadata=cls.cloud_metadata)
     result = cfg.validate()
     self.assertIsNone(result, "Validation did not return null to indicate success!")
Beispiel #4
0
 def test_validate_valid_config(self):
     """
     Tests whether a valid config is validated properly.
     """
     # cfg = CloudManConfig(self.access_key, self.secret_key, self.cluster_name, self.ami_id, self.instance_type, self.password, cloud_metadata=self.cloud_metadata)
     cls = TestCloudmanLaunch
     cfg = CloudManConfig(cls.access_key, cls.secret_key, cls.cluster_name, cls.ami_id, cls.instance_type, cls.password, cloud_metadata=cls.cloud_metadata)
     result = cfg.validate()
     self.assertIsNone(result, "Validation did not return null to indicate success!")
 def setUpClass(cls):
     super(TestCloudmanServices, cls).setUpClass()
     cls.cfg = CloudManConfig(cls.access_key,
                              cls.secret_key,
                              cls.cluster_name,
                              cls.ami_id,
                              cls.instance_type,
                              cls.password,
                              cloud_metadata=cls.cloud_metadata)
     cls.cmi = CloudManInstance.launch_instance(cls.cfg)
 def test_launch_and_terminate(self):
     cls = TestCloudmanLaunch
     cfg = CloudManConfig(cls.access_key, cls.secret_key, cls.cluster_name, cls.ami_id, cls.instance_type, cls.password, cloud_metadata=cls.cloud_metadata)
     cmi = CloudManInstance.launch_instance(cfg)
     status = cmi.get_status()
     self.assertNotEqual(status['cluster_status'], 'ERROR', "instance.get_status() returned ERROR. Should return a successful status!")
     with contextlib.suppress(Exception):
         # TODO: The terminate method is unpredictable! Needs fix.
         result = cmi.terminate(delete_cluster=True)
         self.assertEqual(result['cluster_status'], 'SHUTDOWN', "Cluster should be in status SHUTDOWN after call to terminate!")
Beispiel #7
0
def start_cloudman(name, pwd, cm_type, inst_type, ami, ak, sk):
    """
    Start an instance of CloudMan with the provided arguments.

    Returns a tuple: an instance of ``CloudManConfig`` pointing to the
    settings used to launch this instance of CloudMan; and an instance
    of ``CloudManInstance`` pointing to the given instance of CloudMan.
    """
    cloud = None  # If left as None, BioBlend will default to Amazon
    # Define properties for the NeCTAR cloud
    cloud = Bunch(id='-1',
                  name="NeCTAR",
                  cloud_type='openstack',
                  bucket_default='cloudman-os',
                  region_name='melbourne',
                  region_endpoint='nova.rc.nectar.org.au',
                  ec2_port=8773,
                  ec2_conn_path='/services/Cloud',
                  cidr_range='115.146.92.0/22',
                  is_secure=True,
                  s3_host='swift.rc.nectar.org.au',
                  s3_port=8888,
                  s3_conn_path='/')
    # Create an instance of the CloudManConfig class and launch a CloudMan instance
    cmc = CloudManConfig(ak,
                         sk,
                         name,
                         ami,
                         inst_type,
                         pwd,
                         cloud_metadata=cloud,
                         cloudman_type=cm_type,
                         initial_storage_size=2,
                         placement='melbourne-np')
    print("Configured an instance; waiting to launch and boot...")
    cmi = CloudManInstance.launch_instance(cmc)
    print("Done! CloudMan IP is {0}".format(cmi.cloudman_url))
    return cmc, cmi