예제 #1
0
def run():
    for model, num_to_create in to_create.items():
        model_name = model._meta.model_name
        bar = Bar('Creating {}'.format(model_name), max=num_to_create)
        model_count = model.objects.count()
        create_f = globals()['populate_{}'.format(model_name)]

        for i in range(num_to_create):
            ident = '{}{}'.format(model_name, i)
            if i < model_count:
                unit = model.objects.all()[i]
            else:
                unit = create_f(model, i)
            globals()[ident] = unit
            bar.next()
        bar.finish()

    # This bit is special: Associate all rpms with the first repo,
    # for maximum relational query fun
    
    num_units = platform.ContentUnit.objects.count() 
    repo = globals()['repository0']
    bar = Bar('Adding all units to {} repo'.format(repo.slug))
    bar.max = num_units
    for unit in platform.ContentUnit.objects.all():
        repo.add_units(unit)
        bar.next()
    bar.finish()