def evaluate_initiation_ajax(): """ First half of evaluation: Start the Celery task """ pad_input = request.form.get('code', None, type=str) if pad_input is None: msg = '_eval called without code' app.logger.critical(msg) return jsonify(initiated=False, output=msg) pad_id = request.form.get('pad_id', None, type=str) if pad_id is None: msg = '_eval called without pad_id' app.logger.critical(msg) return jsonify(initiated=False, output=msg) task = evaluate_sage.delay(pad_input) user = flask.g.user pad = user.get_pad(pad_id) try: pad.set_input(pad_input) output='Evaluating ...' except PadWriteException as e: output = 'Evaluating (without saving) ...' return jsonify(initiated=True, output=output, task_id=task.task_id, pad_id=pad.get_id_str())
#!./bin/python/bin/python import os, sys sys.path.append('src') sys.path.append('secure') #from sagepad.backend.configure import configure_celery #configure_celery(os.path.join(os.getcwd(), 'secure', 'celery_config.py')) from sagepad.backend.tasks import add, evaluate_sage, evaluate_gap, evaluate_singular, evaluate_bash import random a = random.randrange(0,10) b = random.randrange(0,10) print ''.join([str(a), '+', str(b),' = ', str(add.delay(a,b).get())]) print evaluate_bash.delay('ls -alZt').get() print ''.join([str(a), '+', str(b),' = ', str(evaluate_gap.delay(str(a)+'+'+str(b)+';').get())]) print ''.join([str(a), '+', str(b),' = ', str(evaluate_singular.delay(str(a)+'+'+str(b)+';').get())]) print ''.join([str(a), '+', str(b),' = ', str(evaluate_sage.delay(str(a)+'+'+str(b)).get())])