Ejemplo n.º 1
0
def vcp_repair(request):
    if request.method == 'POST':
        form = VcenterConfigurationForm(request.POST)
        if form.is_valid():
            if form.repair_plugin():
                return HttpResponseRedirect("/vcp/home")
            else:
                return JsonResp(
                    request, error=True, message=_(
                        form.vcp_status))
        else:
            form.is_update_needed()
            form.fields['vc_ip'].widget.attrs['readonly'] = True
    return render(request, "vcp/index.html", {'form': form})
Ejemplo n.º 2
0
def vcp_home(request):
    aux_enable_https = models.VcenterAuxSettings.objects.latest('id')
    obj = models.VcenterConfiguration.objects.latest('id')
    if request.method == 'POST':

        form = VcenterConfigurationForm(request.POST, instance=obj)
        if form.is_valid():
            form.vcp_action = 'INSTALL'
            try:
                form.save()
                return JsonResp(
                    request,
                    message=_("The plugin has been successfully installed"),
                )
            except CallTimeout:
                return JsonResp(
                    request,
                    message=_(
                        "The plugin could not be installed because of timeout."
                        " Most probably the port provided was incorrect"),
                )
            except ValidationErrors as e:
                handle_middleware_validation(form, e)

        return JsonResp(request, form=form)
    else:

        form = VcenterConfigurationForm(instance=obj)
        if obj.vc_installed:
            form.fields['vc_ip'].widget.attrs['readonly'] = True

        return render(request, "vcp/index.html", {
            'form': form,
            'aux_enable_https': aux_enable_https,
        })
Ejemplo n.º 3
0
def vcp_upgrade(request):
    obj = models.VcenterConfiguration.objects.latest('id')
    if request.method == 'POST':
        form = VcenterConfigurationForm(request.POST, instance=obj)
        if form.is_valid():

            if not form.is_update_needed():
                return JsonResp(
                    request,
                    error=True,
                    message=_("There are No updates available at this time."))
            else:

                form.vcp_action = 'UPGRADE'
                try:
                    form.save()
                    return JsonResp(
                        request,
                        message=_("The plugin has been successfully upgraded"),
                    )
                except CallTimeout:
                    return JsonResp(
                        request,
                        message=_(
                            "The plugin could not be installed because of timeout."
                            " Most probably the port provided was incorrect"),
                    )
                except ValidationErrors as e:
                    handle_middleware_validation(form, e)

        return JsonResp(request, form=form)
Ejemplo n.º 4
0
def vcp_uninstall(request):
    obj = models.VcenterConfiguration.objects.latest('id')
    if request.method == 'POST':
        form = VcenterConfigurationForm(request.POST, instance=obj)
        if form.is_valid():

            form.vcp_action = 'UNINSTALL'
            try:
                form.save()

                # TODO: THE UI DISPLAYS OLD CREDENTIALS AFTER UN-INSTALLATION, THAT NEEDS BE CHANGED
                return JsonResp(
                    request,
                    message=_("The plugin has been successfully uninstalled"),
                )
            except CallTimeout:
                return JsonResp(
                    request,
                    message=_(
                        "The plugin could not be installed because of timeout."
                        " Most probably the port provided was incorrect"),
                )
            except ValidationErrors as e:
                handle_middleware_validation(form, e)

        return JsonResp(request, form=form)
Ejemplo n.º 5
0
def vcp_upgrade(request):
    if request.method == 'POST':
        form = VcenterConfigurationForm(request.POST)
        if form.is_valid():
            form.is_update_needed()
            if form.vcp_is_update_available is False:
                return JsonResp(
                    request, error=True, message=_(
                        "There are No updates available at this time."))
            if form.upgrade_plugin():
                return HttpResponseRedirect("/legacy/vcp/home")
            else:
                return JsonResp(
                    request, error=True, message=_(
                        form.vcp_status))
        else:
            form.is_update_needed()
            form.fields['vc_ip'].widget.attrs['readonly'] = True
    return render(request, "vcp/index.html", {'form': form})
