def launch(request): """Configure and launch CloudBioLinux and CloudMan servers. """ if request.method == "POST": form = forms.CloudManForm(request.POST) if form.is_valid(): print form.cleaned_data ec2_error = None try: # Create security group & key pair used when starting an instance ec2_conn = connect_ec2(form.cleaned_data['access_key'], form.cleaned_data['secret_key'], form.cleaned_data['cloud']) sg_name = create_cm_security_group(ec2_conn, form.cleaned_data['cloud']) kp_name, kp_material = create_key_pair(ec2_conn) except EC2ResponseError, err: ec2_error = err.error_message # associate form data with session for starting instance # and supplying download files if ec2_error is None: form.cleaned_data["kp_name"] = kp_name form.cleaned_data["kp_material"] = kp_material form.cleaned_data["sg_name"] = sg_name form.cleaned_data["cloud_type"] = form.cleaned_data['cloud'].cloud_type form.cleaned_data["cloud_name"] = form.cleaned_data['cloud'].name request.session["ec2data"] = form.cleaned_data if runinstance(request): return redirect("/monitor") else: form.non_field_errors = "A problem starting your instance. " \ "Check the {0} cloud's console."\ .format(form.cleaned_data['cloud'].name) else: form.non_field_errors = ec2_error
def api_launch(request): params = copy.deepcopy(request.POST) ec2_error = None cloud = models.Cloud.objects.get(cloud_type=params['cloud']) params['cloud'] = cloud try: # Create security group & key pair used when starting an instance ec2_conn = connect_ec2(params['access_key'], params['secret_key'], cloud) sg_name = create_cm_security_group(ec2_conn, cloud) kp_name, kp_material = create_key_pair(ec2_conn) except EC2ResponseError, err: ec2_error = err.error_message
def launch(request): """Configure and launch CloudBioLinux and CloudMan servers. """ if request.method == "POST": form = forms.CloudManForm(request.POST) if form.is_valid(): print form.cleaned_data ec2_error = None try: # Create security group & key pair used when starting an instance ec2_conn = connect_ec2(form.cleaned_data['access_key'], form.cleaned_data['secret_key'], form.cleaned_data['cloud']) sg_name = create_cm_security_group(ec2_conn, form.cleaned_data['cloud']) kp_name, kp_material = create_key_pair(ec2_conn) except EC2ResponseError, err: ec2_error = err.error_message # associate form data with session for starting instance # and supplying download files if ec2_error is None: form.cleaned_data["kp_name"] = kp_name form.cleaned_data["kp_material"] = kp_material form.cleaned_data["sg_name"] = sg_name form.cleaned_data["cloud_type"] = form.cleaned_data[ 'cloud'].cloud_type form.cleaned_data["cloud_name"] = form.cleaned_data[ 'cloud'].name request.session["ec2data"] = form.cleaned_data if runinstance(request): return redirect("/monitor") else: form.non_field_errors = "A problem starting your instance. " \ "Check the {0} cloud's console."\ .format(form.cleaned_data['cloud'].name) else: form.non_field_errors = ec2_error