Ejemplo n.º 1
0
    def set_up(wait_time=10):
        connection = SQLStore.get_connection()
        count = 3
        while not connection and count:
            LOG.debug('Retrying to connect to Database \'{}\'...'.format(
                Helper.database))
            count = count - 1
            time.sleep(wait_time)
            connection = SQLStore.get_connection()

        if connection:
            # Create DB
            connection.cursor().execute(
                'CREATE DATABASE IF NOT EXISTS {}'.format(Helper.database))
            LOG.debug('Successfully connected to Database \'{}\'...'.format(
                Helper.database))
            # Create tables
            PlanAdapter.create_table()
            ServiceTypeAdapter.create_table()
            PlanServiceTypeAdapter.create_table()
            ManifestAdapter.create_table()
            ServiceInstanceAdapter.create_table()
            LastOperationAdapter.create_table()
            connection.close()
        else:
            raise Exception('Could not connect to the DB')
Ejemplo n.º 2
0
 def delete_service_instance(instance_id: str = None):  # -> None:
     if instance_id:
         if ServiceInstanceAdapter.exists_in_db(instance_id):
             ServiceInstanceAdapter.delete(instance_id)
             return 'Instance Deleted', 200
         else:
             return 'Instance ID not found', 500
     else:
         LastOperationAdapter.delete_all()
         ServiceInstanceAdapter.delete_all()
         return 'Deleted all Instances', 200
Ejemplo n.º 3
0
    def delete_service(service_id: str = None) -> tuple:
        if service_id:
            if ServiceTypeAdapter.exists_in_db(service_id):
                ServiceTypeAdapter.delete(service_id)
                return 'Service Deleted', 200
            else:
                return 'Service ID not found', 500
        else:
            PlanServiceTypeAdapter.delete_all()
            LastOperationAdapter.delete_all()

            ServiceInstanceAdapter.delete_all()
            ManifestAdapter.delete_all()
            ServiceTypeAdapter.delete_all()
            PlanAdapter.delete_all()
            return 'Deleted all Services', 200
Ejemplo n.º 4
0
    def delete_last_operation(self, instance_id: str = None) -> tuple:
        if ServiceInstanceAdapter.exists_in_db(instance_id):
            instance = ServiceInstanceAdapter.find_by_id_name(instance_id)
            ''' Attempt to Create Table '''
            PlanAdapter.create_table()
            ServiceTypeAdapter.create_table()
            ServiceTypeAdapter.create_table()
            ServiceInstanceAdapter.create_table()
            LastOperationAdapter.create_table()
            instance.state = None
            ServiceInstanceAdapter.save(instance)

            id_name = ServiceInstanceAdapter.get_id(instance)
            if ServiceInstanceAdapter.exists_in_db(id_name):
                return 'Instance added successfully', 200
            else:
                return 'Could not save the Instance in the DB', 500
        else:
            raise Exception('Service Instance not found')
Ejemplo n.º 5
0
    def add_service_instance(instance: ServiceInstance) -> tuple:
        id_name = ServiceInstanceAdapter.get_id(instance)
        if ServiceInstanceAdapter.exists_in_db(id_name):
            LOG.warning(
                'An existing instance was attempted to be saved. Updating it...'
            )
            SQLStore.delete_service_instance(id_name)
            # return 'The Instance already exists in the catalog.', 409
        ''' Attempt to Create Table '''
        PlanAdapter.create_table()
        ServiceTypeAdapter.create_table()
        ManifestAdapter.create_table()
        ServiceInstanceAdapter.create_table()
        LastOperationAdapter.create_table()
        ServiceInstanceAdapter.save(instance)

        id_name = ServiceInstanceAdapter.get_id(instance)
        if ServiceInstanceAdapter.exists_in_db(id_name):
            LOG.warning('Instance added successfully...')
            return 'Instance added successfully', 200
        else:
            LOG.warning('Could not save the Instance in the DB...')
            return 'Could not save the Instance in the DB', 500
 def test_adapter_save_to_update(self):
     self.test_model.state = LastOperationAdapter.sample_model(
         'instance-updated!')
     model_sql = Adapter.save(self.test_model)
     exists = Adapter.exists_in_db(model_sql.id_name)
     self.assertTrue(exists)