def post(self): #save booking into database d = datetime(int(self.request.get('year')), int(self.request.get('month')), int(self.request.get('day'))) st = time(int(self.request.get('start'))) et = time(int(self.request.get('end'))) #datetime.combine(d, st) job = models.Job() job.Email = self.user.email_address job.Description = self.request.get('description') job.StartDate = datetime.combine(d, st) job.EndDate = datetime.combine(d, et) job.Service_Type = self.request.get('servicetype') job.postalCode = int(self.request.get('postalcode')) job.put() schedule = {} date = {} date['day'] = d.day date['month'] = d.month date['year'] = d.year schedule['date'] = date hour = {} hour['start'] = st.hour hour['end'] = et.hour schedule['hour'] = hour for temp in booking_cache: if ((temp['date'] == schedule['date']) and temp['hour'] == schedule['hour']): booking_cache.remove(temp) break
def newtask(): build = models.Build[1] b = models.Job(build=build, status='initing') b.created = datetime.datetime.today() models.commit() taskqueue.que.put(b.id) return str(b.id)
def post(self): global booking_cache clear_booking = [] for temp in booking_cache: if temp['type'] == 'administrator': d = date(temp['date']['year'], temp['date']['month'], temp['date']['day']) st = time(temp['hour']['start']) et = time(temp['hour']['end']) if (temp['task'] == 'edit'): info = models.Job.get(temp['key']) info.Email = temp['email'] info.Description = temp['description'] info.StartDate = datetime.combine(d, st) info.EndDate = datetime.combine(d, et) info.Service_Type = temp['servicetype'] info.postalCode = int(temp['postalcode']) info.put() else: job = models.Job() job.Email = temp['email'] job.Description = temp['description'] job.StartDate = datetime.combine(d, st) job.EndDate = datetime.combine(d, et) job.Service_Type = temp['servicetype'] job.postalCode = int(temp['postalcode']) job.put() clear_booking.append(temp) for temp in clear_booking: booking_cache.remove(temp)
def test_update_jobs_command(self): job = models.Job(credential=self.credential, jobid="1", name="not_a_real_job") job.save() call_command("update_jobs") updated = models.Job.objects.get(id=job.id) self.assertEqual(updated.state, models.Job.UNKNOWN)
def get(self): emp_number = get_raw_jwt()['identity'] try: job = models.Job(emp_number) return {"data": job.get(), "message": "Job succesfully retrieved"} except Exception as e: print(e) return {'message': 'Something went wrong'}, 500
def test_update_unknown_none(self): job = models.Job(credential=self.credential, jobid="1", name="completed", state=models.Job.COMPLETED) job.save() call_command("update_unknown") call_command("update_unknown")
def test_update_unknown_command(self): job = models.Job(credential=self.credential, jobid="1", name="walltime", state=models.Job.UNKNOWN) job.save() call_command("update_unknown") updated = models.Job.objects.get(id=job.id) self.assertEqual(updated.state, models.Job.WALLTIME)
def test_update_unknown_missing(self): job = models.Job(credential=self.credential, jobid="1", name="missing", state=models.Job.UNKNOWN) job.save() call_command("update_unknown") updated = models.Job.objects.get(id=job.id) self.assertEqual(updated.state, models.Job.MISSING)
def home(): address = flask.request.args.get('address') nocheck = (flask.request.args.get('force') == 'true') if address: reponame = cleanname(address) if not models.Repo.get(name=reponame): try: if nocheck: if flask.request.args.get('reponame') != address: return flask.render_template( 'index.html', error='reponame not match') desc = 'unknown desc - forceadd' else: desc = checkrepo(reponame) except Exception as e: force_add = ''' If you confirm this is a go main package. <form class="pull-right"> <input type="hidden" name="address" value="{reponame}"> <input type="hidden" name="force" value="true"> <input type="text" name="reponame" placeholder="Type repo name again"> <button class="btn btn-warning btn-xs">force add</button> </form>'''.format(reponame=reponame) error = str(e) + ' <br>- ' + force_add return flask.render_template('index.html', error=flask.Markup(error)) repo = models.Repo(name=reponame) repo.created = datetime.datetime.today() repo.description = desc repo.author = 'unknown .. unfinished' # add new job build = models.Build(repo=repo, tag='branch:master', status='initing') job = models.Job(build=build, status='initing', created=datetime.datetime.today()) models.commit() taskqueue.que.put(job.id) return flask.redirect('/' + reponame, 302) new = models.select(r for r in models.Repo).\ order_by(models.desc(models.Repo.created))[:10] top = models.select(r for r in models.Repo).\ order_by(models.desc(models.Repo.down_count))[:10] #error = 'Beta version, only for test for the time now.' error = None return flask.render_template('index.html', top_repos=top, new_repos=new, error=error)
def save_module_job(request): ''' { "module_id":1, "name":"test1", "type":1, "scene":"", "desc":"xxxx", "job_detail":{ "description":"just a test", "command":"ls -l", "params":[ { "name":"branch_num", "description":"just a test", "default_value":"trunk" }, { "name":"version", "description":"121212", "default_value":"" } ] } } ''' data = json.loads(request.body) module_id = data.get("module_id") if not module_id: return None id = data.get("id") json_data = {} module = models.Module.objects.get(id=module_id) json_data["view_name"] = module.name json_data["job_name"] = "%s-%s" % (module.name, time.strftime("%y%m%d%H%M%S")) json_data["job_detail"] = data.get("job_detail") j = Jenkins() if id: job = models.Job.objects.get(id=id) old_name = job.jenkins_name if old_name: j.delete_job(old_name) else: job = models.Job() j.create_view_job(json_data, "JOB_CONFIG_XML", request) job.module_id = module_id job.name = data.get("name") job.jenkins_name = json_data.get("job_name") job.type = data.get("type") job.scene = data.get("scene") job.desc = data.get("desc") job.user = public.get_user_mail(request) job.job_detail = json.dumps(data.get("job_detail")) job.save()
def test_job_format(self): job = models.Job( jobid='1', credential=self.credential, name="test", memory="59GB", walltime="1:00", state=models.Job.QUEUED, ) expected = ('1', 'vagrant', 'test', '59GB', '1:00', '--', 'Q') self.assertEqual(job.format(), expected)
def build(): reponame = request.args.get('reponame') tag = request.args.get('tag') repo = models.Repo.get(name=reponame) build = models.Build.get(repo=repo, tag=tag) or \ models.Build(repo=repo, tag=tag) job = models.Job(build=build, status='initing') job.created = datetime.datetime.today() models.commit() taskqueue.que.put(job.id) return redirect('/task/%d' % job.id)
def addJob(): content = request.get_json() job = models.Job(content.get('name')) db.session.add(job) db.session.commit() response = { 'status': 200, 'message': "Job added to database", } return json.dumps(response, sort_keys=True, indent=4, separators=(',', ': '))
def create_job(db: Session, job: schemas.Job): try: db_job = models.Job(title=job.title, experience=job.experience, description=job.description, no_of_vacancies=job.no_of_vacancies) db.add(db_job) db.commit() db.refresh(db_job) print(db_job) return db_job except Exception as e: print(e) raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Unexpected Error Occurred")
def abort_job(self, id): try: response = self.connection.post(id, {"PHASE": "ABORT"}) except Exception as e: raise UWSError(str(e)) raw = response.read() try: result = models.Job(raw) except XMLSyntaxError as e: raise UWSError( "Malformatted response. Are you sure the host you specified is a IVOA UWS service?", raw) except Exception as e: raise e return result
def set_parameters_job(self, id, args={}): try: response = self.connection.post(id, args) except Exception as e: raise UWSError(str(e)) raw = response.read() try: result = models.Job(raw) except XMLSyntaxError as e: raise UWSError( "Malformatted response. Are you sure the host you specified is a IVOA UWS service?", raw) except Exception as e: raise e return result
def root(request): title = DOMAIN_NAME neighborhood = request.GET.get('neighborhood', 'Wicker Park').replace('+', ' ') if request.method == 'POST': #INSERT NEW JOB INTO DATABASE print('printing request.POST') #job = [posted_date, title, company, address, neighborhood, shift, description] job = models.Job( title = request.POST.get('title', ''), # TODO: error: this needs to get the Business() object business = Business.objects.get(pk=request.POST.get('company', '')), # TODO: probably error: this needs to get the Location() object location = Location.objects.get(pk=request.POST.get('location', '')), # QUICK FIX: error in models and db with job_function. Storing as # QUICK FIX: a number for now # job_function = models.JobFunction.objects.get(pk=request.POST.get('job_function', '')), job_function = request.POST.get('job_function', ''), employment_type = request.POST.get('employment_type', ''), description = request.POST.get('description', ''), skills = request.POST.get('skills', ''), qualifications = request.POST.get('qualifications', ''), instructions = request.POST.get('instructions', ''), #TODO: add to form poc = request.POST.get('poc', ''), email = request.POST.get('email', ''), phone = request.POST.get('phone', '') ) job.save() # set default map location = MapLocation(neighborhood).get_coordinates() # TODO: This should come from the Jobs model jobs = models.Job.objects.all() context = { 'title': title, 'location': location, 'api_key': MAPBOX_KEY, 'jobs': jobs } return render(request, "jobs/index.html", context)
async def create_job( job_name: str, current_account: schemas.Account = Depends(get_current_account), db: Session = Depends(get_db)): db_job = db.query( models.Job).filter(models.Job.job_name == job_name).first() if db_job: raise HTTPException(status_code=409, detail="Job name is already in the database") if current_account.role_id != 0: raise HTTPException(status_code=403) db_job = models.Job(job_name=job_name) db.add(db_job) db.commit() db.refresh(db_job) return schemas.Job(job_id=db_job.job_id, job_name=db_job.job_name)
def get_job(self, id, wait=None, phase=None): params = None if wait: params = self._validate_and_parse_wait(wait, phase) try: response = self.connection.get(id, params) except Exception as e: # Do not make a second request without params, throw error # immediately raise UWSError(str(e)) raw = response.read() try: result = models.Job(raw) except XMLSyntaxError as e: raise UWSError( "Malformatted response. Are you sure the host you specified is a IVOA UWS service?", raw) except Exception as e: raise e return result
import models job = models.Job("3347") print(job.get())