Ejemplo n.º 6
0
def vcp_repair(request):
    if request.method == 'POST':
        form = VcenterConfigurationForm(request.POST)
        if form.is_valid():
            if form.repair_plugin():
                return HttpResponseRedirect("/vcp/home")
            else:
                return JsonResp(request,
                                error=True,
                                message=_(form.vcp_status))
        else:
            form.is_update_needed()
            form.fields['vc_ip'].widget.attrs['readonly'] = True
    return render(request, "vcp/index.html", {'form': form})
Ejemplo n.º 7
0
def vcp_upgrade(request):
    if request.method == 'POST':
        form = VcenterConfigurationForm(request.POST)
        if form.is_valid():
            form.is_update_needed()
            if form.vcp_is_update_available is False:
                return JsonResp(
                    request, error=True, message=_(
                        "There are No updates available at this time."))
            if form.upgrade_plugin():
                return HttpResponseRedirect("/vcp/home")
            else:
                return JsonResp(
                    request, error=True, message=_(
                        form.vcp_status))
        else:
            form.is_update_needed()
            form.fields['vc_ip'].widget.attrs['readonly'] = True
    return render(request, "vcp/index.html", {'form': form})
Ejemplo n.º 8
0
def vcp_repair(request):
    obj = models.VcenterConfiguration.objects.latest('id')
    if request.method == 'POST':
        form = VcenterConfigurationForm(request.POST, instance=obj)
        if form.is_valid():
            form.vcp_action = 'REPAIR'
            try:
                form.save()

                return JsonResp(
                    request,
                    message=_("The plugin has been successfully installed"),
                )
            except CallTimeout:
                return JsonResp(
                    request,
                    message=_(
                        "The plugin could not be installed because of timeout."
                        " Most probably the port provided was incorrect"),
                )
            except ValidationErrors as e:
                handle_middleware_validation(form, e)

        return JsonResp(request, form=form)
Ejemplo n.º 9
0
def vcp_home(request):
    if request.method == 'POST':
        form = VcenterConfigurationForm(request.POST)
        if form.is_valid():

            if form.install_plugin():
                form.save()
                obj = models.VcenterConfiguration.objects.latest('id')
                obj.vc_version = utils.get_plugin_version()
                obj.vc_password = ''
                obj.save()
            else:
                return JsonResp(
                    request, error=True, message=_(
                        form.vcp_status))
        else:
            form.is_update_needed()
            return render(request, "vcp/index.html", {'form': form})
    try:
        obj = models.VcenterConfiguration.objects.latest('id')
        form = VcenterConfigurationForm(instance=obj)
        form.fields['vc_ip'].widget.attrs['readonly'] = True
        form.fields['vc_username'].widget.attrs['readonly'] = True
        form.fields['vc_port'].widget.attrs['readonly'] = True
        form.fields['vc_management_ip'].widget.attrs['readonly'] = True
        form.is_update_needed()
    except:
        form = VcenterConfigurationForm()
        form.is_update_needed()
    return render(request, "vcp/index.html", {'form': form})
Ejemplo n.º 10
0
def vcp_home(request):
    aux_enable_https = models.VcenterAuxSettings.objects.latest(
        'id').vc_enable_https
    if request.method == 'POST':
        form = VcenterConfigurationForm(request.POST)
        if form.is_valid():

            if form.install_plugin():
                form.save()
                obj = models.VcenterConfiguration.objects.latest('id')
                obj.vc_version = utils.get_plugin_version()
                obj.vc_password = ''
                obj.save()
            else:
                return JsonResp(request,
                                error=True,
                                message=_(form.vcp_status))
        else:
            form.is_update_needed()
            return render(request, "vcp/index.html", {
                'form': form,
                'aux_enable_https': aux_enable_https,
            })
    try:
        obj = models.VcenterConfiguration.objects.latest('id')
        form = VcenterConfigurationForm(instance=obj)
        form.fields['vc_ip'].widget.attrs['readonly'] = True
        form.is_update_needed()
    except:
        form = VcenterConfigurationForm()
        form.is_update_needed()
    return render(request, "vcp/index.html", {
        'form': form,
        'aux_enable_https': aux_enable_https,
    })
Ejemplo n.º 11
0
def vcp_uninstall(request):
      form = VcenterConfigurationForm()
      if form.uninstall_plugin():
         return JsonResp(request,message = _('vCenter plugin uninstalled successfully.'), )
      else :
         return JsonResp(request, error = True, message = _(form.vcp_status))