Sfoglia il codice sorgente

provide validation mode where compilation always exits after chktex

Brian Gough 10 anni fa
parent
commit
ffea361d12

+ 2 - 2
services/clsi/app/coffee/CompileController.coffee

@@ -17,8 +17,8 @@ module.exports = CompileController =
 				CompileManager.doCompile request, (error, outputFiles = []) ->
 					if error?.terminated
 						status = "terminated"
-					else if error?.code is 1
-						status = "exited"
+					else if error?.validate
+						status = "validation-#{error.validate}"
 					else if error?
 						logger.error err: error, project_id: request.project_id, "error running compile"
 						if error.timedout

+ 7 - 1
services/clsi/app/coffee/CompileManager.coffee

@@ -48,6 +48,8 @@ module.exports = CompileManager =
 				env['CHKTEX_OPTIONS'] =  '-nall -e9 -e10 -w15 -w16 -w27'
 				if request.check is 'error'
 					env['CHKTEX_EXIT_ON_ERROR'] =  1
+				if request.check is 'validate'
+					env['CHKTEX_VALIDATE'] =  1
 
 			injectDraftModeIfRequired (error) ->
 				return callback(error) if error?
@@ -66,8 +68,12 @@ module.exports = CompileManager =
 					image:     request.imageName
 					environment: env
 				}, (error, output, stats, timings) ->
+					if request.check is "validate"
+						result = if error?.code then "fail" else "pass"
+						error = new Error("validation")
+						error.validate = result
 					# compile was killed by user
-					if error?.terminated or error?.code is 1
+					if error?.terminated or error?.validate
 						OutputFileFinder.findOutputFiles request.resources, compileDir, (err, outputFiles) ->
 							return callback(err) if err?
 							callback(error, outputFiles) # return output files so user can check logs