def perform_create(self, serializer): ttl = self.request.data.get(RedisTTL.TTL_KEY) if ttl: try: ttl = RedisTTL.validate_ttl(ttl) except ValueError: raise ValidationError('ttl must be an integer.') instance = serializer.save(user=self.request.user, project=self.project) if ttl: RedisTTL.set_for_build(build_id=instance.id, value=ttl) # Trigger build scheduling celery_app.send_task(SchedulerCeleryTasks.BUILD_JOBS_START, kwargs={'build_job_id': instance.id}, countdown=1)
def perform_create(self, serializer): ttl = self.request.data.get(RedisTTL.TTL_KEY) if ttl: try: ttl = RedisTTL.validate_ttl(ttl) except ValueError: raise ValidationError('ttl must be an integer.') project = get_permissible_project(view=self) code_reference = get_project_latest_code_reference(project=project) instance = serializer.save(user=self.request.user, project=project, code_reference=code_reference) auditor.record(event_type=BUILD_JOB_CREATED, instance=instance) if ttl: RedisTTL.set_for_build(build_id=instance.id, value=ttl) # Trigger build scheduling celery_app.send_task(SchedulerCeleryTasks.BUILD_JOBS_START, kwargs={'build_job_id': instance.id}, countdown=1)
def test_set_for_build(self): RedisTTL.set_for_build(build_id=1, value=10) assert RedisTTL.get_for_build(build_id=1) == 10 assert RedisTTL.get_for_build( build_id=2) == conf.get('GLOBAL_COUNTDOWN') assert RedisTTL(build=10).get_value() is None
def test_set_for_build(self): RedisTTL.set_for_build(build_id=1, value=10) assert RedisTTL.get_for_build(build_id=1) == 10 assert RedisTTL.get_for_build(build_id=2) == 2 assert RedisTTL(build=10).get_value() is None