diff --git a/Scripts/capturer.py b/Scripts/capturer.py index 95457fc..ca1733b 100755 --- a/Scripts/capturer.py +++ b/Scripts/capturer.py @@ -16,9 +16,12 @@ try: import psutil except ImportError: - print("This script requires PsUtil as main dependencies. Please install this module first.") + print( + "This script requires PsUtil as main dependencies. Please install this module first." + ) sys.exit(255) + @dataclass class LineCapture: """Line capture definition. Used for parsing scores.json in lab folders.""" @@ -86,7 +89,12 @@ async def main(args: argparse.Namespace): break if len(line) == 0 and process.returncode is not None: break + decoded_line = line.decode() + + if args.verbose: + print(decoded_line, end="") + for line_capture in captures: if ( args.serial @@ -137,6 +145,14 @@ async def main(args: argparse.Namespace): required=False, help="Serial Number to proceed.", ) + parser.add_argument( + "-v", + "--verbose", + action="store_true", + required=False, + default=False, + help="Verbose mode.", + ) parser.add_argument("command", nargs=argparse.REMAINDER, help="Command to grade.") args = parser.parse_args() try: diff --git a/Scripts/kernel.mk b/Scripts/kernel.mk index e4e6fe5..e862a73 100644 --- a/Scripts/kernel.mk +++ b/Scripts/kernel.mk @@ -1,10 +1,15 @@ V ?= 0 Q := @ - +GRADER_V := ifeq ($(V), 1) Q := endif +ifeq ($(V), 2) + Q := + GRADER_V := -v +endif + BUILDDIR := $(LABDIR)/build KERNEL_IMG := $(BUILDDIR)/kernel.img _QEMU := $(SCRIPTS)/qemu_wrapper.sh $(QEMU) @@ -50,6 +55,6 @@ gdb: grade: $(MAKE) distclean - $(Q)$(DOCKER_RUN) $(GRADER) -t $(TIMEOUT) -f $(LABDIR)/scores.json -s $(SERIAL) make SERIAL=$(SERIAL) qemu-grade + $(Q)$(DOCKER_RUN) $(GRADER) -t $(TIMEOUT) -f $(LABDIR)/scores.json $(GRADER_V) -s $(SERIAL) make SERIAL=$(SERIAL) qemu-grade .PHONY: qemu qemu-gdb gdb defconfig build clean distclean grade all