Ejemplo n.º 1
0
def alternate_config_set(request, pod_id):
    pod = Pod.objects.get(pk=pod_id)
    request.session['pod_id'] = pod_id

    if request.method == 'POST':
        pod_id = request.session['pod_id']
        form = AlternateConfigSetForm(request.POST, pod_id=pod_id, username=request.user.username)
        if form.is_valid():
            config_set = form.cleaned_data['config_set']

            configure_device_group(ConfigSet.objects.get(pk=config_set))
            messages.add_message(request, messages.SUCCESS, 'Successfully reconfigured Pod')
            return redirect('ajax_app.views.active_booking')
        else:
            config_set_form = AlternateConfigSetForm(request.POST, pod_id=pod_id, username=request.user.username)
    else:
        config_set_form = AlternateConfigSetForm(pod_id=pod_id, username=request.user.username)

    return render_to_response("config/alternate_config_set.html",
                              {'pod': pod, 'config_set_form': config_set_form},
                              context_instance=RequestContext(request))
Ejemplo n.º 2
0
def configure_pods():
    """This is run at the start of a booking, automatically loading the correct configuration on"""
    logger.debug("Checking if any pods need configuring at: " + str(datetime.now()))

    # Get all bookings, that start now +- 1 minute
    # TODO: Sort out the correct time deltas, at the moment the delta is
    # set to +- an hour for testing purposes

    past = datetime.now(tz=tz) - timedelta(hours=1)
    future = datetime.now(tz=tz) + timedelta(hours=1)
    bookings = Booking.objects.filter(start_datetime__range=(past, future))

    for booking in bookings:
        logger.info("I am going to configure " + booking.pod.__unicode__() +
                    " for user: " + booking.user)
        configure_device_group(booking.config_set)
        send_mail('Booking Started',
                  'Hi {},\n\nYour Booking {} has now started\n\nThanks,\nThe Csco.SRL Team.'.format(booking.user, booking.__unicode__()),
                  '*****@*****.**',
                  ['{}@example.com'.format(booking.user)],
                  fail_silently=False)
Ejemplo n.º 3
0
 def test_high_level_set(self):
     conf_set = ConfigSet.objects.get(pk=3)
     result = config.configure_device_group(conf_set)
     self.assertEqual(result, None)