Exemplo n.º 1
0
def new_compute_rate(interval):
    """Create a new Compute Chargeback rate"""
    desc = 'custom_{}'.format(interval)
    compute = rates.ComputeRate(description=desc,
                                fields={
                                    'Used CPU': {
                                        'per_time': interval,
                                        'variable_rate': '720'
                                    },
                                    'Used Disk I/O': {
                                        'per_time': interval,
                                        'variable_rate': '720'
                                    },
                                    'Used Network I/O': {
                                        'per_time': interval,
                                        'variable_rate': '720'
                                    },
                                    'Used Memory': {
                                        'per_time': interval,
                                        'variable_rate': '720'
                                    }
                                })
    compute.create()
    storage = rates.StorageRate(description=desc,
                                fields={
                                    'Used Disk Storage': {
                                        'per_time': interval,
                                        'variable_rate': '720'
                                    }
                                })
    storage.create()
    yield desc

    compute.delete()
    storage.delete()
Exemplo n.º 2
0
def new_compute_rate():
    # Create a new Compute Chargeback rate
    try:
        desc = 'custom_' + fauxfactory.gen_alphanumeric()
        compute = rates.ComputeRate(description=desc,
                                    fields={
                                        'Used CPU': {
                                            'per_time': 'Hourly',
                                            'variable_rate': '3'
                                        },
                                        'Used Disk I/O': {
                                            'per_time': 'Hourly',
                                            'variable_rate': '2'
                                        },
                                        'Used Memory': {
                                            'per_time': 'Hourly',
                                            'variable_rate': '2'
                                        }
                                    })
        compute.create()
        if not BZ(1532368, forced_streams=['5.9']).blocks:
            storage = rates.StorageRate(description=desc,
                                        fields={
                                            'Used Disk Storage': {
                                                'per_time': 'Hourly',
                                                'variable_rate': '3'
                                            }
                                        })
            storage.create()
        yield desc
    finally:
        compute.delete()
        if not BZ(1532368, forced_streams=['5.9']).blocks:
            storage.delete()
def new_chargeback_rate():
    """Create a new chargeback rate"""
    desc = 'custom_{}'.format(fauxfactory.gen_alphanumeric())
    compute = rates.ComputeRate(description=desc,
                                fields={
                                    'Allocated CPU Count': {
                                        'per_time': 'Hourly',
                                        'variable_rate': '2'
                                    },
                                    'Allocated Memory': {
                                        'per_time': 'Hourly',
                                        'variable_rate': '2'
                                    }
                                })
    compute.create()
    if not BZ(1532368, forced_streams=['5.9']).blocks:
        storage = rates.StorageRate(description=desc,
                                    fields={
                                        'Allocated Disk Storage': {
                                            'per_time': 'Hourly',
                                            'variable_rate': '3'
                                        }
                                    })
    storage.create()
    yield desc

    if compute.exists:
        compute.delete()
    if not BZ(1532368, forced_streams=['5.9']).blocks and storage.exists:
        storage.delete()
Exemplo n.º 4
0
def chargeback_storage_rate():
    return cb.StorageRate(
        description='cb' + fauxfactory.gen_alphanumeric(),
        fields={
            'Fixed Storage Cost 1': with_random_per_time(fixed_rate='100'),
            'Fixed Storage Cost 2': with_random_per_time(fixed_rate='300'),
            'Allocated Disk Storage': with_random_per_time(fixed_rate='6000'),
            'Used Disk Storage': with_random_per_time(variable_rate='0.1'),
        })
Exemplo n.º 5
0
def chargeback_storage_rate(rate_type='fixed'):
    if rate_type == 'fixed':
        rate = [{'fixed_rate': '6000'}, {'fixed_rate': '.1'}]
    elif rate_type == 'variable':
        rate = [{'variable_rate': '2000'}, {'variable_rate': '.6'}]
    else:
        raise ValueError('Storage rate type argument must be "fixed" or "variable"')

    return cb.StorageRate(
        description='cb' + fauxfactory.gen_alphanumeric(),
        fields={
            'Fixed Storage Cost 1': with_random_per_time(fixed_rate='100'),
            'Fixed Storage Cost 2': with_random_per_time(fixed_rate='300'),
            'Allocated Disk Storage': with_random_per_time(**rate[0]),
            'Used Disk Storage': with_random_per_time(**rate[1]),
        })
Exemplo n.º 6
0
def chargeback_rate(rate_resource, rate_type, rate_action, request):
    if 'fixed' in rate_type:
        rate = [{'fixed_rate': '6000'}, {'fixed_rate': '.1'}]
    elif 'variable' in rate_type:
        rate = [{'variable_rate': '2000'}, {'variable_rate': '.6'}]
    else:
        raise ValueError(
            'Compute rate type argument must be "fixed" or "variable"')

    if rate_resource == 'compute':
        rate = cb.ComputeRate(description='cb_{}_{}_{}_{}'.format(
            fauxfactory.gen_alphanumeric(), rate_type, rate_resource,
            rate_action),
                              fields={
                                  'Allocated CPU Count':
                                  with_random_per_time(fixed_rate='1000'),
                                  'Used Disk I/O':
                                  with_random_per_time(fixed_rate='10'),
                                  'Fixed Compute Cost 1':
                                  with_random_per_time(fixed_rate='100'),
                                  'Used Memory':
                                  with_random_per_time(**rate[0]),
                                  'Used CPU Cores':
                                  with_random_per_time(**rate[1]),
                              })

    elif rate_resource == 'storage':
        rate = cb.StorageRate(description='cb_{}_{}_{}_{}'.format(
            fauxfactory.gen_alphanumeric(), rate_type, rate_resource,
            rate_action),
                              fields={
                                  'Fixed Storage Cost 1':
                                  with_random_per_time(fixed_rate='100'),
                                  'Fixed Storage Cost 2':
                                  with_random_per_time(fixed_rate='300'),
                                  'Allocated Disk Storage':
                                  with_random_per_time(**rate[0]),
                                  'Used Disk Storage':
                                  with_random_per_time(**rate[1]),
                              })

    @request.addfinalizer
    def _cleanup():
        if rate.exists:
            rate.delete()

    return rate
def new_compute_rate(enable_candu):
    # Create a new Compute Chargeback rate
    desc = '{}custom_'.format(fauxfactory.gen_alphanumeric())
    compute = rates.ComputeRate(description=desc, fields={
        'Used CPU': {'per_time': 'Hourly', 'variable_rate': '3'},
        'Allocated CPU Count': {'per_time': 'Hourly', 'fixed_rate': '2'},
        'Used Disk I/O': {'per_time': 'Hourly', 'variable_rate': '2'},
        'Allocated Memory': {'per_time': 'Hourly', 'fixed_rate': '1'},
        'Used Memory': {'per_time': 'Hourly', 'variable_rate': '2'}})
    compute.create()
    storage = rates.StorageRate(description=desc, fields={
        'Used Disk Storage': {'per_time': 'Hourly', 'variable_rate': '3'},
        'Allocated Disk Storage': {'per_time': 'Hourly', 'fixed_rate': '3'}})
    storage.create()
    yield desc
    compute.delete()
    storage.delete()